UIM 23.4 CU4 upgrade fails with Failed to delete the operating period
search cancel

UIM 23.4 CU4 upgrade fails with Failed to delete the operating period

book

Article ID: 397229

calendar_today

Updated On:

Products

DX Unified Infrastructure Management (Nimsoft / UIM) CA Unified Infrastructure Management On-Premise (Nimsoft / UIM) CA Unified Infrastructure Management SaaS (Nimsoft / UIM)

Issue/Introduction

We're attempting to upgrade our environment from verion 23.4 CU2 to CU4 and encountering an error that looks to be related to operating periods.  Log snippet from the uimserver_ia_install.log file:

'Failed to delete the operating period'

and

COMMIT TRAN
2025-05-07 10:11:30.321 [Thread-39]  ERROR com.nimsoft.install.uimserver.action.impl.UIMServerDBSchemaController:run:181 impl.UIMServerDBSchemaController - NimException caught
com.nimsoft.nimdbprovider.base.exception.NimDBProviderBaseException: com.microsoft.sqlserver.jdbc.SQLServerException: There is already an object named 'P_DELETE_PERIOD' in the database.
    at com.nimsoft.nimdbprovider.base.util.NimDBScriptRunner.runDBScript(NimDBScriptRunner.java:78) ~[Execute.zip:?]
    at com.nimsoft.nimdbprovider.base.provider.NimDBProviderBase.runDBScript(NimDBProviderBase.java:260) ~[Execute.zip:?]
    at com.nimsoft.nimdbprovider.base.provider.NimDBProviderBase.runDBScriptFile(NimDBProviderBase.java:193) ~[Execute.zip:?]
    at com.nimsoft.install.uimserver.action.impl.UIMServerDBSchemaController.runScriptCommon(UIMServerDBSchemaController.java:464) ~[Execute.zip:?]
    at com.nimsoft.install.uimserver.action.impl.UIMServerDBSchemaController.configureSlmCreate(UIMServerDBSchemaController.java:317) ~[Execute.zip:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_332]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_332]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_332]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_332]
    at com.nimsoft.install.nimcommon.method.NimMethodCallback.invokeMethod(NimMethodCallback.java:537) ~[Execute.zip:?]
    at com.nimsoft.install.nimcommon.method.NimMethodCallback.invokeMethod(NimMethodCallback.java:521) ~[Execute.zip:?]
    at com.nimsoft.install.uimserver.action.impl.UIMServerDBSchemaController.doConfigure_dbScript(UIMServerDBSchemaController.java:281) ~[Execute.zip:?]
    at com.nimsoft.install.uimserver.action.impl.UIMServerDBSchemaController.doConfigure(UIMServerDBSchemaController.java:192) ~[Execute.zip:?]
    at com.nimsoft.install.uimserver.action.impl.UIMServerDBSchemaController.run(UIMServerDBSchemaController.java:179) [Execute.zip:?]
    at java.lang.Thread.run(Thread.java:750) [?:1.8.0_332]
Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: There is already an object named 'P_DELETE_PERIOD' in the database.
    at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:258) ~[Execute.zip:?]
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1535) ~[Execute.zip:?]
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.doExecuteStatement(SQLServerStatement.java:845) ~[Execute.zip:?]
    at com.microsoft.sqlserver.jdbc.SQLServerStatement$StmtExecCmd.doExecute(SQLServerStatement.java:752) ~[Execute.zip:?]
    at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7151) ~[Execute.zip:?]
    at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:2478) ~[Execute.zip:?]
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:219) ~[Execute.zip:?]
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:199) ~[Execute.zip:?]
    at com.microsoft.sqlserver.jdbc.SQLServerStatement.execute(SQLServerStatement.java:729) ~[Execute.zip:?]
    at com.nimsoft.nimdbprovider.base.util.NimDBScriptRunner.executeSQLCommand(NimDBScriptRunner.java:105) ~[Execute.zip:?]
    at com.nimsoft.nimdbprovider.base.util.NimDBScriptRunner.runDBScript(NimDBScriptRunner.java:60) ~[Execute.zip:?]
    ... 14 more

Environment

  • Staging Environment
  • DX UI 23.4 CU4
  • Microsoft SQL Server

Cause

  • database user permissions for Windows/AD user
  • Required db_owner setting needs to be selected in the “Owned Schemas” for the CA_UIM DB, but it had db_owner checked in "Membership" only.

Resolution

If you are not using the System Administrator (sa) login, and need to configure access using an Active Directory/Service account user for instance, and require SQL Authentication on Microsoft SQL Server, your user account must have the following permissions:

  • The db_owner database role for the specific DX Unified Infrastructure Management(UIM) database, e.g., CA_UIM.

  • Read and update permissions on the master and tmpdb system databases.

  • The serveradmin database role to create and execute stored procedures properly.

In any case, Yes, Security->Users-Rt-click on the <username> to open Properties->'Owned Schemas' not Membership.

Further details can be found here:

Requirements for Windows Authentication