z/OS DFSMS OAM Application Programmer's Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Expiration date processing

z/OS DFSMS OAM Application Programmer's Reference
SC23-6865-00

The expiration date is the date on which OAM can delete objects automatically. The expiration date is based on the retention period (RETPD) specified on OSREQ STORE or CHANGE, the event expiration time period (EVENTEXP) specified on OSREQ CHANGE, or on the object's management class expiration rules. The expiration date in the object's directory entry is set to the reserved value of ‘0001-01-01’ when the object has no explicit expiration date. In this case, the expiration of the object is based on the object's management class expiration attributes. The expiration date in the object's directory entry is set to the reserved value of '0002–02–02' when the object is in event-based-retention mode (as a result of RETPD being set to -2 (X'FFFFFFFE') on an OSREQ STORE, STOREBEG, or CHANGE). In this case, the object has an indefinite expiration date which will be set at some point in the future when a particular event has occurred (which is indicated by an OSREQ CHANGE with the EVENTEXP keyword). The object's management class referred to in this section is the actual management class for the object after review and possible override by the automatic class selection routine, which could be different from the management class specified on the OSREQ macro.

Table 1 shows the processing of the values that may be specified on the RETPD parameter and the resulting expiration date. RETPD values in the range of 1 to 93␠000 and the special value X'7FFFFFFF' (2␠147␠483␠647) may be overridden. If the RETPD parameter value exceeds the management class retention limit, the management class retention limit is used to determine the expiration date. For the special parameter value X'7FFFFFFF' (2␠147␠483␠647) to be effective, the management class retention limit must be set to NOLIMIT.

Table 1. Valid Retention Periods for Expiration Date Processing
Specified RETPD Parameter Value Requested Expiration Date STORE Requested Expiration Date CHANGE
0 or retention period parameter not specified (Null) Set expiration date to 0001-01-01 and use management class attributes to determine expiration date. Use existing expiration information for this object.
X'FFFFFFFF' (-1) Set expiration date to 0001-01-01 and use management class attributes to determine expiration date. Reset expiration date to 0001-01-01 and use management class attributes to determine expiration date.
X'FFFFFFFE' (-2) Set expiration date to 0002–02–02 and set indicator in ODSTATF to show this object is in event-based-retention mode. The expiration date for the object is then based on notification of an external event as specified by the OSREQ CHANGE EVENTEXP=number_of_days. Set expiration date to 0002–02–02 and set indicator in ODSTATF to show this object is in event-based-retention mode. The expiration date for the object is then based on notification of an external event as specified by the OSREQ CHANGE EVENTEXP=number_of_days.
1 to 93␠000 If the RETPD value specified is greater than the object's management class retention limit, the expiration date (ODEXPDT) is set to the creation date of the object plus the object's management class retention limit. Otherwise, the ODEXPDT is set to sum of the object create date + RETPD value.
For retention-protected objects:
  • the ODRETDT is set to whichever is later; the newly calculated ODEXPDT or the current ODRETDT.
  • the ODEXPDT is set to whichever is later; the ODRETDT or the ODEXPDT.
If the RETPD value specified is greater than the object's management class retention limit, the expiration date (ODEXPDT) is set to the creation date of the object plus the object's management class retention limit. Otherwise, the ODEXPDT is set to sum of the object create date + RETPD value.
For retention-protected objects:
  • the ODRETDT is set to whichever is later; the newly calculated ODEXPDT or the current ODRETDT.
  • the ODEXPDT is set to whichever is later; the ODRETDT or the ODEXPDT.
X'7FFFFFFF' (2␠147␠483␠647) 9999-12-31 9999-12-31
Any other value These values are invalid. Return and reason codes are returned to the caller. These values are invalid. Return and reason codes are returned to the caller.
Note: If the current expiration date is '0002–02–02' (which means the object is in event-based-retention-mode), the expiration date cannot be changed with the RETPD keyword. Any attempt to do so results in the OSREQ CHANGE failing. The only way to change the expiration date for an object in event-based-retention mode is by specifying the EVENTEXP keyword on an OSREQ CHANGE.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014