IBM Support

"Pending schema update changes" preventing i2 Analyze upgrade

Question & Answer


Question

I followed the standard upgrade steps as described in the upgrade documentation.  I deleted and replaced the toolkit, swidtag, and license directories.  Then, I ran the "upgrade" task and got the following error:
Exception in thread "main" java.lang.IllegalStateException: Cannot generate the InfoStore database upgrade scripts because there are pending schema update changes.
I have no apparent way to determine what these schema changes are.
Excerpt from logs:
...
[08/17/2021 16:10:21] ==============================
[08/17/2021 16:10:21] Upgrading from version: 4.3.3.0
[08/17/2021 16:10:21] ==============================
[08/17/2021 16:10:21] :versionCheck
[08/17/2021 16:10:21] :generateDatabaseUpgradeProperties
[08/17/2021 16:10:21] For parameter "dbUser" using config value "db2admin"
[08/17/2021 16:10:21] For parameter "trustStore" using config value "C:/IBM/i2analyze/i2-liberty-truststore.jks"
[08/17/2021 16:10:23] :generateInfoStoreDataTableCreationScripts
[08/17/2021 16:10:25] :generateInfoStoreCreationScripts
[08/17/2021 16:10:27] Loading version information from C:\IBM\i2analyze\toolkit\scripts\database\infostore.version.properties
[08/17/2021 16:10:27] Loading version information from C:\IBM\i2analyze\toolkit\scripts\database\common.version.properties
[08/17/2021 16:10:27] Version information loaded
[08/17/2021 16:10:27] :beforeDatabasesCreated
[08/17/2021 16:10:27] :generateInfoStoreUpgradeScripts
[08/17/2021 16:10:27] 
[08/17/2021 16:10:30] Exception in thread "main" java.lang.IllegalStateException: Cannot generate the InfoStore database upgrade scripts because there are pending schema update changes.
[08/17/2021 16:10:30] at com.i2group.disco.infostore.upgrade.processor.internal.InfoStoreUpgradeProcessor.checkSchemasIdentical(InfoStoreUpgradeProcessor.java:237)
[08/17/2021 16:10:30] at com.i2group.disco.infostore.upgrade.processor.internal.InfoStoreUpgradeProcessor.generateScriptFiles(InfoStoreUpgradeProcessor.java:161)
[08/17/2021 16:10:30] at com.i2group.disco.common.interceptors.internal.InfoStoreTransactionInterceptor.invoke(InfoStoreTransactionInterceptor.java:90)
[08/17/2021 16:10:30] at com.i2group.disco.infostore.upgrade.internal.InfoStoreUpgrade.generateScripts(InfoStoreUpgrade.java:77)
[08/17/2021 16:10:30] at com.i2group.disco.infostore.upgrade.internal.InfoStoreUpgradeCLI.generateUpgradeScripts(InfoStoreUpgradeCLI.java:74)
[08/17/2021 16:10:30] at com.i2group.disco.infostore.upgrade.internal.InfoStoreUpgradeCLI.run(InfoStoreUpgradeCLI.java:56)
[08/17/2021 16:10:30] at com.i2group.disco.infostore.upgrade.internal.InfoStoreUpgradeCLI.lambda$main$0(InfoStoreUpgradeCLI.java:49)
[08/17/2021 16:10:30] at com.i2group.disco.infostore.cli.internal.CommandLineExecutor.execute(CommandLineExecutor.java:183)
[08/17/2021 16:10:30] at com.i2group.disco.infostore.cli.internal.CommandLineExecutor.execute(CommandLineExecutor.java:151)
[08/17/2021 16:10:30] at com.i2group.disco.infostore.upgrade.internal.InfoStoreUpgradeCLI.main(InfoStoreUpgradeCLI.java:49)
[08/17/2021 16:10:30] 
[08/17/2021 16:10:30] FAILURE: Build failed with an exception.
[08/17/2021 16:10:30] 
[08/17/2021 16:10:30] * Where:
[08/17/2021 16:10:30] Script 'C:\IBM\i2analyze\toolkit\scripts\gradle\infostore.gradle' line: 76
[08/17/2021 16:10:30] 
[08/17/2021 16:10:30] * What went wrong:
[08/17/2021 16:10:30] Execution failed for task ':generateInfoStoreUpgradeScripts'.
[08/17/2021 16:10:30] > Process 'command 'C:\IBM\i2analyze\toolkit\tools\java\bin\java.exe'' finished with non-zero exit value 1
[08/17/2021 16:10:30] 
[08/17/2021 16:10:30] 
[08/17/2021 16:10:30] 
[08/17/2021 16:10:30] Failed in 1m 0s

Cause

 There is a known issue with the "i2 Analyze schema designer" tool where property groups can move Properties to a different location after you save the schema.  The schema is functionally the same.  However, the upgrade detects differences in the schema.

Answer

To get past this error, restore your back up toolkit configuration so you are using the old toolkit version.  From the i2Analyze/toolkit/scripts directory, run the following command:
setup -t updateSchema
Some schema changes are listed when you run the updateSchema command.
Now follow the Upgrade instructions to delete the toolkit folder and other files, and replace them with the files from the new version .zip file downloaded from Passport Advantage.  You can now successfully run "setup -t upgrade".

Related Information

[{"Type":"MASTER","Line of Business":{"code":"LOB24","label":"Security Software"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSXVXZ","label":"IBM i2 Enterprise Insight Analysis"},"ARM Category":[{"code":"a8m0z000000cwjYAAQ","label":"i2 Enterprise Insight Analysis->Upgrade"}],"ARM Case Number":"TS006527539","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"2.4.0"}]

Product Synonym

EIA

Document Information

Modified date:
29 September 2021

UID

ibm16493849