On 29 Jul 2013 14:18, Anderson, Kurt wrote:
<<SNIP>> I'm sure there's a wonderfully valid reason for this,
although it makes me wonder if every RGZPFM we have in our processes
should be ran twice instead of once.

The reason is as I stated; i.e. the DB /balances/ the implications of reorganize request between the effects on performance and storage. The idea being, to be predictive of the nature of using the database member to store data. Running the offline reorganize a second time overrides the decision by that database, to imply reclaiming storage is more important than the negative impacts to performance.

Few database file members that are reorganized are ever left unused forever after, and thus some varlen and extent storage is left, presuming that very likely another insert will be coming; i.e. the vast majority of reorganize requests were not historically a final request before an effectively permanent online archival. If the dataspace and varlen segments were truncated to their minimums by default, the next non-read I/O will have extremely negative consequences for performance; the database chose to avoid that effect as the default behavior, similar to how multiple consecutive inserts may /grow/ a dataspace faster than when the same inserts are done sporadically. The database predicts a member will continue to be used, even after the most recent non-consecutive RGZPFM request.

FWiW: Notice that the command verb-mnemonic is not "reclaim". Perhaps submitting a DCR requesting a new parameter to effect RCLSTG(*ALL) [or *MAX]; possibly the option to name individually one or more elements such as *VARLEN or *DDS [dataspace], or perhaps even others according to whatever else [¿LOB spaces?] might be reclaimed\truncated separately.

This thread ...


Return to Archive home page | Return to MIDRANGE.COM home page