Start of change

Logical relationships, secondary indexes, and database versioning

IMS™ database versioning supports both databases that have logical relationships and databases that have secondary indexes, as long as the segments that are involved in the relationship between the two databases, or that are paired with another segment in the same database, do not change in new versions of the DBD.

Only the segments in the databases that are not involved in a relationship can change.

Databases that have a secondary index are supported by database versioning, but only when the base version of the DBD of the indexed database defines the secondary index relationships and those relationships do not change in later versions of the database. The segment and field relationships of a secondary index are defined in the DBD of the indexed database by XDFLD statements. Both the XDFLD statements and the fields in the indexed database that are referenced by the XDFLD statements must remain unchanged in later versions of the indexed database.

When you create a new version of a database that has a direct logical relationship with another database, you must generate new ACB members for both databases at the same time.

The database definitions (DBDs) for both databases must be explicitly specified on the BUILD statement of the ACB Maintenance utility.

DBDs for databases that are only indirectly related to the database that is being modified do not need to be included on the BUILD statement.

For example, if a new version of database A is being created, and database A is related to database B, which in turn is related to database C, only DBDs for databases A and B need to be specified on the BUILD statement.

As another example, if the a new version is being created for database B from the previous scenario, the DBDs for all three databases, A, B, and C, need to be specified on the BUILD statement.

End of change