Support Article
Need DB2ZOS upgrade DDL for 7.1.6
SA-1574
Summary
Admin is trying to run the generateDDL script to generate the DDL changes needed to upgrade to 7.1.6 on db2zos database. After setting the properties in the setupDatabase.properties and DB2SiteDependent.properties the generateDDL script executes successfully. However, the content of the SQL file is not correct. In the existing schema there are instances of core tables such as pr4_rule like there should be but the script is not finding them and thus ends up adding "create table" statements for tables that already exist.
Error Messages
Line 16258: [java] No Match! :: pc_index_flowref must be created
[java] <pega:unknown name="ROWID_FOR_LOBS" required="true" type="ROWID"/>
Steps to Reproduce
Run generateDDL script with --action upgrade
Root Cause
The root cause of this problem is a defect in Pegasystems’ code/rules. The root cause of this problem is a defect in Pegasystems’ code/rules. The issue is a result of these columns of type ROWID that are present in all of the problem tables.
[java] <pega:unknown name="ROWID_FOR_LOBS" required="true" type="ROWID"/>
To elaborate on this particular situation, it appears the environmental factor here is that an explicitly defined row-id column to connect a row to its corresponding LOB table entry is the root cause of this problem. Cursory research shows that DB2 V8 and later will automatically create these row-id columns when a LOB column is present in the table. We have accounted for these automatic columns and filter them out when introspecting the schema. However, it is also an option to explicitly create the necessary row-id columns, and pre-V8 it was mandatory to do so. These we would not detect and filter out.
Resolution
This issue is resolved through the following local change: Manually generated the DDL needed to update the database schema.
Published January 31, 2016 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.