Troubleshooting
Problem
If you apply fixpack 7.6.0.3 or later to Maximo 7.6.0.2 or earlier, UpdateDB can fail in patch V7603_19. Any upgrade that includes fixpack 7.6.0.3 can fail. So 7.6.0.2 to 7.6.0.3, 7.6.0.2 to 7.6.0.7, 7.6.0.0. to 7.6.0.8, etc. Fixpacks are cumulative, meaning that any fixpack contains all fixpacks that precede it. For example, fixpack 7.6.0.5 includes 7.6.0.1, 7.6.0.2, up to 7.6.0.5. Upgrading 7.6.0.2 to 7.6.0.5 means upgrading 7.6.0.2 to 7.6.0.3, then to 7.6.0.4, then to 7.6.0.5. It is the upgrade to 7.6.0.3 that can fail.
Symptom
Error message found at the end of the UpdateDB log:
insert into maxmenu (menutype, moduleapp, position, subposition, elementtype, keyvalue, visible, maxmenuid) values ('APPMENU', 'ITEM', 1378565, 0, 'SEP', 'AG-AM1378565', 1, MAXMENUSEQ.nextval)
;
// Failed.
ERROR: BMXAA7025E -- Script failed while running.;
ORA-12899: value too large for column "MAXIMO"."MAXMENU"."KEYVALUE" (actual: 12, maximum: 10)
Cause
UpdateDB patch V7603_19 attempts to populate column MaxMenu.KeyValue with a string that is 12 characters. Column MaxMenu.KeyValue is defined to support up to 10 characters. Adding the new row to MaxMenu fails, and UpdateDB terminates.
Environment
Maximo fixpack 7.6.0.3, 7.6.0.4, or newer
Diagnosing The Problem
The statement that fails is:
insert into maxmenu (menutype, moduleapp, position, subposition, elementtype, keyvalue, visible, maxmenuid) values ('APPMENU', 'ITEM', 1378565, 0, 'SEP', 'AG-AM1378565', 1, MAXMENUSEQ.nextval)
The value in the statement that caused the failure is 'AG-AM1378565'. The value is 12 characters long. The value is to be inserted in column MaxMenu.KeyValue, which allows up to 10 characters. To view the defined length of column MaxMenu.KeyValue run this SQL query:
Select length From maxattribute Where objectname='MAXMENU' And attributename='KEYVALUE' ;
If the value that is returned from the SQL query is less than 12, then we have identified the cause of failure.
Resolving The Problem
Fixpack 7.6.0.4 will increase the length of column MaxMenu.KeyValue to 20 characters. To resolve failure in UpdateDB, manually increase the length of the column to 20 characters before upgrading the database.
1. Restore the database to pre-upgrade
2. Update the Maximo definition of the column with these 2 SQL statements:
- Update maxattribute Set length=20 Where objectname='MAXMENU' And attributename='KEYVALUE' ;
- Update maxattributecfg Set length=20 Where objectname='MAXMENU' And attributename='KEYVALUE' ;
3. Increase the size of the database column to 20 characters. On Oracle the command is:
- Alter Table maxmenu Modify (keyvalue varchar2(20)) ;
This command will be slightly different on another database platform
4. Upgrade the database
A bug fix request (APAR) has been created for this issue.
Was this topic helpful?
Document Information
Modified date:
17 June 2018
UID
swg22007248