2 Replies Latest reply on Apr 7, 2012 10:20 AM by Carlene Adams

    Distributed session cache locking problem

    Dan D Newbie

      I have a cluster of jboss servers running behind a vip. The session cache uses infinispan and is configured below:

       

      {code}

                  <cache-container name="web" aliases="standard-session-cache" default-cache="sso">

                      <transport lock-timeout="60000"/>

                      <replicated-cache name="sso" mode="SYNC" batching="true">

                          <file-store/>

                      </replicated-cache>

                  </cache-container>

      {code}

       

       

      I am seeing the following error show up sporadically. It does not happen every request but when it happens the request fails.

       

       

      {code}

      2012-04-04 19:57:26,627 ERROR [http--0.0.0.0-4080-1] [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host]] {} {} Exception sending request initialized lifecycle event to listener instance of class org.jboss.weld.servlet.WeldListener: java.lang.RuntimeException: JBAS018060: Exception acquiring ownership of kkTs5N-UGggp3VngthDv4X+L

                at org.jboss.as.web.session.ClusteredSession.acquireSessionOwnership(ClusteredSession.java:528)

                at org.jboss.as.web.session.ClusteredSession.access(ClusteredSession.java:496)

                at org.apache.catalina.connector.Request.doGetSession(Request.java:2625)

                at org.apache.catalina.connector.Request.getSession(Request.java:2375)

                at org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:841)

                at org.jboss.weld.context.beanstore.http.LazySessionBeanStore.getSession(LazySessionBeanStore.java:72)

                at org.jboss.weld.context.beanstore.http.LazySessionBeanStore.<init>(LazySessionBeanStore.java:58)

                at org.jboss.weld.context.http.HttpSessionContextImpl.associate(HttpSessionContextImpl.java:31)

                at org.jboss.weld.context.http.HttpSessionContextImpl.associate(HttpSessionContextImpl.java:16)

                at org.jboss.weld.servlet.WeldListener.requestInitialized(WeldListener.java:134)

                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)

                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)

                at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877)

                at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671)

                at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)

                at java.lang.Thread.run(Thread.java:722)

      Caused by: org.jboss.as.clustering.lock.TimeoutException: JBAS010223: Cannot acquire lock //default-host//project/kkTs5N-UGggp3VngthDv4X+L from cluster

                at org.jboss.as.clustering.lock.SharedLocalYieldingClusterLockManager.lock(SharedLocalYieldingClusterLockManager.java:439)

                at org.jboss.as.clustering.web.infinispan.DistributedCacheManager.acquireSessionOwnership(DistributedCacheManager.java:372)

                at org.jboss.as.web.session.ClusteredSession.acquireSessionOwnership(ClusteredSession.java:520)

                ... 17 more

      {code}

       

      Is this a known issue? I've seen some similar JIRA's open but no solutions.