By Paul McWilliams, based on John Campbell's webcast.
In Part 1 of his "Greatest Hits, War Stories, and Best Practices 2019" webcast, IBM Distinguished Engineer John Campbell's provided some background on the subject of running out of the basic 6-byte log RBA addressing range in Db2 for z/OS. John said that this subject has become somewhat controversial because of conflicting recommendations given in various presentations, blog posts, and in face to face-conversations. He also clearly outlined his strategy recommendations for resolving the situations that can arise because of the end of the 6-byte addressing range.
Here is John's take:
- It has become increasingly common for Db2 customers to run out of and exhaust the addressing range of the basic 6-byte log RBA value, which applies equally in both data sharing and non data sharing environments.
- A very small number of data sharing customers are close to running out of the 6-byte log record sequence number (LRSN). The LRSN value is used in Db2 data sharing environments, instead of the log RBA, to serialize restart and recovery actions. The reason for a high value is that when the installations migrated or re-migrated to data sharing, a delta value was added to the LRSN value, to make sure that the starting LRSN value of the data sharing group was greater than the RBA of the Db2 subsystem that became the originating Db2 data sharing member.
- Conversion of the BSDS to the extended 10-byte RBA and LRSN format is a technical prerequisite for migration to Db2 12. The conversion must be completed in Db2 11 new-function mode (NFM), before the Db2 12 migration process begins.
The problem areas
- After conversion of the BSDS to the extended 10-byte RBA, non-data sharing Db2 subsystems accelerate with increased velocity toward the end of the basic 6-byte log RBA addressing range! This happens because of the increase in log record size to accommodate 10-byte values.
- After the BSDS conversion, Db2 stops generating DSNJ032I warning messages, even if there is imminent danger of reaching the 6-byte RBA soft limit (non-data sharing) or the the 6-byte LRSN soft limit (data sharing) for table spaces or index spaces in the 6-byte format.
- Too many customer installations have embarked on aggressive but unnecessary "crash projects" to reorganize their catalog, directory, and application objects to the extended 10-byte RBA or LRSN format.
John recommends the following strategies for dealing with situations related to running out of 6-byte addressing range.
For non data-sharing subsystems that are running out of 6-byte RBA addressing range
You must take the following actions:
- Convert the catalog, directory, and application objects to the 10-byte log RBA format.
- Convert the BSDS to the extended 10-byte format. Do this step last to avoid accelerating progress toward the end of the basic 6-byte RBA addressing range, before all objects are converted.
In Db2 data sharing, if one or more member is running out of 6-byte RBA addressing range
You must take the following action:
- Convert just the BSDS of any Db2 member that is running out of 6-byte RBA addressing range. In this situation, there is absolutely no need to convert the catalog, directory, or user objects to the extended 10-byte LRSN format.
For a Db2 data sharing group that is running out of the 6-byte LRSN addressing range
You must take the following actions:
- Convert the BSDS to the extended 10-byte format. By converting the BSDS at the start of the conversion process, you might get incremental benefit from avoiding "LRSN spin" (which occurs when Db2 internally must wait via and instruction loop, to get a unique LRSN value), as the catalog, directory, and application objects are converted.
- Convert the catalog catalog, directory, and application objects to the extended 10-byte format.
The following slide from John's presentation further illustrates his recommendations for converting to the extended 10-byte RBA and LRSN format.
John Campbell is a distinguished engineer for Db2 for z/OS development and Paul McWilliams is as an information developer for Db2 for z/OS documentation.