Calculating RID pool size

The RID pool is an area of local storage that is reserved for record identifier (RID) sort processing, including RID list sort processing.

About this task

The RID pool is created at startup, but no space is allocated until RID storage is needed. When RID storage is needed, it is allocated above the 2 GB bar in 32 KB blocks, which are known as RID blocks.

Consider the following when you calculate RID pool size:

  • Start of changeIf the total RID pool size is less than 2 GB, regardless of the current RID pool usage, each agent that requests a new RID map and RID list is granted two 32 KB RID blocks: one RID map and one RID list.End of change
  • Start of changeIf a thread needs another RID list block to be added to the existing RID map and RID list, the next 32KB block is granted only if the RID pool usage is below the maximum RID pool size. It is possible for the RID pool size to be larger than the setting of the MAXRBLK subsystem parameter because every new agent is granted at least one RID map and one RID list, if the total RID pool size is less than 2 GB. End of change
  • Startup RID storage = 0 (but acquired in 32 KB blocks as needed)

Start of changeThe default size of the RID pool is 1000000 KB, but you can override this default value by entering a RID pool size on installation panel DSNTIPC.End of change

Procedure

To estimate the required storage for the RID pool:

Use the following formula:
Start of change
number of concurrent RID processing activities * average number of RIDs *
2 * 8 (bytes per RID)
End of change