• April 9, 2020

Db2 Cloning Tool Version Mismatch Processing

Db2 Online/Pending alters are a great thing for Db2 schema evolution. This does, however, create an interesting challenge for application cloning operations. This results in rows being versioned within the pageset, and can cause compatibility checking issues between the source and target system. In a nutshell:

CREATE TABLE T1 (COL1 INT) + ALTER TABLE T1 ADD COLUMN COL2 CHAR(10)

is not the same as

CREATE TABLE T1 (COL1 INT) + ALTER TABLE T1 ADD COLUMN COL2 CHAR(10)

Logically the structures look the same when viewing the source and target catalogs, but physically, row versioning makes these structures different.

Db2 has released several PTFs for enhanced versioning information in V11 & V12. The Cloning Tool has also delivered PTFs to take advantage of this enhanced versioning information. However, unless you’ve reviewed the hold data for these PTFs, enacting these enhancements may not be evident.

Technotes have been created to help with this topic. Please see:

Db2 11 for z/OS customers should make sure to set the Cloning Tool parameter DB2V11_EPIC37738_INSTALLED=Y. This should be placed in the DSN_COPY_OPTIONS section of the CKZINI member, in the SCKZPARM library. If you’re unsure of your library name or member name, look in any Source job output for library/member associated with the CKZINI DD.

When this parameter is being picked up by the Source, you’ll see the following CKZ53229I message:


Also note that there’s a section on how the Cloning Tool can indicate which source spaces need to have REPAIR INSERTVERSIONPAGES run on them. Watch for more information on this topic. IBM is working on providing assistance with this circumstance. I’ll post more on this topic when the information is available.

 One more thing: as a general best practice, set TARGET-JOB-REPAIR-EXECUTE=Y & TARGET-JOB-REPAIR-SELECT=Y, in the Source job, SET Command screen. This allows the target job to be able to repair the target when necessary to complete clone processing. It’s not only a best practice, it is required to enable everything mentioned above.

Paul Bartak

Paul Bartak 5 Posts

Paul Bartak has been working with IBM databases since 1985, including the first version of DB2 on MVS. As an IBM customer for 14 years Paul worked in Application Development, Database Administration, and DBA. He joined IBM in 1999 as an Information Management Technical Specialist, teaming with the Sales force to present, design, install, demonstrate, and evaluate IBM Information Management solutions in a pre-sales environment; gaining multiple certifications in Database Administration, Data Replication, Blockchain, and Cloud Computing. Paul developed the four generations of the DB2 Migration Planning Workshops from DB2 V8 for z/OS, to DB2 11 for z/OS; and enablement for Db2 for z/OS pureXML and Temporal features. Currently, as a Principal Solutions Architect with Rocket Software, Paul is focused on the tools used to maximize DB2 for z/OS value, with emphasis in database cloning and DevOps processes. He supports multiple Db2 User Groups, has been a speaker at several IDUG and Insight/Think conferences, is a Redbook/Redpaper author, and IBM Champion.

0 Comments

Leave a Comment

Your email address will not be published. Required fields are marked *