As the ISAM action macros are invariable as far as the format of the file to be processed is concerned, there are no conversion problems on this level. For example, the same macro can be applied to both NK-ISAM and K-ISAM files in a program if the FCB address is passed in a register. The sole limitation with respect to the user interface is that overflow blocks must not contain parts of the ISAM index. In the transition from NK-ISAM to K-ISAM, the user must of course remember that ISAM pool macros are supported only if NK-ISAM is loaded.
The following table summarizes the most important changes in NK-ISAM, together with references to their possible effects.
NK-ISAM | Effect |
---|---|
Flag processing | Performance deterioration when the GETFL macro is used |
Index and data separation | Is ignored; secondary allocations are effective only for the data section |
File format | Note for UPAM processing of ISAM files: usable area of data blocks is reduced; overflow blocks increase the I/O rate |
ISAM pools | Possibly increased address space requirements;class 4 memory load is reduced for shared-update processing |
I/O areas | IOAREA1/2 is replaced by the pools and is needed only in locate mode; advisable for sequential processing |
PAD factor | PAD limit must be exceeded before a new data block is requested |
Record lock | Replaces the old block lock |
Checkpoint/restart | No checkpoints are written with host-specific or user-specific ISAM pools |