https://issues.apache.org/bugzilla/show_bug.cgi?id=50078
Summary: Concurrent access to WeakHashMap in ConcurrentCache causes infinite loop, 100% CPU usage Product: Tomcat 6 Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: Catalina AssignedTo: dev@tomcat.apache.org ReportedBy: takayo...@gmail.com Created an attachment (id=26163) --> (https://issues.apache.org/bugzilla/attachment.cgi?id=26163) Proposed patch for tc6 trunk There is a WeakHashMap instance that is accessed concurrently and sometimes causes infinite loop. It's extremely hard to reproduce but you can refer to similar concurrent access looping problem by the following search keywords: * weakhashmap infinite loop 100% cpu stuck synchronized concurrent * java.util.WeakHashMap.put(WeakHashMap.java:405) * java.util.WeakHashMap.get(WeakHashMap.java:355) The org.apache.el.util.ConcurrentCache and javax.el.BeanELResolver.ConcurrentCache classes have this problem. There are 20 threads get stuck at the following thread stack: "ajp-146.215.106.42-8009-38" daemon prio=10 tid=0x00002aab6425d800 nid=0x135b runnable [0x0000000048c14000] java.lang.Thread.State: RUNNABLE at java.util.WeakHashMap.get(WeakHashMap.java:355) at org.apache.el.util.ConcurrentCache.get(ConcurrentCache.java:24) at org.apache.el.lang.ExpressionBuilder.createNodeInternal(ExpressionBuilder.java:90) "ajp-146.215.106.42-8009-18" daemon prio=10 tid=0x00002aab643ea000 nid=0x538d runnable [0x00000000458fd000] java.lang.Thread.State: RUNNABLE at java.util.WeakHashMap.put(WeakHashMap.java:405) at java.util.WeakHashMap.putAll(WeakHashMap.java:518) at org.apache.el.util.ConcurrentCache.put(ConcurrentCache.java:34) -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org