I ran a 3 steps job,
1- First step is a DBUTLTY COMM=STATS and CXX REPORT TYPE=A. The index used blocks in first step show 885,469.
2- The second step is a DEFRAG, the report shows 792,603 blocks deleted.
3- The final step shows the index used blocks, after the DEFRAG, with 807,719.
If the DEFRAG report is accurate, the CXX report, should show only 92,866 blocks used.
One of the reports seems wrong, but which one?
The most accurate report is the CXX report if one is wanting values for a grand total.
Also, note that there is a printed statistic of "blocks deleted". This contains two things.
The first is DXX blocks which DEFRAG found already deleted but which the index queue has not yet processed.
The second are blocks which the DEFRAG itself deletes. These are typically blocks which are combined with other blocks, but they may also be something like a cleanup of logically deleted entries which were still physically present in the DXX when DEFRAG ran.
Hence DEFRAG can be used as a form of DXX TSN cleanup.
So, the Deleted Blocks by DEFRAG cannot be necessarily seen reported in the next CXX report as we may expect. Your Database may be or was very fragmented or disorganized.
"The DEFRAG and its report deal with the DXX only.
The CXX report is IXX and DXX."
See CA Datacom/DB DBUTLTY REFERENCE GUIDE - DEFRAG FUNCTION for more info.