Upgrade to 17.5 fails with the error CA SDM MDB Patch Installation has failed
search cancel

Upgrade to 17.5 fails with the error CA SDM MDB Patch Installation has failed

book

Article ID: 448827

calendar_today

Updated On:

Products

CA Service Management - Service Desk Manager CA Service Desk Manager

Issue/Introduction

When upgrading CA Service Desk Manager (SDM) from version 17.4.x to 17.5, the installation fails during the MDB update step

In the %TEMP%/casm/install_mdb.log, the following error sequence is observed:

[CommonProcessUtilities] Output 07-17,14:01:26 MDBTools install error=3
[CommonProcessUtilities] Output 07-17,14:01:27 Setupmdb exit /B return code=3
[ActiveProcessHolder] Exit Monitor. Process ID (PID): 8712
[CommonProcessUtilities] Command terminated with exit code: 3

[SDMPatch] Exit code of SDM MDB script : 3

 

In the casm/Patching/17_5_<DATE>/SDM_MDB_<DATE>/install_mdb.log, the following error sequence is observed:

IF NOT EXISTS (select * from sysindexes where id=object_id('call_req') and name='call_req_x16') 
CREATE INDEX call_req_x16 ON call_req ( resolve_date )  ON [PRIMARY]
INFO - MDBTools_0308I - Installation of last object failed, requeuing it to the end of the list.
INFO - MDBTools_0305E - Error processing table 'call_req.xml'; details follow:
ERROR - com.microsoft.sqlserver.jdbc.SQLServerException: The object '<CustomINDEX>' is dependent on column 'open_date'.
com.microsoft.sqlserver.jdbc.SQLServerException: The object '<CustomINDEX>' is dependent on column 'open_date'.
 at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:262)
 at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1621)
 at com.microsoft.sqlserver.jdbc.SQLServerStatement.getMoreResults(SQLServerStatement.java:1342)
 at com.ca.mdbtools.DriverApp.updateDB(DriverApp.java:2699)
 at com.ca.mdbtools.DriverApp.apply(DriverApp.java:2257)
 at com.ca.mdbtools.DriverApp.installSchemaDriver(DriverApp.java:1086)
 at com.ca.mdbtools.Utilities.run(Utilities.java:1678)
 at com.ca.mdbtools.Utilities.main(Utilities.java:1042)
17PMt6_PM31790120017_ti16 ERROR - MDBTools_0307E - SQL text:
17PMt6_PM31790120017_ti16 ERROR -    IF EXISTS (select i.name from sysindexes i where i.id = OBJECT_ID('call_req')  and i.name = 'call_req_x0')

Environment

Service Desk Manager 17.5

Database: SQL Server

Cause

The upgrade process attempts to modify or create indexes on the call_req table (e.g., call_req_x16 or call_req_x0). If there are custom database objects (like views or custom indexes) that depend on the columns being modified, the SQL Server throws a dependency error, preventing the MDB tools from completing the schema update.

Resolution

1. Identify the Custom Object: Based on the log error, identify the specific custom object (e.g., z_custom_index_or_view).

2. Back up the Object Definition: Script out the definition of the custom view/index so it can be recreated later.

3. Drop the Custom Object: Remove the custom index or view from the database.

4. Retry the Upgrade: Run the CA SDM 17.5 installer again. The MDB update should now proceed without the dependency conflict.

5. Recreate the Object: Once the upgrade is successful, recreate the custom view or index, ensuring it is compatible with the new 17.5 schema.

Additional Information

17.5 Database Requirements

MDB Upgrade Failure - tenant_hierarchy_sqlserver.xml and date_view_sqlserver.xml