Hi Sumedha,

If you can consistently reproduce the issue in your pack, please do not
throw it away. Even if the issue goes away with a new build it might be due
to some side-effect such as start-up order or something that we lost track
of. Can you therefore, please enable the following two entries in your log
file and collect the actual transaction that's blocked, which is what
causes the exception you sent.

log4j.logger.org.wso2.carbon.registry.core.statistics=DEBUG
log4j.logger.org.wso2.carbon.registry.core.statistics.query=DEBUG

@all, please note that when you see a deadlock related exception, the one
that you see printed is not the actual cause of the problem - and there is
NO VALUE in debugging that or researching into improving anything related
to it. The victim is who is seen on the exception and the actual culprit
can only be identified by turning on the above mentioned DEBUG logs. Once
these are enabled, it will print all the transactions that take longer than
anticipated to complete revealing the exact call stacks etc.

Thanks,
Senaka.

On Mon, Dec 10, 2012 at 7:59 PM, Sumedha Rubasinghe <[email protected]>wrote:

> This is a on a locally build pack after getting a svn up last night.
> Previous local build on my machine did not have this problem. We have also
> triggered a build on builder. Let's check on that as well.
> The RXTs in concern are the ones related to APIs. Those have not been
> changed in recent past.
>
>
>
> On Mon, Dec 10, 2012 at 7:47 PM, Vijitha Kumara <[email protected]> wrote:
>
>>
>> Hi Sumedha,
>>
>> Is this in a latest pack? One of locally built (today) pack doesn't seem
>> to have this problem (both OOTB & custom RXTs). Could there be any other
>> issue before this led to locks not being released on those tables? Or can
>> you send the RXT causes this?
>>
>>
>>
>> Regards,
>> Vijitha.
>>
>> On Mon, Dec 10, 2012 at 2:53 PM, Sumedha Rubasinghe <[email protected]>wrote:
>>
>>> On C4.0.5 following repetitive error is happening every time an instance
>>> of RXT is saved.
>>>
>>>
>>>
>>>
>>>  [2012-12-10 14:47:39,538]  INFO - CarbonAuthenticationUtil
>>> '[email protected] [-1234]' logged in at [2012-12-10 14:47:39,537+0530]
>>> [2012-12-10 14:47:41,541] ERROR - JDBCResourceDAO Failed to check the
>>> existence of the resource
>>> /_system/governance/repository/components/org.wso2.carbon.governance/types.
>>> Timeout trying to lock table "REG_RESOURCE"; SQL statement:
>>> SELECT REG_VERSION FROM REG_RESOURCE WHERE REG_PATH_ID=? AND REG_NAME IS
>>> NULL AND REG_TENANT_ID=? [50200-140]
>>> org.h2.jdbc.JdbcSQLException: Timeout trying to lock table
>>> "REG_RESOURCE"; SQL statement:
>>> SELECT REG_VERSION FROM REG_RESOURCE WHERE REG_PATH_ID=? AND REG_NAME IS
>>> NULL AND REG_TENANT_ID=? [50200-140]
>>>     at
>>> org.h2.message.DbException.getJdbcSQLException(DbException.java:327)
>>>     at org.h2.message.DbException.get(DbException.java:167)
>>>     at org.h2.message.DbException.get(DbException.java:144)
>>>     at org.h2.table.RegularTable.doLock(RegularTable.java:466)
>>>     at org.h2.table.RegularTable.lock(RegularTable.java:404)
>>>     at org.h2.table.TableFilter.lock(TableFilter.java:139)
>>>     at org.h2.command.dml.Select.queryWithoutCache(Select.java:554)
>>>     at org.h2.command.dml.Query.query(Query.java:241)
>>>     at org.h2.command.CommandContainer.query(CommandContainer.java:80)
>>>     at org.h2.command.Command.executeQuery(Command.java:132)
>>>     at
>>> org.h2.jdbc.JdbcPreparedStatement.executeQuery(JdbcPreparedStatement.java:96)
>>>     at
>>> org.wso2.carbon.registry.core.jdbc.dao.JDBCResourceDAO.getVersion(JDBCResourceDAO.java:184)
>>>     at
>>> org.wso2.carbon.registry.core.jdbc.dao.JDBCResourceDAO.resourceExists(JDBCResourceDAO.java:147)
>>>     at
>>> org.wso2.carbon.registry.core.jdbc.dao.JDBCResourceDAO.resourceExists(JDBCResourceDAO.java:156)
>>>     at
>>> org.wso2.carbon.registry.core.jdbc.Repository.resourceExists(Repository.java:159)
>>>     at
>>> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.resourceExists(EmbeddedRegistry.java:644)
>>>     at
>>> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.resourceExists(CacheBackedRegistry.java:250)
>>>     at
>>> org.wso2.carbon.registry.core.session.UserRegistry.resourceExists(UserRegistry.java:630)
>>>     at
>>> org.wso2.carbon.governance.registry.extensions.utils.CommonUtil.addRxtConfigs(CommonUtil.java:169)
>>>     at
>>> org.wso2.carbon.governance.registry.extensions.listeners.RxtLoader.onLogin(RxtLoader.java:19)
>>>     at
>>> org.wso2.carbon.core.services.callback.LoginSubscriptionManagerServiceImpl.triggerEvent(LoginSubscriptionManagerServiceImpl.java:41)
>>>     at
>>> org.wso2.carbon.core.services.util.CarbonAuthenticationUtil.onSuccessAdminLogin(CarbonAuthenticationUtil.java:103)
>>>     at
>>> org.wso2.carbon.core.services.authentication.AuthenticationAdmin.login(AuthenticationAdmin.java:111)
>>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>     at
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>     at
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>>     at
>>> org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
>>>     at
>>> org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:117)
>>>     at
>>> org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
>>>     at
>>> org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:110)
>>>     at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
>>>     at
>>> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)
>>>     at
>>> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:146)
>>>     at
>>> org.wso2.carbon.core.transports.CarbonServlet.doPost(CarbonServlet.java:231)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
>>>     at
>>> org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
>>>     at
>>> org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
>>>     at
>>> org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:67)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
>>>     at
>>> org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>>     at
>>> org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:61)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>>     at
>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
>>>     at
>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
>>>     at
>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
>>>     at
>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
>>>     at
>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:172)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156)
>>>     at
>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52)
>>>     at
>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>>>     at
>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
>>>     at
>>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001)
>>>     at
>>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)
>>>     at
>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1653)
>>>     at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>>     at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>>     at java.lang.Thread.run(Thread.java:680)
>>> [2012-12-10 14:47:41,545] ERROR - RxtLoader Failed to add rxt files to
>>> registry
>>> org.wso2.carbon.registry.core.exceptions.RegistryException: Failed to
>>> add rxt to registry
>>>     at
>>> org.wso2.carbon.governance.registry.extensions.utils.CommonUtil.addRxtConfigs(CommonUtil.java:194)
>>>     at
>>> org.wso2.carbon.governance.registry.extensions.listeners.RxtLoader.onLogin(RxtLoader.java:19)
>>>     at
>>> org.wso2.carbon.core.services.callback.LoginSubscriptionManagerServiceImpl.triggerEvent(LoginSubscriptionManagerServiceImpl.java:41)
>>>     at
>>> org.wso2.carbon.core.services.util.CarbonAuthenticationUtil.onSuccessAdminLogin(CarbonAuthenticationUtil.java:103)
>>>     at
>>> org.wso2.carbon.core.services.authentication.AuthenticationAdmin.login(AuthenticationAdmin.java:111)
>>>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>     at
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>     at
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>>     at
>>> org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
>>>     at
>>> org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:117)
>>>     at
>>> org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
>>>     at
>>> org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:110)
>>>     at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
>>>     at
>>> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)
>>>     at
>>> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:146)
>>>     at
>>> org.wso2.carbon.core.transports.CarbonServlet.doPost(CarbonServlet.java:231)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
>>>
>>>
>>>
>>>
>>>
>>>    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
>>>     at
>>> org.eclipse.equinox.http.servlet.internal.ServletRegistration.handleRequest(ServletRegistration.java:90)
>>>     at
>>> org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:111)
>>>     at
>>> org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:67)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
>>>     at
>>> org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>>     at
>>> org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:61)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>>>     at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>>     at
>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
>>>     at
>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
>>>     at
>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
>>>     at
>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
>>>     at
>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:172)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156)
>>>     at
>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
>>>     at
>>> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52)
>>>     at
>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>>>     at
>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
>>>     at
>>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001)
>>>     at
>>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)
>>>     at
>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1653)
>>>     at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>>     at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>>     at java.lang.Thread.run(Thread.java:680)
>>> Caused by: org.wso2.carbon.registry.core.exceptions.RegistryException:
>>> Failed to check the existence of the resource
>>> /_system/governance/repository/components/org.wso2.carbon.governance/types.
>>> Timeout trying to lock table "REG_RESOURCE"; SQL statement:
>>> SELECT REG_VERSION FROM REG_RESOURCE WHERE REG_PATH_ID=? AND REG_NAME IS
>>> NULL AND REG_TENANT_ID=? [50200-140]
>>>     at
>>> org.wso2.carbon.registry.core.jdbc.dao.JDBCResourceDAO.getVersion(JDBCResourceDAO.java:206)
>>>     at
>>> org.wso2.carbon.registry.core.jdbc.dao.JDBCResourceDAO.resourceExists(JDBCResourceDAO.java:147)
>>>     at
>>> org.wso2.carbon.registry.core.jdbc.dao.JDBCResourceDAO.resourceExists(JDBCResourceDAO.java:156)
>>>     at
>>> org.wso2.carbon.registry.core.jdbc.Repository.resourceExists(Repository.java:159)
>>>     at
>>> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.resourceExists(EmbeddedRegistry.java:644)
>>>     at
>>> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.resourceExists(CacheBackedRegistry.java:250)
>>>     at
>>> org.wso2.carbon.registry.core.session.UserRegistry.resourceExists(UserRegistry.java:630)
>>>     at
>>> org.wso2.carbon.governance.registry.extensions.utils.CommonUtil.addRxtConfigs(CommonUtil.java:169)
>>>     ... 45 more
>>> Caused by: org.h2.jdbc.JdbcSQLException: Timeout trying to lock table
>>> "REG_RESOURCE"; SQL statement:
>>> SELECT REG_VERSION FROM REG_RESOURCE WHERE REG_PATH_ID=? AND REG_NAME IS
>>> NULL AND REG_TENANT_ID=? [50200-140]
>>>     at
>>> org.h2.message.DbException.getJdbcSQLException(DbException.java:327)
>>>     at org.h2.message.DbException.get(DbException.java:167)
>>>     at org.h2.message.DbException.get(DbException.java:144)
>>>     at org.h2.table.RegularTable.doLock(RegularTable.java:466)
>>>     at org.h2.table.RegularTable.lock(RegularTable.java:404)
>>>     at org.h2.table.TableFilter.lock(TableFilter.java:139)
>>>     at org.h2.command.dml.Select.queryWithoutCache(Select.java:554)
>>>     at org.h2.command.dml.Query.query(Query.java:241)
>>>     at org.h2.command.CommandContainer.query(CommandContainer.java:80)
>>>     at org.h2.command.Command.executeQuery(Command.java:132)
>>>     at
>>> org.h2.jdbc.JdbcPreparedStatement.executeQuery(JdbcPreparedStatement.java:96)
>>>     at
>>> org.wso2.carbon.registry.core.jdbc.dao.JDBCResourceDAO.getVersion(JDBCResourceDAO.java:184)
>>>     ... 52 more--
>>> /sumedha
>>> m: +94 773017743
>>> b :  bit.ly/sumedha
>>>
>>>
>>> _______________________________________________
>>> Dev mailing list
>>> [email protected]
>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>
>>>
>>
>>
>> --
>> Vijitha Kumara
>> Senior Software Engineer; WSO2, Inc.;  http://wso2.com/
>> email: [email protected]
>>
>> Lean . Enterprise . Middleware
>>
>>
>
>
> --
> /sumedha
> m: +94 773017743
> b :  bit.ly/sumedha
>
>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>


-- 
* <http://wso2con.com/>
*
*

Senaka Fernando*
Member - Integration Technologies Management Committee;
Technical Lead; WSO2 Inc.; http://wso2.com*
Member; Apache Software Foundation; http://apache.org

E-mail: senaka AT wso2.com
**P: +1 408 754 7388; ext: 51736*; *M: +94 77 322 1818
Linked-In: http://linkedin.com/in/senakafernando

*Lean . Enterprise . Middleware
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to