Previous Topic: When to UseNext Topic: How to Use


Using Empty Blocks in OLREORG

When the amount of free space is limited in used data blocks, the DBUTLTY function OLREORG allows the use of empty blocks in a reorganization.

Support for the OLREORG empty block feature includes the following categories:

Keeping Track of Empty Blocks

CA Datacom/DB keeps track of the available space of a data area using a special key ID in each DBID index. Data space option 1, basic space reclamation, and 2, wraparound mode, do not keep track of which blocks are logically empty, that is, blocks that were used in the past but currently have all their rows deleted.

To enhance the efficiency of OLREORG, the following space options were added that keep track of empty blocks:

If you plan to use OLREORG, then it is appropriate to migrate all DSOP option 1 areas to DSOP option 4 and all DSOP option 2 areas to DSOP option 5.

Changing the space option does not affect the loaded status of the data area and is effective immediately following its change in the CXX. Because the empty block index was not maintained in the past for basic and wraparound modes, we recommend that, when changing to a DSOP 4 or 5, you run a RETIX KEYNAME=*DATA to rebuild the space index, including the new empty block component of the space index.

Note: You are not required to run this RETIX.

DBUTLTY OLREORG Report Example Change

If the DSOP area is 4 or 5, the line is: Empty blocks used.

The line displays a count of the number of empty blocks to which rows were moved during the OLREORG. The following is a sample of this report:

Rows processed - 5,000 Rows moved - 2,512 Blocks freed in reference group - 2,510 Exclusive control conflicts - 0 Empty blocks used - 5

If the DSOP area is 0, 1, or 2, the line is: No empty blocks used due to DSOP.

Note: A DSOP of 3 is not supported by OLREORG.

The following is a sample of this report:

Rows processed - 5,000 Rows moved - 284 Blocks freed in reference group - 284 Exclusive control conflicts - 0 No empty blocks used due to DSOP

External Limits

If there are no more blocks in the empty block index, OLREORG uses the next available overflow (NAO) block. OLREORG never causes a dynamic extend.