The ISNREUSE function controls whether ISNs of deleted records may be reassigned to new records.
Note:
ISNREUSE can cause excessive fragmentation of the file if the file is very volatile
having many deletes and inserts. Adabas uses a performance based algorithm to search for a
free ISN when doing an insert. RSP078 may be returned indicating that the file has reached
the TOPISN and the file is severely fragmented.
This utility function does not need to lock the database file for its use; this function can perform its processing in parallel with active users. This means that you do not need to set the file to read-only status to run this utility function.
This document covers the following topics:
- FILE: File Number
FILE is the number of the file for which the ISNREUSE setting is to be changed. The checkpoint file cannot be specified. Each individual file in an expanded file chain is processed separately and can be reset individually.
- MODE: Reuse Mode
MODE causes the ISN reuse mode to be in effect. MODE=OFF causes Adabas not to reuse the ISN of a deleted record for a new record. Each new record will be assigned the next higher unused ISN. MODE=ON indicates that Adabas may reuse the ISN of a deleted record. The MODE parameter has no default; it must be specified.
- INPARALLEL: Execute function in parallel
When INPARALLEL=YES (the default) is specified, the function may be executed even if other users are active on the file. Adabas performs the function while all application commands against the file are temporarily quiesced and suspended. The integrity of the file targeted by the ADADBS function is maintained.
With INPARALLEL=NO, the function requires exclusive file control – that is, no applications can be executing against the file. Adabas refuses to execute the function (with response code 48) if other users are active on the file.
System files require INPARALLEL=NO.
- NOUSERABEND: Termination without Abend
When a parameter error or a functional error occurs while this utility function is running, the utility ordinarily prints an error message and terminates with user abend 34 (with a dump) or user abend 35 (without a dump). If NOUSERABEND is specified, the utility will not abend after printing the error message. Instead, the message "utility TERMINATED DUE TO ERROR CONDITION" is displayed and the utility terminates with condition code 20.
Note:
When NOUSERABEND is specified, we recommend that it be specified as the first parameter of the utility function (before all other parameters). This is necessary to ensure that its parameter error processing occurs properly.- PASSWORD: File Password
PASSWORD specifies the file's security password, and is required if the file is password-protected.
- RESET: Reset ISN Pointer
The RESET parameter causes searches for an unused ISN to start at the beginning of the file.
Note:
If the file has reached TOPISN and the available ISNs are in the middle of the file, it may be a better alternative to reorganize the file (unload/reload) for performance reasons.- SETISN: Specific ISN to set the Rotating AC Pointer to
This specifies which ISN will start the search for a reusable ISN. If zero is specified it will be set to one.
Note:
SETISN has no effect on AC2. SETISN is only valid when MODE=ON and RESET are specified.- TEST: Test Syntax
The TEST parameter tests the operation syntax without actually performing the operation. Note that the validity of values and variables cannot be tested: only the syntax of the specified parameters can be tested. See Syntax Checking with the TEST Parameter for more information on using the TEST parameter in ADADBS functions.
ADADBS ISNREUSE FILE=7,MODE=ON
ISNs of deleted records in file 7 may be reassigned to new records.
ADADBS ISNREUSE FILE=3,MODE=ON,RESET
This enables REUSABLE ISNs for file 3. Deleted ISNs may be reassigned to new records. The search for a reusable ISN will start at the beginning of the file.
ADADBS ISNREUSE FILE=3,MODE=ON,RESET,SETISN=6000
This enables REUSABLE ISNs for file 3. Deleted ISNs may be reassigned to new records. The search for a reusable ISN will start at ISN 6000.