Use "
proutil dbname -C truncate area [area-name]", first introduced in Progress 9.1B is designed to fast-delete the entire data content of an area. There are two ways to truncate the areas of a database offline, these methods are outlined in Article
How to Remove Storage Areas and Data Extents in Progress 9.x, 10.x, and 11.x 1)
proutil -C truncate area
- Truncates the bi file
- Truncates each empty area in the database that contains no storage objects (indexes, tables or lobs) by simply clearing the space allocation chains and re-setting the high water mark. This is the behavior on Progress 9.0x and 9.1A before the area name can be optionally provided since Progress 9.1B.
- This command is useful in recapturing space in an area where a table move has been performed or all the storage objects of a particular area have been deleted or if the goal is to delete the extents and/or the area with a subsequent call to prostrct remove
- It is not useful as a quick delete of all the storage objects in an area however
2)
proutil -C truncate area [area-name]
- Truncates the bi file
- Deactivates any indexes on tables that are in this area to truncate but are not themselves in the area being truncated.
- Resets the high water mark.
- Zeroes the space allocation chains (rm chain, index delete chain and free chain)
- Restores template records to the truncated area (The template records maintain the default values for record creation)
- Re-creates root blocks for indexes in the truncated area.
- This is useful as a quick delete of all the storage object in an area ( Deleted records are not zeroed out)
- Can't truncate storage areas if ai is enabled
- No data integrity checks are performed (no table validation executed) nor triggers fired so orphaned records could occur depending on the particular db relational model
Attempts to restore the high water mark hoping to recover data from the truncated area it will not be possible as the data corruption is inevitable. Ensure a valid database backup before proceeding with structural changes
The Schema Area (Area 6) cannot be truncated, but a utility "Schema mover" introduced in Progress 9.1D, for further information refer to Article
Truncate the Schema Area with PROUTIL mvsch.