Uploaded image for project: 'RESTEasy'
  1. RESTEasy
  2. RESTEASY-3279

BrowserCacheFeature is not thread safe and often fails during HTTP 304 scenarios

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • 4.7.7.Final
    • Client
    • None
    • Hide

      Using 6 MaxConnPerRoute and 10 threads:

                ResteasyWebTarget mnt_rwt =
                    ((ResteasyWebTarget) mnt_wt).register(new BrowserCacheFeature());
      

      After about an hour of production load, some threads become unresponsive after the ConcurrentModificationException is thrown

      Show
      Using 6 MaxConnPerRoute and 10 threads: ResteasyWebTarget mnt_rwt = ((ResteasyWebTarget) mnt_wt).register(new BrowserCacheFeature()); After about an hour of production load, some threads become unresponsive after the ConcurrentModificationException is thrown

      javax.ws.rs.client.ResponseProcessingException: java.util.ConcurrentModificationException
              at org.jboss.resteasy.client.jaxrs.internal.ClientInvocation.filterResponse(ClientInvocation.java:807) ~[resteasy-client-4.7.7.Final.jar:4.7.7.Final]
              at org.jboss.resteasy.client.jaxrs.internal.ClientInvocation.invoke(ClientInvocation.java:495) ~[resteasy-client-4.7.7.Final.jar:4.7.7.Final]
              at org.jboss.resteasy.client.jaxrs.internal.proxy.ClientInvoker.invokeSync(ClientInvoker.java:152) ~[resteasy-client-4.7.7.Final.jar:4.7.7.Final]
              at org.jboss.resteasy.client.jaxrs.internal.proxy.ClientInvoker.invoke(ClientInvoker.java:115) ~[resteasy-client-4.7.7.Final.jar:4.7.7.Final]
              at org.jboss.resteasy.client.jaxrs.internal.proxy.ClientProxy.invoke(ClientProxy.java:76) ~[resteasy-client-4.7.7.Final.jar:4.7.7.Final]
              at com.sun.proxy.$Proxy30.getMaintenance(Unknown Source) ~[?:?]
              at com.wcomnet.impact.espresso.ah.tools.TestBrowserCache$QueryTask.run(TestBrowserCache.java:109) [ah_devtools-23.01.13.18.44.07.jar:?]
              at com.wcomnet.impact.framework.threads.NonBlockingThreadPool$WorkerThread.run(NonBlockingThreadPool.java:248) [impactcommon-22.11.11.21.05.55.jar:?]
      Caused by: java.util.ConcurrentModificationException
              at java.util.TreeMap$PrivateEntryIterator.nextEntry(TreeMap.java:1208) ~[?:?]
              at java.util.TreeMap$EntryIterator.next(TreeMap.java:1244) ~[?:?]
              at java.util.TreeMap$EntryIterator.next(TreeMap.java:1239) ~[?:?]
              at org.jboss.resteasy.client.jaxrs.cache.CacheInterceptor.useCacheEntry(CacheInterceptor.java:108) ~[resteasy-client-4.7.7.Final.jar:4.7.7.Final]
              at org.jboss.resteasy.client.jaxrs.cache.CacheInterceptor.updateOnNotModified(CacheInterceptor.java:177) ~[resteasy-client-4.7.7.Final.jar:4.7.7.Final]
              at org.jboss.resteasy.client.jaxrs.cache.CacheInterceptor.filter(CacheInterceptor.java:93) ~[resteasy-client-4.7.7.Final.jar:4.7.7.Final]
              at org.jboss.resteasy.client.jaxrs.internal.ClientInvocation.filterResponse(ClientInvocation.java:799) ~[resteasy-client-4.7.7.Final.jar:4.7.7.Final]
              ... 7 more
      

            Unassigned Unassigned
            david.everly David Everly (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: