The database startup parameter "
-recspacesearchdepth" was introduced in OpenEdge 10.1B02. It determines how deep in the Record Free Chain to search, to find a block with enough free space to fit data, before allocating a new clusters worth of space instead from the Empty Chain where the Area High Water Mark (HWM) is raised.
The recspacesearchdepth value is specified in tenths of Cluster Size.
The default value is 5, being 5/10 or 50% of the cluster size worth of RM blocks to move from the front the the back of the RM chain before allocating a new cluster for data.
Some historical background:The default space allocation algorithms were not optimised for specific data growth scenario's. So, the
Record Free Chain Search Depth Factor (-recspacesearchdepth) was added to fix an issue with the record space allocation algorithm where Type II Storage Areas were not searching deep enough into the RM chain for available space before allocating a new cluster. The current default value (5) is a factor used in the new record space algorithm along with the cluster size of the current Storage Area.
The default value of this parameter has since proven to make the algorithm sufficiently search the record free chain for available space. If a "PROUTIL -C chanalys" report shows more than one clusters worth of free space on the RM chain over a prolonged period of time, then changing this value may be warranted but contact Progress Technical Support before doing so.
WARNING:
This parameter should not be changed unless Progress Technical Support and Progress Development advise that after analysis, changing the value may correct observed behaviour under investigation. Either free space won't be used properly if set too low or if the search is too deep performance will drop. Very few production environments have ever needed this value adjusted from the default since it was first introduced.