Question

3
Replies
52
Views
MADDINEV Member since 2008 1 post
Virtusa Corp.
Posted: April 6, 2017
Last activity: April 6, 2018
Closed

PRPC v5.4 to PRPC v7.1.8: Rules migration is failing while loading the records to new rules schema

As a part of the rules migration, generated the DDL by configuring the migrateSystem.properties file and executed the DDL on new rules schema. We see that all the rules tables dump successfully placed in the bulk mover directory. But while loading the database records from the bulk mover to new rules schema, migration script is failing.

Database: DB2 LUW v9.7

App Server: WebSphere 7.0.0.33

Snippet of migrateSystem.properties file:

#The directory where output from the bulk mover will be stored. This directory will be cleared when pega.bulkmover.unload.db is run.

#This property must be set if either pega.bulkmover.unload.db or pega.bulkmover.load.db is set to true.

pega.bulkmover.directory=F:\bulkmover

#The location where a temporary directory will be created for use by the migrate system utilities.

pega.migrate.temp.directory=F:\upgrade-tmp

######## The operations to be run by the utility, they will only be run if the property is set to true.

#Set to true if migrating before an upgrade. If true admin table(s) required

#for an upgrade will be migrated with the rules tables.

pega.move.admin.table=false

#Generate an xml document containing the definitions of tables in the source system. It will be found in the schema directory of the

#distribution image.

pega.clone.generate.xml=false

#Create ddl from the generated xml document. This ddl can be used to create copies of rule tables found on the source system.

pega.clone.create.ddl=false

#Apply the generated clone ddl to the target system.

pega.clone.apply.ddl=false

#Unload the rows from the rules tables on the source system into the pega.bulkmover.directory.

pega.bulkmover.unload.db=false

#Load the rows onto the target system from the pega.bulkmover.directory.

pega.bulkmover.load.db=true

### The following operations should only be run when migrating upgraded rules

#Generate the rules schema objects (views, triggers, procedures, functions). The objects will be created in the pega.target.rules.schema

#but will contain references to the pega.target.data.schema where appropriate.

pega.rules.objects.generate=false

#Apply the rules schema objects (views, triggers, procedures, functions) to pega.target.rules.schema.

pega.rules.objects.apply=false

Exception from the migrate log file:

Buildfile: F:\prpc718_pegaupgrade\scripts\migrateSystem.xml

Setup:

[pega:propertyparser] Reading Properties from : F:\prpc718_pegaupgrade\scripts/migrateSystem.properties

[mkdir] Created dir: F:\upgrade-tmp\MigrateTemp-06-April-2017-10.58.37

[echo] Using temporary directory F:\upgrade-tmp/MigrateTemp-06-April-2017-10.58.37

[unzip] Expanding: F:\prpc718_pegaupgrade\archives\pegadbinstall-classes.zip into F:\upgrade-tmp\MigrateTemp-06-April-2017-10.58.37\load

[echo] Using logging configuration from: ./config/deploylogging.properties

[propertyfile] Creating new property file: F:\upgrade-tmp\MigrateTemp-06-April-2017-10.58.37\prbootstrap.properties

BUILD FAILED

F:\prpc718_pegaupgrade\scripts\migrateSystem.xml:501: com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-104, SQLSTATE=42601, SQLERRMC==;ll. where pxobjclass;LIMIT, DRIVER=3.64.114

at com.ibm.db2.jcc.am.bd.a(bd.java:679)

at com.ibm.db2.jcc.am.bd.a(bd.java:60)

at com.ibm.db2.jcc.am.bd.a(bd.java:127)

at com.ibm.db2.jcc.am.io.c(io.java:2706)

at com.ibm.db2.jcc.am.io.d(io.java:2694)

at com.ibm.db2.jcc.am.io.a(io.java:2143)

at com.ibm.db2.jcc.t4.ab.h(ab.java:141)

at com.ibm.db2.jcc.t4.ab.b(ab.java:41)

at com.ibm.db2.jcc.t4.p.a(p.java:32)

at com.ibm.db2.jcc.t4.qb.i(qb.java:135)

at com.ibm.db2.jcc.am.io.gb(io.java:2112)

at com.ibm.db2.jcc.am.io.a(io.java:3191)

at com.ibm.db2.jcc.am.io.a(io.java:686)

at com.ibm.db2.jcc.am.io.executeQuery(io.java:669)

at com.pega.pegarules.util.anttasks.CheckForUncommittedHotfixes.execute(CheckForUncommittedHotfixes.java:43)

at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)

at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)

at org.apache.tools.ant.Task.perform(Task.java:348)

at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)

at net.sf.antcontrib.logic.IfTask.execute(IfTask.java:197)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)

at org.apache.tools.ant.TaskAdapter.execute(TaskAdapter.java:154)

at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)

at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)

at org.apache.tools.ant.Task.perform(Task.java:348)

at org.apache.tools.ant.Target.execute(Target.java:435)

at org.apache.tools.ant.Target.performTasks(Target.java:456)

at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)

at org.apache.tools.ant.Project.executeTarget(Project.java:1364)

at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)

at org.apache.tools.ant.Project.executeTargets(Project.java:1248)

at org.apache.tools.ant.Main.runBuild(Main.java:851)

at org.apache.tools.ant.Main.startAnt(Main.java:235)

at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)

at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

Total time: 5 seconds

Exiting with Error

Did anyone faced this issue earlier as the exception is misleading to uncommitted hot fixes as we do not have option in PRPC v5.4?

Tried by setting the following properties as true also but no luck:

pega.move.admin.table=true

pega.clone.generate.xml=true

Any quick help highly appreciated.

Low-Code App Development Upgrades
Moderation Team has archived post
Share this page LinkedIn