Check method of direct and indirect pointer without creating the records for ILE
Original Publication Date: 2001-May-26
Included in the Prior Art Database: 2003-Jun-18
A method is disclosed that enables the performance of the database checking program and disk space utility improve when the data in the different databases are linked by the logical relationship including the secondary index. These improvement is solved by no need of the additional work records by use of detecting the database errors for the indirect pointers. The indirect pointer is introduced in IMS Version 7. With this pointer, the data residing separate databases related to the logical relationship are maintained in the different way of the direct pointer. Either paths by use of the direct pointer or indirect pointer is active to point to the target data. Before the program determines which type of pointer should actually pointers to its target , all the data records scanned by the checking program must put them into the work files for both type of pointers. But, the creating additional records increases program performance and disk space utility worse. The reorganized number (Reorg#), which is incremental when the database is reorganized or the pointer that is set into each data is updated, is assigned to the data and databases established by the logical relationship. The Reorg# between a data and its target database are compared. If it is the same, the logical relationship is established by use of the direct pointer, otherwise the indirect pointer is used. In the case of indirect pointer, the Indirect List Entry Key (ILK), which is set in the prefix of the data and is the same as the target data to which the indirect pointer points, is searched in the Indirect List Data Set (ILDS). Each Indirect List Entry (ILE) has the ILK and the pointer that points to the target. In other words, the data having the indirect pointer pointers to its target through the ILE indirectly. The classical method in order to check the pointers is that the records for all the pointers are created. According to the method, the records for ILEs are created to check the indirect pointers. Three type of records are created(See Figure:3) including the type for ILEs. All the records of the three type must be written into the work file and the each records are sorted by the key(ILK). Finally, matching of the two records with the pointer value, which is called Relative Byte Address(RBA) to evaluate the pointers(See Figure:2).