How is the $R table contention reduced?
The $R contention during base table delete and update operations has become a recurring theme over the past few years. Currently, each $R index table has 22 static rows, and each row can contain up to 200 million rowids. The contention happens when the parallel insert, update, and delete operations try to lock the same $R row for insert or delete operations. The following enhancements made during this release reduce the contention:
-
The maximum number of rowids that each
$Rrow can contain is 70,000, which translates to 1 MB of data stored on each row. To use this feature, you must set theSMALL_R_ROWstorage attribute. -
The
$Rrows are created on demand instead of just populating a pre-determined number of rows.