Troubleshooting
Problem
When upgrading to Maximo 7.6.1.1, UpdateDB fails with an null pointer error.
Symptom
If running UpdateDB manually, the console window reads:
java.lang.NullPointerException
at psdi.tools.UpdateDB.fillAutoKeys(UpdateDB.java: 3297)
at psdi.tools.UpdateDB.main(UpdateDB.java: 3240)
at psdi.tools.UpdateDB.fillAutoKeys(UpdateDB.java: 3297)
at psdi.tools.UpdateDB.main(UpdateDB.java: 3240)
In the UpdateDB logs, the following error will be seen:
ERROR: null
at psdi.tools.UpdateDB(UpdateDB.java: 3297)
at psdi.tools.UpdateDB(UpdateDB.java: 3240)
at psdi.tools.UpdateDB(UpdateDB.java: 3297)
at psdi.tools.UpdateDB(UpdateDB.java: 3240)
Cause
The null error indicates the exception is not being properly handled by UpdateDB. However, the stack trace shows what lines of code the exception is being thrown at:
at psdi.tools.UpdateDB(UpdateDB.java: 3297)
at psdi.tools.UpdateDB(UpdateDB.java: 3240)
at psdi.tools.UpdateDB(UpdateDB.java: 3240)
These lines in the java code show that in this case, the unhandled exception occurred when the code was checking for the presence of a ISDEMO record in the MAXVARS table. This record is used to track whether the database is a demo database. If there is no ISDEMO record in the database, UpdateDB will fail and write this error in the log file.
Diagnosing The Problem
The database should be checked to determine whether a ISDEMO record exists. This can be achieved by using a SQL management tool and running the following select statements:
select * from maxvars where varname = 'ISDEMO'
select * from maxvartype where varname = 'ISDEMO'
Resolving The Problem
If these records do not exist, then they should be added. The SQL statements for this will differ slightly depending on which database Maximo is using. For example, with an Oracle database:
Insert Into maxvartpe (varname, vartype, defaultvalue, description, maxvartypeid) Values 'ISDEMO', 'SYSTEM', '0', 'ISDEMO', maxvartypeseq.nextval ;
Insert Into maxvars (varname, varvalue, vartype, maxvarsid) Values 'ISDEMO', '0', 'SYSTEM', maxvarsseq.nextval ;
After the records have been added, restart UpdateDB. It should pick up where it left off, and complete successfully.
Document Location
Worldwide
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSLKT6","label":"IBM Maximo Asset Management"},"Component":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.6.1.1","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]
Was this topic helpful?
Document Information
Modified date:
18 June 2019
UID
ibm10888087