No free logical record exists
This example shows how insertion takes place when no free logical record exists in the CI.
The CI is split forming two new CIs, both equal in size to the original one. Where the CI is split depends on what you have coded in the INSERT=parameter on the OPTIONS statement in the DFSVSAMP data set for batch environments or the DFSVSMxx PROCLIB member for online environments.
The split can occur at the point at which the root is inserted
or midpoint in the CI. After the CI is split, free logical records
exist in each new CI and the new root is inserted into the proper
CI in root key sequence. If, as was the case in the figure shown in A free logical record exists, logical records
in the new CI contained roots with higher keys, those logical records
would be pushed down
to create space for the new logical record.
When adding new root segments to a HISAM database, performance can be slightly improved if roots are added in ascending key sequence.
