Modifying a HALDB partitioned secondary index
Changes to HALDB partitioned secondary indexes (PSINDEXes) are like changes to other HALDB databases: you can add, delete, or modify the partitions of a PSINDEX.
Affected partitions must be unloaded, initialized, and reloaded. The indexed database is unaffected by changes to secondary index partitions.
As with non-partitioned full-function databases, if changes to the secondary index require changes to the definition of the indexed database, you might have to unload and reload the indexed database.
An example of a change to a secondary index is a change in a subsequence field. If you add or modify a subsequence field, you must also change the DBD of the indexed database. If the field in the indexed database already exists or does not require other changes to the DBD, you do not have to unload and reload the indexed database. Of course, you need to recreate the secondary index using the new definitions.
Reorganizations of an indexed database do not cause its secondary indexes to be recreated: you must use other means for this, such as the IBM® IMS Index Builder tool. Alternatively, you can use a technique similar to one used to add a secondary index.
Initialize partitions in a PSINDEX as you would partitions in a PHDAM or PHIDAM database by using the HALDB Partition Data Set Initialization utility (DFSUPNT0). DFSUPNT0 automatically generates recovery points for the PSINDEX. Recovery points are not created if you delete and redefine your PSINDEX partitions and then turn off their PINIT flags.
When you make changes to an indexed database that do not require changes to secondary index definitions, you do not need to make any changes to the secondary indexes. They do not need to be unloaded, reloaded, or rebuilt. The self-healing pointer scheme of HALDB provides this capability. The reload process for the indexed database updates the ILDSs. This is all that is required to ensure that the secondary index pointers can be used to find the moved target segments.