Deleting rows from a table only frees pages for reuse within that table it does
not return space to the dbspace's free pool for use by other tables and so, as
you are seeing, the free space does not show up in onstat -d.
If the tables that were cleaned up are not the only ones that will need space
over time you will have to either add more chunks to the dbspace or reorg all
of
the existing tables to release their unused pages to the dbspace's free pool.
There are three basic ways to compress a table:
1. Unload the table, drop it, recreate it, reload the data. This can be done
with any of several tools including the HPLoader.
2. Alter an index TO CLUSTER, this will sort the rows in the table to match the
order of keys in that index rebuilding the table in the process and releasing
unused pages. Most DBAs then ALTER the index to NOT CLUSTER for documentation
purposes.
3. ALTER FRAGMENT ON TABLE tabname INIT IN <dbspace or fragmentation clause>.
This is the fastest method and the dbspace or fragmentation clause can be the
same as the table's current location(s) or different.
Art S. Kagel
----- Original Message -----
From: Silvana Meza <smeza@fheg.follett.com>
At: 9/24 15:11
> Question:
>
> I have a dbspace that was running out of space. I talked to the user and
> they did a mass delete of records.
> I re-ran oncheck -pe and it still reports the same "Used" amount. Is there a
> way to see what is actually empty?
>
> I hope I worded this so that you understand.
>
> IDS 7.31UC7
> AIX 4.3.3.
>
> Silvana
>
>