This Article serves to provide examples to compliment the latest OpenEdge Documentation with this information:
To change the current BI block and BI cluster size,
- Changing the database BI blocksize and BI clustersize is an offline procedure, the database needs to be shutdown and not otherwise accessed single-user.
- PROUTIL with TRUNCATE BI Qualifier performs three functions:
- Information in the before-image (BI) files is used to bring the database and after-image (AI) files up to date, waits to verify that the information has been successfully written to the disk (-G), then truncates the before-image file.
- Sets the BI block size using the new Before-image Block Size (
-biblocksize ) when specified, after validating with the current bi cluster size stored in the master block and adjusted to a valid biblocksize value if necessary: 1, 2, 4, 8, 16 KB; minimum = database blocksize. - Sets the BI cluster size using the new Before-image Cluster Size (
-bi ) when specified, and adjusted to assure it is a multiple of 16 to fit the sum of all bi extents. maximum = 262128 KB
Example: Reformat the bi blocksize and biclustersize:
$ proutil <dbname> -C truncate bi -biblocksize 16 -bi 16384
Before-image block size set to 16 kb (16384 bytes). (3781)
Before-image cluster size set to 16384 kb. (1620)
$ proutil <dbname> -C describe:
OpenEdge Database Description
...
Before Imaging information
Block Size : 16384
Cluster Size (16K Units) : 1024 { == 16384 }
Considerations when re-formatting the bi file:The values of the current bi cluster size (-bi) and bi blocksize (-biblocksize) parameter persist through subsequent '
proutil -C truncate bi' calls. It is not necessary to use these parameters again whenever the bi file is subsequently truncated, unless the current sizes need to be changed again to re-format the bi chain structure.
When probkup volumes are restored, the bi block and clusters will be the size specified at the time of the backup.
The ideal bi cluster format is application specific, further advice is provided in Article:
After changing the
biblocksize offline, consider changing the
AIBLOCKSIZE if after-imaging is enabled for performance reasons before restarting the database. For further information refer to Article:
Assure a valid value for the before-image block size is provided, otherwise the validation with the current bi cluster size can cause the database to be inoperable.