During the upgrade of the MDB, the schema update fails with "Unable to modify column" due to the existence of an index on that column.

Document ID:  TEC1664108
Last Modified Date:  06/07/2017
{{active ? 'Hide' : 'Show'}} Technical Document Details

Products

  • CA Service Desk Manager

Releases

  • CA Service Desk Manager:Release:14.1
  • CA Service Desk Manager:Release:17.0

Components

  • UNICENTER SERVICE DESK RXX:USRD
Symptoms:

During a product version upgrade, or a maintenance update, of CA Service Desk Manager, the MDB would be updated. 

The updates to the MDB may include new tables, new attributes of existing tables, or changes to data type of existing attributes of existing tables. 

For example, when upgrading from CA Service Desk Manager 12.6 to CA Service Desk Manager 14.1, the MDB Upgrade step may attempt to run the following SQL command to increase the size of the SUMMARY attribute/column of the CALL_REQ table from 240 bytes to 255 bytes:

ALTER TABLE CALL_REQ MODIFY SUMMARY NVARCHAR2 ( 255 )

If, during the attempt to run the SQL command, an index exists on the SUMMARY attribute, then the MDB upgrade would fail with the appropriate code and message.

For an Oracle mdb database, in particular, you may receive "ORA-30556" and "Unable to modify column" messages, such as the following:

                      
ORA-30556: either functional or bitmap join index is defined on the column to be modified
 
INFO - MDBTools_0339I - Upgrading object 'CALL_REQ.xml' from version '4.0' to version '5.0'
- Unable to modify column

The messages would be written to the MDB installation log file.

 

Environment:
CA Service Desk Manager, version upgrade or maintenance upgrade
Cause:

Your database administrator may have added custom indexes to the MDB in order to achieve better performance.

 

Resolution:

To identify your custom indexes, use a naming convention that is different than the naming convention of the CA MDB. 

For example, the following index exists in the CA MDB when you install CA Service Desk Manager: CALL_REQ_X3_CI .  So, if you create a new index, for a column in the CALL_REQ table, do not name it like CALL_REQ_Xn_CI where n is a number.  One idea would be to name it like CALL_REQ_Zn_CI where n is a number, so that the "Z" in "Zn" indicates that this is a custom index, added by your Database Administrator.

When upgrading the MDB, drop the custom indexes, then add them back in after the successful upgrade of the MDB. 

 

Additional Information:

The default name of the MDB installation log file is either "install_mdb.log" when the DBMS is Microsoft SQL Server, "install_ORCL.log" when the DBMS is Oracle. 

The location of the file is default location, or the path specified for the "MDB_TARGET_DIR" parameter of the setupmdb command.  If you are using the Common Installer or Common Patch Installer, you would not run the setupmdb command directly.  The GUI of the installer should give a message which identifies the relevant path and file name.

Please help us improve!

Will this information enable you to resolve your issue?

Please tell us what we can do better.

{{feedbackText.length ? feedbackText.length : '0'}}/255

{{status}}

Not what you were looking for?

Search Again >

Product Information

Support by Product >

Communities

Join a Community >