1 2 Previous Next 17 Replies Latest reply on Sep 2, 2005 3:12 AM by belaban Go to original post
      • 15. Re: Problems with eviction
        belaban

        Good. I think exceptions in beforeCompletion() should be caught according to spec, and lead to a rollback, but I'm not 100% sure. Read the JTA spec to be sure.

        • 16. Re: Problems with eviction
          skipy

          Bela, thank you for your help again!

          After some changes in JOTM sources write locks are released even if exception occures during commit. So, THIS problem is solved, I hope.

          But. We remove consequence of exception. But we didn't remove CAUSE - exception during replication. The point is that we have it not only when we manage transactions manually. We have the same cause in absolutely harmless situation - when just putting data in the cache using TreeCache.put(String, Object, Object), e.g.:

          2005-09-01 17:29:50,448 tcpConnection-6802-8 ERROR [work.servlet.ControllerServlet] (t:4524941) Error starting up!
          vc.xsys.framework.HostingRuntimeException: org.jboss.cache.lock.TimeoutException: rsp=sender=10.0.20.91:35068, retval=null, r
          eceived=false, suspected=false
           at vc.xsys.framework.servlet.CssCache.updateMap(CssCache.java:143)
           at vc.xsys.framework.servlet.CssCache.loadCache(CssCache.java:76)
           at vc.xsys.framework.servlet.CssCache.<init>(CssCache.java:53)
           at vc.xsys.framework.servlet.CssCacheFactory.init(CssCacheFactory.java:51)
           at vc.xsys.SystemInitializer$1.run(SystemInitializer.java:417)
           at vc.xsys.framework.VCPersistenceManager.runWithPm(VCPersistenceManager.java:144)
           at vc.xsys.SystemInitializer.initRuntime(SystemInitializer.java:399)
           at vc.xsys.SystemInitializer.init(SystemInitializer.java:293)
           at vc.xsys.framework.servlet.ControllerServlet.init(ControllerServlet.java:138)
           at com.caucho.server.http.Application.createServlet(Application.java:3114)
           at com.caucho.server.http.Application.loadServlet(Application.java:3065)
           at com.caucho.server.http.Application.initServlets(Application.java:1923)
           at com.caucho.server.http.Application.init(Application.java:1849)
           at com.caucho.server.http.VirtualHost.init(VirtualHost.java:728)
           at com.caucho.server.http.ServletServer.initHosts(ServletServer.java:887)
           at com.caucho.server.http.ServletServer.initInternal(ServletServer.java:729)
           at com.caucho.server.http.ServletServer.init(ServletServer.java:538)
           at com.caucho.server.http.ResinServer.init(ResinServer.java:415)
           at com.caucho.server.http.ResinServer.main(ResinServer.java:1176)
           at com.caucho.server.http.HttpServer.main(HttpServer.java:103)
          Caused by: org.jboss.cache.lock.TimeoutException: rsp=sender=10.0.20.91:35068, retval=null, received=false, suspected=false
           at org.jboss.cache.TreeCache.callRemoteMethods(TreeCache.java:2205)
           at org.jboss.cache.TreeCache.callRemoteMethods(TreeCache.java:2227)
           at org.jboss.cache.interceptors.ReplicationInterceptor.handleReplicatedMethod(ReplicationInterceptor.java:120)
           at org.jboss.cache.interceptors.ReplicationInterceptor.invoke(ReplicationInterceptor.java:85)
           at org.jboss.cache.TreeCache.invokeMethod(TreeCache.java:3116)
           at org.jboss.cache.TreeCache.put(TreeCache.java:1762)
           at org.jboss.cache.TreeCache.put(TreeCache.java:1702)
           at vc.xsys.framework.servlet.CssCache.updateMap(CssCache.java:140)
           ... 19 more
          


          So, I have some questions about possible reasons.

          1. Can this be caused by timeouts set in the configuration?
          2. Can this be caused by the nature of data we a putting in the cache? Key is a serializable object, value - String.

          Regards,
          Eugene aka Skipy

          • 17. Re: Problems with eviction
            belaban

            Well, you can still run into deadlocks, depending on how you acquire the locks. In your case, you run into an RPC timeout, I suggest increase the RPC response wait time, must be higher than the lock acquisition timeout:

            20000
            15000

            This way, the Group RPC *will* terminate, possibly with an exception for a member

            1 2 Previous Next