IDMS: Logically Deleted records
search cancel

IDMS: Logically Deleted records


Article ID: 193418


Updated On:


IDMS IDMS - Database


This article describes what IDMS logically deleted records are and how to physically delete them.


Release : 19.0
Component : CA IDMS


When a program ERASEs a record from a database, for all sets of which the record is a member, IDMS must keep the set "in tact".
To do this, it must change the NEXT pointer of the PRIOR record to the dbkey of the next record, and the PRIOR pointer of the NEXT record to the dbkey of the prior record.

It is always possible to efficiently do the latter because all chained sets in IDMS must have NEXT pointers defined.
However, PRIOR pointers are optional, and for sets where they are not implemented, it might not always be possible to efficiently accomplish the former.

Therefore, if IDMS has to ERASE a member of a set which does not have PRIOR pointers defined, it may have to mark the target record as logically deleted.

Logically deleted records still occupy some space in the database, but only the prefix (the dbkey pointers).
The data portion is not needed and is removed when the record is marked as logically deleted.


Logically deleted record will be physically deleted when it is next possible for IDMS to do so.

This process is described in more detail at Logical Deletion.

Logically deleted records can be physically deleted with the CLEANUP utility: