[jboss-jira] [JBoss JIRA] Closed: (JBCACHE-784) "Random" TimeoutException occurs after CacheLoader get() returns

Manik Surtani (JIRA) jira-events at lists.jboss.org
Thu Apr 26 07:40:40 EDT 2007


     [ http://jira.jboss.com/jira/browse/JBCACHE-784?page=all ]

Manik Surtani closed JBCACHE-784.
---------------------------------

    Resolution: Rejected

I suspect this has more to do with the isolation level preventing the loader from accessing the node when someone else has a stronger exclusive lock.  

Lock acquisition timeouts could occur with any concurrent access to nodes, regardless of whether it is a cache loader, remote invocation or even client code.

> "Random" TimeoutException occurs after CacheLoader get() returns
> ----------------------------------------------------------------
>
>                 Key: JBCACHE-784
>                 URL: http://jira.jboss.com/jira/browse/JBCACHE-784
>             Project: JBoss Cache
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Cache loaders
>    Affects Versions: 1.4.0.GA
>         Environment: JBCache 1.4.0GA working in REPL_ASYNC mode on multiple Weblogic 8.1 instances (pessimistic locking), no eviction policy
>            Reporter: James Hickey
>         Assigned To: Manik Surtani
>
> We experience a strange issue which happens every so often whereby shortly after one of our replicated cache instances calls it's CacheLoader.get() to populate a particular FQN, a TimeoutException occurs - It is extremely difficult to reproduce but the scenario/stack trace follows:
> The below exception is thrown 15 secs (configured timeout) AFTER the cache loader's get() method successfully returns (can see this as we have debugging in the cache loader). Subsequent calls are instantaneously successful and do not result in  a further call to the cacheloader.
> It looks to me like it could possibly be some kind of tx/locking/thread contention issue, as it happens more often than not where we have approx 10-20 threads which have all resulted in a call to the cache loader in a short space of time.
> Any advice/opinion would be appreciated
> Thanks
> James
> org.jboss.cache.lock.TimeoutException: failure acquiring lock: fqn=/demandload/db/gps/ipb/security/sdm/840/SECNO/DB0028807589, calle
> r=GlobalTransaction:<10.152.103.22:28680>:363, lock=write owner=GlobalTransaction:<10.152.103.22:28680>:362 (org.jboss.cache.lock.Lo
> ckStrategyReadCommitted at 10e4fd3)
>         at org.jboss.cache.Node.acquire(Node.java:407)
>         at org.jboss.cache.interceptors.PessimisticLockInterceptor.lock(PessimisticLockInterceptor.java:231)
>         at org.jboss.cache.interceptors.PessimisticLockInterceptor.invoke(PessimisticLockInterceptor.java:166)
>         at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:68)
>         at org.jboss.cache.interceptors.CacheLoaderInterceptor.invoke(CacheLoaderInterceptor.java:197)
>         at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:68)
>         at org.jboss.cache.interceptors.UnlockInterceptor.invoke(UnlockInterceptor.java:32)
>         at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:68)
>         at org.jboss.cache.interceptors.ReplicationInterceptor.invoke(ReplicationInterceptor.java:34)
>         at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:68)
>         at org.jboss.cache.interceptors.CacheStoreInterceptor.invoke(CacheStoreInterceptor.java:135)
>         at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:68)
>         at org.jboss.cache.interceptors.TxInterceptor.handleNonTxMethod(TxInterceptor.java:345)
>         at org.jboss.cache.interceptors.TxInterceptor.invoke(TxInterceptor.java:156)
>         at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:68)
>         at org.jboss.cache.interceptors.CacheMgmtInterceptor.invoke(CacheMgmtInterceptor.java:138)
>         at org.jboss.cache.TreeCache.invokeMethod(TreeCache.java:5535)
>         at org.jboss.cache.TreeCache.get(TreeCache.java:3485)
>         at org.jboss.cache.TreeCache.get(TreeCache.java:3466)
>         at org.jboss.cache.TreeCache.get(TreeCache.java:3453)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list