MDBTools install error=3 when upgrading to CA Service Management 17.2
search cancel

MDBTools install error=3 when upgrading to CA Service Management 17.2

book

Article ID: 129511

calendar_today

Updated On:

Products

CA Service Management - Asset Portfolio Management CA Service Management - Service Desk Manager

Issue/Introduction

Install.log:

[CommonProcessUtilities] 03-14,10:51:51 Loading mdb...
[CommonProcessUtilities]                        using Service_Desk
[CommonProcessUtilities] 03-14,10:52:43 MDBTools install error=3
[CommonProcessUtilities] 03-14,10:52:43 Setupmdb exit /B return code=3
[ActiveProcessHolder] Exit Monitor. Process ID (PID): 4788
[CommonProcessUtilities] Command terminated with error
[SDMPatch] Copying log files from E:\Soft\CA\Service Desk Manager\patches\cum2 to C:\Users\pxh000\AppData\Local\Temp\7\casm\Patching\GOA_20190314_104301\SDM_MDB_20190314_105144


Install_mdb.log:

03-14,10:52:42 INFO - MDBTools_0306I - SQL text:
03-14,10:52:42 INFO -    IF EXISTS (select * from syscolumns where id=object_id('evt') and name='sym')
03-14,10:52:42 INFO -    BEGIN
03-14,10:52:42 INFO -        ALTER TABLE [evt] ALTER COLUMN [sym] nvarchar ( 100 )  COLLATE Latin1_General_CI_AS  NOT NULL
03-14,10:52:42 INFO -    END
Update sql failed:IF EXISTS (select * from syscolumns where id=object_id('evt') and name='sym')
BEGIN
    ALTER TABLE [evt] ALTER COLUMN [sym] nvarchar ( 100 )  COLLATE Latin1_General_CI_AS  NOT NULL
END
03-14,10:52:42 DEBUG - The index 'evt_x0' is dependent on column 'sym'.
03-14,10:52:42 INFO - MDBTools_0308I - Installation of last object failed, requeuing it to the end of the list.
03-14,10:52:42 INFO - MDBTools_0305E - Error processing table 'evt.xml'; details follow:
03-14,10:52:42 ERROR - com.microsoft.sqlserver.jdbc.SQLServerException: The index 'evt_x0' is dependent on column 'sym'.
com.microsoft.sqlserver.jdbc.SQLServerException: The index 'evt_x0' is dependent on column 'sym'.
    at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:216)
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1522)
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.doExecuteStatement(SQLServerStatement.java:799)
    at com.microsoft.sqlserver.jdbc.SQLServerStatement$StmtExecCmd.doExecute(SQLServerStatement.java:696)
    at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:5696)
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1716)
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:180)
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:155)
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.execute(SQLServerStatement.java:669)
    at com.ca.mdbtools.DriverApp.updateDB(DriverApp.java:2697)
    at com.ca.mdbtools.DriverApp.apply(DriverApp.java:2256)
    at com.ca.mdbtools.DriverApp.installSchemaDriver(DriverApp.java:1085)
    at com.ca.mdbtools.Utilities.run(Utilities.java:1678)
    at com.ca.mdbtools.Utilities.main(Utilities.java:1042)
03-14,10:52:42 ERROR - MDBTools_0307E - SQL text:
03-14,10:52:42 ERROR -    IF EXISTS (select * from syscolumns where id=object_id('evt') and name='sym')
03-14,10:52:42 ERROR -    BEGIN
03-14,10:52:42 ERROR -        ALTER TABLE [evt] ALTER COLUMN [sym] nvarchar ( 100 )  COLLATE Latin1_General_CI_AS  NOT NULL
03-14,10:52:42 ERROR -    END
03-14,10:52:42 ERROR - MDBTools_0309E - DBDriver failed to install!
03-14,10:52:42 INFO - MDBTools_0104I - Total time: 0H:0M:50S.
03-14,10:52:43 MDBTools install error=3
03-14,10:52:43 Setupmdb exit /B return code=3

Environment

CA Service Management 17.2

Cause

This problem occurs due to the index 'evt_x0' being present in the 'evt' table.

Resolution

Follow the steps below:


(1) Go to SQL Management Studio and drop the index is causing the issue;


DROP INDEX [evt].evt_x0;


Or you can delete it manually:



User-added image

(2) Run the installer again;

(3) Go to SQL Management Studio and create the index again;


CREATE UNIQUE INDEX [evt_x0] ON [evt] (
[sym],
[tenant]
)

Additional Information

Important:

Make sure you have a backup of the MDB you are going to upgrade.