PPM Upgrade fails with error java.lang.NullPointerException on PURGE_REPORTS_JOB_DEFINITION.xml after 15.3

Document ID : KB000107738
Last Modified Date : 24/07/2018
Show Technical Document Details
Issue:
When upgrading CA PPM from 15.3 or earlier to 15.4 or later, an error is thrown:
 
7/12/18 11:35 AM (ExecTask) Applying ODATA_SERVICE_NAVIGATE_ACCESS_RIGHT.xml
7/12/18 11:35 AM (ExecTask) Applying PURGE_REPORTS_JOB_DEFINITION.xml
7/12/18 11:35 AM (ExecTask) Error Applying XOG: Failure occurred while applying PURGE_REPORTS_JOB_DEFINITION.xml
7/12/18 11:35 AM (ExecTask) Check C:\Clarity/logs/xog-seeddata/out/database\PURGE_REPORTS_JOB_DEFINITION_out.xml for errors
7/12/18 11:35 AM (ExecTask) C:\Clarity\.setup\scripts\db.xml:2352: The following error occurred while executing this line:
7/12/18 11:35 AM (ExecTask) C:\Clarity\.setup\scripts\db.xml:2568: The following error occurred while executing this line:
7/12/18 11:35 AM (ExecTask) C:\Clarity\.setup\scripts\db.macros.xml:105: Java returned: 2
7/12/18 11:35 AM (ExecTask) at org.apache.tools.ant.ProjectHelper.addLocationToBuildException(ProjectHelper.java:568)
7/12/18 11:35 AM (ExecTask) at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:443)
 
 
When opening PURGE_REPORTS_JOB_DEFINITION_out.xml we can see a NullPointer Exception:
 
<Status elapsedTime="0.218 seconds" state="FAILURE"/>
<Statistics failureRecords="1" insertedRecords="-2" totalNumberOfRecords="1" updatedRecords="2"/>
<Records>
<Record>
<KeyInformation>
<column name="externalSource">NIKU</column>
<column name="source">ca.com</column>
<column name="code">PURGE_REPORT_OUTPUT</column>
</KeyInformation>
<ErrorInformation>
<Severity>FATAL</Severity>
<Description>XOG-3300: Job Definition record has not been inserted java.lang.NullPointerException&#xd;
at com.niku.odf.ori.xblhandlers.EntityHandler.modifyBusinessObject(EntityHandler.java:185)&#xd;
at com.niku.odf.ori.xblhandlers.EntityHandler.processOdfRequest(EntityHandler.java:120)&#xd;
at com.niku.odf.ori.xblhandlers.EntityHandler.postProcess(EntityHandler.java:57)&#xd;
at com.niku.xql2.XQLVisitor.postProcess(XQLVisitor.java:1419)&#xd;
at com.niku.union.xml.dom.DOMWalker.postProcess(DOMWalker.java:210)&#xd;
at com.niku.union.xml.dom.DOMWalker.traverseIntern(DOMWalker.java:94)&#xd;
at com.niku.union.xml.dom.DOMWalker.traverse(DOMWalker.java:51)&#xd;
at com.niku.xql2.handlers.LoopHandler.processObject(LoopHandler.java:388)&#xd;
at com.niku.xql2.handlers.LoopHandler.processSet(LoopHandler.java:259)&#xd;
at com.niku.xql2.handlers.LoopHandler.preProcess(LoopHandler.java:216)&#xd;
 
 
Resolution:
This job gets added in the 15.3 release. Upon checking in 15.3 we can see the job is getting inserted correctly with no error in the out file. The job is Active, the lookups BROWSE_WORKFLOW_RESOURCES and REPORT_OUTPUT_TYPES are Active and available too.
 
However Purge Report Output  job does not run from UI and is missing all the job parameters. This is what is causing the issue, the job definition is affected. Simply importing a XOG will not work as the definition is corrupt.

 
Workaround:
  1. Rollback to 15.3 or use 15.3. as in between environment to upgrade to before going higher.
  2. Bring the services up on 15.3, connect to UI - Administration - Jobs
  3. Open the job Purge Report Output - it should be Active, check if the parameters are there
  4. If not, select and Delete the job
  5. Now XOG in the attached file  PURGE_REPORTS_JOB_DEFINITION.xml and ensure the job is created correctly with the parameters in UI - Administration - Jobs
  6. Ensure the Purge Report Output job runs successfully from Home - Reports and Jobs
  7. Now you can start the upgrade to 15.4 and higher
File Attachments:
PURGE_REPORTS_JOB_DEFINITION.xml