MDBAdmin database account is getting locked out after applying Cumulative #3 patch for 14.1

Document ID : KB000004971
Last Modified Date : 14/02/2018
Show Technical Document Details
Issue:

After installing Cumulative #3 patch for 14.1, it may be possible for the MDBAdmin database account to become locked out. If this occurs Service Desk Manager services will not be able to start successfully.

Environment:
CA SDM 14.1 CUM#3
Cause:

This problem may be caused when Cumulative #3 patch is applied, but the option to install a "CA Search Server" is not selected.

Even when the option is not selected during the process of applying the cumulative patch, it is possible that the Service Desk Manager server will still attempt to start the 'pdm_es_search_nxd' daemon during startup. This daemon's purpose is to communicate with the CA Search Server - if a CA Search Server is not present the daemon may run into issues.

To determine if you are experiencing this behavior browse into the "log" directory of the Service Desk Manager primary server (NX_ROOT\LOG) and locate the "esEvents.log" log file.

Within the log you may see an error similar to the follow (the example below is from an Oracle database):

[main] ERROR DBConnectionPool 224 Unable to obtain Database Connection 

java.sql.SQLException: ORA-01017: invalid username/password; logon denied

at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:450)

at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:392)

at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:385)

at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:1018)

at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:501)

at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:522)

at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:257)

at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:437)

at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:954)

at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:639)

at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:666)

at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)

at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:566)

at oracle.jdbc.pool.OracleDataSource.getPhysicalConnection(OracleDataSource.java:317)

at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:241)

at oracle.jdbc.pool.OracleConnectionPoolDataSource.getPhysicalConnection(OracleConnectionPoolDataSource.java:164)

at oracle.jdbc.pool.OracleConnectionPoolDataSource.getPooledConnection(OracleConnectionPoolDataSource.java:102)

at oracle.jdbc.pool.OracleConnectionPoolDataSource.getPooledConnection(OracleConnectionPoolDataSource.java:79)

at com.ca.casm.sdm.event.db.DBConnectionPool.getConnection(DBConnectionPool.java:220)

at com.ca.casm.sdm.event.majicproc.ESMajicObjectProcessor.<init>(ESMajicObjectProcessor.java:78)

at com.ca.casm.sdm.event.ESMajicListener.<init>(ESMajicListener.java:118)

at com.ca.casm.sdm.event.ESMajicListener.main(ESMajicListener.java:319)

This error will repeat until the database "MDAdmin" account is finally locked out. Once locked out, Service Desk Manager will be unable to connect to the MDB database.

Resolution:

1. Assure that Service Desk services are stopped 
2. Re-enable/unlock the MDBAdmin database user if it is indeed locked out 
3. On the Service Desk Manager server go to the following directory

NX_ROOT/pdmconf

In this directory will be the files pdm_startup and pdm_startup.tpl. Within both files, there is a section that has the following reference: 

; ----------------------------------------------------------------------------- 
[ procset PDMBOP ] 
; ----------------------------------------------------------------------------- 
.. 
.. 
pdm_es_search_nxd 

3. Put a ; in front of the daemon's reference which will disable the daemon. The final result should look like: 

;pdm_es_search_nxd 

4. Restart Service Desk service