Page tree
Skip to end of metadata
Go to start of metadata

Problem

Upgrade fails with "SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-725, SQLSTATE=42721".And each retry with "A configuration with the path "deploy_controller/lock/single_thread" does already exist."

Keywords

• DB2
• deploy_controller/lock/single_thread
• update/upgrade

Symptoms

In "DEPLOY SOFTWARECOMPONENTS" phase fails deployment with :
"com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-725, SQLSTATE=42721"
or
"Cannot perform 'unlock' operation in 'DB' for argument 'deploy_controller/lock/single_thread' and user 'Deploy'."

Where the database is* *

DB2.

The root cause is in the DB2 jdbc driver and it's fixed in its later versions

Solution

  • Check  SAP Note No. 1763924

Sample logs

#2.0_#2012 12 20 12:28:42:548#+0100#Error#com.sap.engine.services.dc.frame.impl#
com.sap.#BC-JAS-DPL#tc~bl~deploy_controller#C0000A11C98E001E0000000300960012#3339350000000001##com.sap.engine.services.dc.frame.impl#Guest#0##688D4B3C4A9811E2827F00000032F456#688d4b3c4a9811e2827f00000032f456#688d4b3c4a9811e2827f00000032f456#0#'Container Started' Event Handler Thread#Plain##
An error occurred while loading the deployment data.
[EXCEPTION]
com.sap.engine.services.dc.cm.deploy.DeploymentException: ASJ.dpl_dc.003283 An error occurred while loading the stored deployment data..
	at com.sap.engine.services.dc.frame.impl.AbstractServiceStateProcessorImpl.loadDeploymentData(AbstractServiceStateProcessorImpl.java:248)
	at com.sap.engine.services.dc.frame.impl.SafeServiceStateProcessorImpl.handleContainerStarted(SafeServiceStateProcessorImpl.java:341)
	at com.sap.engine.services.dc.frame.impl.SafeServiceStateProcessorImpl.containerStarted(SafeServiceStateProcessorImpl.java:289)
	at com.sap.engine.services.dc.frame.ServerContainerEventListener$1.run(ServerContainerEventListener.java:145)
	at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
	at java.security.AccessController.doPrivileged(Native Method)
	at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:185)
	at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:302)
Caused by: com.sap.engine.services.dc.cm.deploy.storage.DeplDataStorageException: [ERROR CODE DPL.DC.3244] Cannot load location [of active session ID].
	at com.sap.engine.services.dc.cm.deploy.storage.impl.DeploymentDataStorageManagerImpl.handleLoadError(DeploymentDataStorageManagerImpl.java:1318)
	at com.sap.engine.services.dc.cm.deploy.storage.impl.DeploymentDataStorageManagerImpl.loadActiveSessionID(DeploymentDataStorageManagerImpl.java:1288)
	at com.sap.engine.services.dc.cm.deploy.storage.impl.DeploymentDataStorageManagerImpl.loadActiveFullDeploymentData(DeploymentDataStorageManagerImpl.java:123)
	at com.sap.engine.services.dc.frame.impl.AbstractServiceStateProcessorImpl.loadDeploymentData(AbstractServiceStateProcessorImpl.java:245)
	... 7 more
Caused by: com.sap.engine.services.dc.cm.session_id.SessionIDException: [ERROR CODE DPL.DC.3244] Cannot load location [deploy_controller/session_id/active].
	at com.sap.engine.services.dc.cm.session_id.impl.SessionIDStorageManagerImpl.handleLoadError(SessionIDStorageManagerImpl.java:137)
	at com.sap.engine.services.dc.cm.session_id.impl.SessionIDStorageManagerImpl.loadActiveSessionID(SessionIDStorageManagerImpl.java:81)
	at com.sap.engine.services.dc.cm.deploy.storage.impl.DeploymentDataStorageManagerImpl.loadActiveSessionID(DeploymentDataStorageManagerImpl.java:1285)
	... 9 more
Caused by: com.sap.engine.frame.core.configuration.ConfigurationException: Error occurred during DB access: deploy_controller/session_id/active,
	at com.sap.engine.core.configuration.impl.persistence.rdbms.PersistenceHandlerImpl.readConfig(PersistenceHandlerImpl.java:208)
	at com.sap.engine.core.configuration.impl.cache.CachedConfiguration.readConfigData(CachedConfiguration.java:497)
	at com.sap.engine.core.configuration.impl.cache.CachedConfiguration.<init>(CachedConfiguration.java:87)
	at com.sap.engine.core.configuration.impl.cache.ConfigurationController.getCachedConfiguration(ConfigurationController.java:1291)
	at com.sap.engine.core.configuration.impl.cache.ConfigurationController.getCachedConfiguration(ConfigurationController.java:1354)
	at com.sap.engine.core.configuration.impl.cache.ConfigurationController.openConfiguration(ConfigurationController.java:834)
	at com.sap.engine.core.configuration.impl.ConfigurationHandlerImpl.openConfiguration(ConfigurationHandlerImpl.java:1049)
	at com.sap.engine.core.configuration.impl.ConfigurationHandlerImpl.openConfiguration(ConfigurationHandlerImpl.java:1000)
	at com.sap.engine.services.dc.cm.session_id.impl.SessionIDStorageManagerImpl.doLoad(SessionIDStorageManagerImpl.java:128)
	at com.sap.engine.services.dc.cm.session_id.impl.SessionIDStorageManagerImpl.loadActiveSessionID(SessionIDStorageManagerImpl.java:68)
	... 10 more
Caused by: com.sap.sql.exception.OpenSQLSyntaxErrorException: DB2 SQL Error: SQLCODE=-725, SQLSTATE=42721, SQLERRMC=CLIENT ACCTNG;DDFFT71, DRIVER=4.13.80
	OpenSQLExceptionCategories: []
	at com.sap.sql.exception.SQLExceptionFactory.createOpenSQLException(SQLExceptionFactory.java:129)
	at com.sap.sql.exception.SQLExceptionFactory.wrapChainedSQLException(SQLExceptionFactory.java:72)
	at com.sap.sql.jdbc.direct.DirectPooledConnection.processSQLExceptionJava6(DirectPooledConnection.java:1000)
	at com.sap.sql.jdbc.direct.DirectPooledConnection.processSQLException(DirectPooledConnection.java:926)
	at com.sap.sql.jdbc.direct.DirectConnection.processSQLException(DirectConnection.java:1544)
	at com.sap.sql.jdbc.direct.DirectPreparedStatement.executeQuery(DirectPreparedStatement.java:317)
	at com.sap.sql.jdbc.direct.DirectPreparedStatement.executeQuery(DirectPreparedStatement.java:270)
	at com.sap.engine.core.configuration.impl.persistence.rdbms.DBAccessDefault.getConfiguration(DBAccessDefault.java:898)
	at com.sap.engine.core.configuration.impl.persistence.rdbms.PersistenceHandlerImpl.readConfig(PersistenceHandlerImpl.java:196)
	... 19 more
Caused by: com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-725, SQLSTATE=42721, SQLERRMC=CLIENT ACCTNG;DDFFT71, DRIVER=4.13.80
	at com.ibm.db2.jcc.am.id.a(id.java:677)
	at com.ibm.db2.jcc.am.id.a(id.java:60)
	at com.ibm.db2.jcc.am.id.a(id.java:127)
	at com.ibm.db2.jcc.am.eg.c(eg.java:56)
	at com.ibm.db2.jcc.am.eg.a(eg.java:66)
	at com.ibm.db2.jcc.t4.cb.k(cb.java:300)
	at com.ibm.db2.jcc.t4.cb.g(cb.java:105)
	at com.ibm.db2.jcc.t4.q.f(q.java:87)
	at com.ibm.db2.jcc.t4.b.a(b.java:2820)
	at com.ibm.db2.jcc.am.ig.b(ig.java:70)
	at com.ibm.db2.jcc.am.lg.b(lg.java:196)
	at com.ibm.db2.jcc.am.n.j(n.java:602)
	at com.ibm.db2.jcc.am.n.g(n.java:348)
	at com.ibm.db2.jcc.t4.a.g(a.java:667)
	at com.ibm.db2.jcc.am.n.a(n.java:221)
	at com.ibm.db2.jcc.am.go.b(go.java:4302)
	at com.ibm.db2.jcc.am.go.fc(go.java:741)
	at com.ibm.db2.jcc.t4.l.fc(l.java:123)
	at com.ibm.db2.jcc.am.go.executeQuery(go.java:711)
	at com.sap.sql.jdbc.basic.BasicPreparedStatement.executeQuery(BasicPreparedStatement.java:102)
	at com.sap.sql.jdbc.db2.Db2PreparedStatement.executeQuery(Db2PreparedStatement.java:51)
	at com.sap.sql.jdbc.direct.DirectPreparedStatement.executeQuery(DirectPreparedStatement.java:313)
	... 22 more

#
#2.0_#2012 12 21 04:20:30:474#+0100#Error#com.sap.engine.services.dc.cm.deploy.impl#
com.sap.#BC-JAS-DPL#tc~bl~deploy_controller#C0000A11C98E002900008F9400960012#3339350000000003##com.sap.engine.services.dc.cm.deploy.impl#Administrator#3##84BD39B5B15C12D1B485BF29DB32F5C5#84bd39b5b15c12d1b485bf29db32f5c5#84bd39b5b15c12d1b485bf29db32f5c5#0#Thread[RMI/IIOP Worker [2],5,Dedicated_Application_Thread]#Plain##
This deployment won't be started, because service [tc~bl~deploy_controller] cannot lock the database.
Hint: 1). Retry, when there is no system activity.
[EXCEPTION]
com.sap.engine.services.dc.cm.deploy.DeploymentException: This deployment won't be started, because service [tc~bl~deploy_controller] cannot lock the database.
Hint: 1). Retry, when there is no system activity.
	at com.sap.engine.services.dc.cm.deploy.impl.OfflineDeployPostProcessor.lockDBForDeploy(OfflineDeployPostProcessor.java:229)
	at com.sap.engine.services.dc.cm.deploy.impl.OfflineDeployPostProcessor.postProcess(OfflineDeployPostProcessor.java:82)
	at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.doPostProcessing(DeployerImpl.java:1135)
	at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.performDeploy(DeployerImpl.java:1024)
	at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.doDeploy(DeployerImpl.java:819)
	at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.deployInternal(DeployerImpl.java:454)
	at com.sap.engine.services.dc.cm.deploy.impl.DeployerImpl.deploy(DeployerImpl.java:228)
	at com.sap.engine.services.dc.cm.deploy.impl.DeployerImplp4_Skel.dispatch(DeployerImplp4_Skel.java:910)
	at com.sap.engine.services.rmi_p4.DispatchImpl._runInternal(DispatchImpl.java:462)
	at com.sap.engine.services.rmi_p4.server.ServerDispatchImpl.run(ServerDispatchImpl.java:69)
	at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:72)
	at com.sap.engine.services.rmi_p4.P4Message.execute(P4Message.java:43)
	at com.sap.engine.services.cross.fca.FCAConnectorImpl.executeRequest(FCAConnectorImpl.java:999)
	at com.sap.engine.services.rmi_p4.P4Message.process(P4Message.java:59)
	at com.sap.engine.services.cross.fca.MessageReader.run(MessageReader.java:55)
	at com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
	at com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
	at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)
Caused by: com.sap.engine.services.dc.cm.lock.DCAlreadyLockedException: Cannot perform 'lock' operation in 'DB' for argument 'deploy_controller/lock/single_thread' and user 'Deploy', because the argument 'deploy_controller/lock/single_thread' and user 'Deploy' is already locked.
	at com.sap.engine.services.dc.cm.lock.impl.DCLockManagerImpl.handleDCAlreadyLockedException(DCLockManagerImpl.java:324)
	at com.sap.engine.services.dc.cm.lock.impl.DCLockManagerImpl.lockDB(DCLockManagerImpl.java:138)
	at com.sap.engine.services.dc.cm.deploy.impl.OfflineDeployPostProcessor.lockDBForDeploy(OfflineDeployPostProcessor.java:227)
	... 17 more
Caused by: com.sap.engine.frame.core.configuration.NameAlreadyExistsException: A configuration with the path "deploy_controller/lock/single_thread" does already exist.
	at com.sap.engine.core.configuration.impl.cache.ConfigurationController.createSubConfiguration(ConfigurationController.java:772)
	at com.sap.engine.core.configuration.impl.ConfigurationHandlerImpl.createSubConfiguration(ConfigurationHandlerImpl.java:1545)
	at com.sap.engine.core.configuration.impl.ConfigurationHandlerImpl.createSubConfiguration(ConfigurationHandlerImpl.java:980)
	at com.sap.engine.services.dc.cm.lock.impl.DCLockManagerImpl.lockDBSingleThread(DCLockManagerImpl.java:306)
	at com.sap.engine.services.dc.cm.lock.impl.DCLockManagerImpl.lockDB(DCLockManagerImpl.java:125)
	... 18 more