Re: High memory consumption caused by BLOCKED Threads
Thanks to all of you! I'm profiling the application now. Happy New Year Violeta 2011/12/23 Christopher Schultz ch...@christopherschultz.net -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Rainer, On 12/22/11 2:00 PM, Rainer Jung wrote: Hmmm, actually I had a short look at the code of sun.util.resources.TimeZoneNames.getContents(TimeZoneNames.java:185) and i don't unerstand why it is waiting for a monitor entry. The method should quickly return an array of objects which is explicitely defined in the class and that's it. No idea what's happening here. @Violeta: is anything wrong with your system, e.g. did you get an OutOfMemoryError somewhere? It looks your JVM is in a strange state. Are you doing frequent redeployments without stopping Tomcat? +1 Looks like something horrible has happened in the JVM. - -chris -BEGIN PGP SIGNATURE- Version: GnuPG/MacGPG2 v2.0.17 (Darwin) Comment: GPGTools - http://gpgtools.org Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk7zskQACgkQ9CaO5/Lv0PDv2gCfUtQObYXhqNKH8LxEMT3rBuU5 O0wAoKoCNwYv6a50LMTmv6y+cGRu+fAc =M07c -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: High memory consumption caused by BLOCKED Threads
Violeta: We had issues once with date objects (same behavior you describe), and was caused because one of the objects is working as serialized. If your app has a lot of requests, then all of them will have to wait serialization, generating a lot of memory and resources consumption. May be this is not your case, but I recommend you to double check that, may be you can save a lot of profiling time. Best, Antonio Vidal Ferrer Responsable Departamento Middleware Globalia Sistemas y Comunicaciones SLU T. 971.178.464 M. 647.995.481 mailto:antonio.vi...@globalia-sistemas.com On 12/22/2011 10:05 AM, Violeta Georgieva wrote: Hi, I am using Tomcat 6.0.29 and SUN JVM. I experience high memory consumption caused by BLOCKED Threads. I would appreciate any help or suggestion how to solve the problem. I can see the following in the thread dump: http-8080-73 daemon prio=10 tid=0x7ff9a4586000 nid=0x7d3 waiting for monitor entry [0x7ff9996d4000] java.lang.Thread.State: BLOCKED (on object monitor) at sun.util.resources.TimeZoneNames.getContents(TimeZoneNames.java:185) at sun.util.resources.OpenListResourceBundle.loadLookup(OpenListResourceBundle.java:109) - locked0x0006f95a49b8 (a sun.util.resources.TimeZoneNames) at sun.util.resources.OpenListResourceBundle.loadLookupTablesIfNecessary(OpenListResourceBundle.java:97) at sun.util.resources.OpenListResourceBundle.handleGetObject(OpenListResourceBundle.java:58) at sun.util.resources.TimeZoneNamesBundle.handleGetObject(TimeZoneNamesBundle.java:59) at java.util.ResourceBundle.getObject(ResourceBundle.java:368) at java.util.ResourceBundle.getObject(ResourceBundle.java:371) at java.util.ResourceBundle.getStringArray(ResourceBundle.java:351) at sun.util.TimeZoneNameUtility.retrieveDisplayNames(TimeZoneNameUtility.java:100) at sun.util.TimeZoneNameUtility.retrieveDisplayNames(TimeZoneNameUtility.java:81) at java.util.TimeZone.getDisplayNames(TimeZone.java:399) at java.util.TimeZone.getDisplayName(TimeZone.java:350) at java.text.SimpleDateFormat.subFormat(SimpleDateFormat.java:1110) at java.text.SimpleDateFormat.format(SimpleDateFormat.java:899) at java.text.SimpleDateFormat.format(SimpleDateFormat.java:869) at java.text.DateFormat.format(DateFormat.java:316) at org.apache.tomcat.util.http.FastHttpDateFormat.getCurrentDate(FastHttpDateFormat.java:115) - locked0x0006fbd04ee8 (a java.text.SimpleDateFormat) at org.apache.coyote.http11.Http11Processor.prepareResponse(Http11Processor.java:1606) at org.apache.coyote.http11.Http11Processor.action(Http11Processor.java:956) at org.apache.coyote.Response.action(Response.java:183) at org.apache.coyote.Response.sendHeaders(Response.java:379) at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:305) at org.apache.catalina.connector.OutputBuffer.close(OutputBuffer.java:273) at org.apache.catalina.connector.Response.finishResponse(Response.java:493) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:322) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:662) Line 2485 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2536 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2625 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2660 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2703 : - locked0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2741 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2758 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2775 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2792 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2848 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2865 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2891 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2908 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2925
High memory consumption caused by BLOCKED Threads
Hi, I am using Tomcat 6.0.29 and SUN JVM. I experience high memory consumption caused by BLOCKED Threads. I would appreciate any help or suggestion how to solve the problem. I can see the following in the thread dump: http-8080-73 daemon prio=10 tid=0x7ff9a4586000 nid=0x7d3 waiting for monitor entry [0x7ff9996d4000] java.lang.Thread.State: BLOCKED (on object monitor) at sun.util.resources.TimeZoneNames.getContents(TimeZoneNames.java:185) at sun.util.resources.OpenListResourceBundle.loadLookup(OpenListResourceBundle.java:109) - locked 0x0006f95a49b8 (a sun.util.resources.TimeZoneNames) at sun.util.resources.OpenListResourceBundle.loadLookupTablesIfNecessary(OpenListResourceBundle.java:97) at sun.util.resources.OpenListResourceBundle.handleGetObject(OpenListResourceBundle.java:58) at sun.util.resources.TimeZoneNamesBundle.handleGetObject(TimeZoneNamesBundle.java:59) at java.util.ResourceBundle.getObject(ResourceBundle.java:368) at java.util.ResourceBundle.getObject(ResourceBundle.java:371) at java.util.ResourceBundle.getStringArray(ResourceBundle.java:351) at sun.util.TimeZoneNameUtility.retrieveDisplayNames(TimeZoneNameUtility.java:100) at sun.util.TimeZoneNameUtility.retrieveDisplayNames(TimeZoneNameUtility.java:81) at java.util.TimeZone.getDisplayNames(TimeZone.java:399) at java.util.TimeZone.getDisplayName(TimeZone.java:350) at java.text.SimpleDateFormat.subFormat(SimpleDateFormat.java:1110) at java.text.SimpleDateFormat.format(SimpleDateFormat.java:899) at java.text.SimpleDateFormat.format(SimpleDateFormat.java:869) at java.text.DateFormat.format(DateFormat.java:316) at org.apache.tomcat.util.http.FastHttpDateFormat.getCurrentDate(FastHttpDateFormat.java:115) - locked 0x0006fbd04ee8 (a java.text.SimpleDateFormat) at org.apache.coyote.http11.Http11Processor.prepareResponse(Http11Processor.java:1606) at org.apache.coyote.http11.Http11Processor.action(Http11Processor.java:956) at org.apache.coyote.Response.action(Response.java:183) at org.apache.coyote.Response.sendHeaders(Response.java:379) at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:305) at org.apache.catalina.connector.OutputBuffer.close(OutputBuffer.java:273) at org.apache.catalina.connector.Response.finishResponse(Response.java:493) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:322) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:662) Line 2485 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2536 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2625 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2660 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2703 : - locked 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2741 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2758 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2775 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2792 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2848 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2865 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2891 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2908 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2925 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2942 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2959 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2976 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2993 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 3010 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 3027 : - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 3044 : - waiting to lock
Re: High memory consumption caused by BLOCKED Threads
On 22/12/2011 09:05, Violeta Georgieva wrote: Hi, I am using Tomcat 6.0.29 and SUN JVM. I experience high memory consumption caused by BLOCKED Threads. Blocked threads will not cause high memory consumption. I would appreciate any help or suggestion how to solve the problem. Try telling us what the real problem is rather than what you think the cause is. Mark - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: High memory consumption caused by BLOCKED Threads
The blocked threads that are waiting to get the lock, in order to finish the response, are holding a lot of memory that they cannot release. I have 50 blocked threads that are waiting. 2011/12/22 Mark Thomas ma...@apache.org On 22/12/2011 09:05, Violeta Georgieva wrote: Hi, I am using Tomcat 6.0.29 and SUN JVM. I experience high memory consumption caused by BLOCKED Threads. Blocked threads will not cause high memory consumption. I would appreciate any help or suggestion how to solve the problem. Try telling us what the real problem is rather than what you think the cause is. Mark - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: High memory consumption caused by BLOCKED Threads
On 12/22/2011 4:05 AM, Violeta Georgieva wrote: Hi, I am using Tomcat 6.0.29 and SUN JVM. I experience high memory consumption caused by BLOCKED Threads. I would appreciate any help or suggestion how to solve the problem. Fix your app so that it releases the locks (probably synchronized sections) on the SimpleDateFormat objects. I can see the following in the thread dump: http-8080-73 daemon prio=10 tid=0x7ff9a4586000 nid=0x7d3 waiting for monitor entry [0x7ff9996d4000] java.lang.Thread.State: BLOCKED (on object monitor) at sun.util.resources.TimeZoneNames.getContents(TimeZoneNames.java:185) at sun.util.resources.OpenListResourceBundle.loadLookup(OpenListResourceBundle.java:109) - locked0x0006f95a49b8 (a sun.util.resources.TimeZoneNames) at sun.util.resources.OpenListResourceBundle.loadLookupTablesIfNecessary(OpenListResourceBundle.java:97) at sun.util.resources.OpenListResourceBundle.handleGetObject(OpenListResourceBundle.java:58) at sun.util.resources.TimeZoneNamesBundle.handleGetObject(TimeZoneNamesBundle.java:59) at java.util.ResourceBundle.getObject(ResourceBundle.java:368) at java.util.ResourceBundle.getObject(ResourceBundle.java:371) at java.util.ResourceBundle.getStringArray(ResourceBundle.java:351) at sun.util.TimeZoneNameUtility.retrieveDisplayNames(TimeZoneNameUtility.java:100) at sun.util.TimeZoneNameUtility.retrieveDisplayNames(TimeZoneNameUtility.java:81) at java.util.TimeZone.getDisplayNames(TimeZone.java:399) at java.util.TimeZone.getDisplayName(TimeZone.java:350) at java.text.SimpleDateFormat.subFormat(SimpleDateFormat.java:1110) at java.text.SimpleDateFormat.format(SimpleDateFormat.java:899) at java.text.SimpleDateFormat.format(SimpleDateFormat.java:869) at java.text.DateFormat.format(DateFormat.java:316) at org.apache.tomcat.util.http.FastHttpDateFormat.getCurrentDate(FastHttpDateFormat.java:115) - locked0x0006fbd04ee8 (a java.text.SimpleDateFormat) at org.apache.coyote.http11.Http11Processor.prepareResponse(Http11Processor.java:1606) at org.apache.coyote.http11.Http11Processor.action(Http11Processor.java:956) at org.apache.coyote.Response.action(Response.java:183) at org.apache.coyote.Response.sendHeaders(Response.java:379) at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:305) at org.apache.catalina.connector.OutputBuffer.close(OutputBuffer.java:273) at org.apache.catalina.connector.Response.finishResponse(Response.java:493) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:322) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:662) Line 2485 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2536 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2625 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2660 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2703 : - locked0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2741 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2758 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2775 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2792 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2848 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2865 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2891 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2908 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2925 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2942 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2959 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2976 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 2993 : - waiting to lock0x0006fbd04ee8 (a java.text.SimpleDateFormat) Line 3010 : - waiting
Re: High memory consumption caused by BLOCKED Threads
But I do not make locks on the SimpleDateFormat objects? Tomcat does it while finishing the response. Here is one of the threads that waits to lock: http-8080-84 daemon prio=10 tid=0x7ff9a4340800 nid=0xf5d waiting for monitor entry [0x7ff9990cf000] java.lang.Thread.State: BLOCKED (on object monitor) at org.apache.tomcat.util.http.FastHttpDateFormat.getCurrentDate(FastHttpDateFormat.java:114) - waiting to lock 0x0006fbd04ee8 (a java.text.SimpleDateFormat) at org.apache.coyote.http11.Http11Processor.prepareResponse(Http11Processor.java:1606) at org.apache.coyote.http11.Http11Processor.action(Http11Processor.java:956) at org.apache.coyote.Response.action(Response.java:183) at org.apache.coyote.Response.sendHeaders(Response.java:379) at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:305) at org.apache.catalina.connector.OutputBuffer.close(OutputBuffer.java:273) at org.apache.catalina.connector.Response.finishResponse(Response.java:493) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:322) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:662) 2011/12/22 David kerber dcker...@verizon.net On 12/22/2011 4:05 AM, Violeta Georgieva wrote: Hi, I am using Tomcat 6.0.29 and SUN JVM. I experience high memory consumption caused by BLOCKED Threads. I would appreciate any help or suggestion how to solve the problem. Fix your app so that it releases the locks (probably synchronized sections) on the SimpleDateFormat objects. I can see the following in the thread dump: http-8080-73 daemon prio=10 tid=0x7ff9a4586000 nid=0x7d3 waiting for monitor entry [0x7ff9996d4000] java.lang.Thread.State: BLOCKED (on object monitor) at sun.util.resources.**TimeZoneNames.getContents(**TimeZoneNames.java:185) at sun.util.resources.**OpenListResourceBundle.**loadLookup(** OpenListResourceBundle.java:**109) - locked0x0006f95a49b8 (a sun.util.resources.**TimeZoneNames) at sun.util.resources.**OpenListResourceBundle.** loadLookupTablesIfNecessary(**OpenListResourceBundle.java:**97) at sun.util.resources.**OpenListResourceBundle.**handleGetObject(** OpenListResourceBundle.java:**58) at sun.util.resources.**TimeZoneNamesBundle.**handleGetObject(** TimeZoneNamesBundle.java:59) at java.util.ResourceBundle.**getObject(ResourceBundle.java:**368) at java.util.ResourceBundle.**getObject(ResourceBundle.java:**371) at java.util.ResourceBundle.**getStringArray(ResourceBundle.**java:351) at sun.util.TimeZoneNameUtility.**retrieveDisplayNames(** TimeZoneNameUtility.java:100) at sun.util.TimeZoneNameUtility.**retrieveDisplayNames(** TimeZoneNameUtility.java:81) at java.util.TimeZone.**getDisplayNames(TimeZone.java:** 399) at java.util.TimeZone.**getDisplayName(TimeZone.java:** 350) at java.text.SimpleDateFormat.**subFormat(SimpleDateFormat.**java:1110) at java.text.SimpleDateFormat.**format(SimpleDateFormat.java:**899) at java.text.SimpleDateFormat.**format(SimpleDateFormat.java:**869) at java.text.DateFormat.format(**DateFormat.java:316) at org.apache.tomcat.util.http.**FastHttpDateFormat.**getCurrentDate(** FastHttpDateFormat.java:115) - locked0x0006fbd04ee8 (a java.text.SimpleDateFormat) at org.apache.coyote.http11.**Http11Processor.**prepareResponse(** Http11Processor.java:1606) at org.apache.coyote.http11.**Http11Processor.action(** Http11Processor.java:956) at org.apache.coyote.Response.**action(Response.java:183) at org.apache.coyote.Response.** sendHeaders(Response.java:379) at org.apache.catalina.connector.**OutputBuffer.doFlush(** OutputBuffer.java:305) at org.apache.catalina.connector.**OutputBuffer.close(** OutputBuffer.java:273) at org.apache.catalina.connector.**Response.finishResponse(** Response.java:493) at org.apache.catalina.connector.**CoyoteAdapter.service(** CoyoteAdapter.java:322) at org.apache.coyote.http11.**Http11Processor.process(** Http11Processor.java:859) at org.apache.coyote.http11.**Http11Protocol$**Http11ConnectionHandler.** process(Http11Protocol.java:**588) at org.apache.tomcat.util.net.**JIoEndpoint$Worker.run(** JIoEndpoint.java:489) at java.lang.Thread.run(Thread.**java:662) Line 2485
RE: High memory consumption caused by BLOCKED Threads
From: David kerber [mailto:dcker...@verizon.net] Subject: Re: High memory consumption caused by BLOCKED Threads Fix your app so that it releases the locks (probably synchronized sections) on the SimpleDateFormat objects. Read the stack trace more carefully - only Tomcat or JRE code is present. However, since this is only a partial stack trace, there might be some app code that is indirectly locking 0x7ff9996d4000 and then pausing for some reason, causing a deadlock. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: High memory consumption caused by BLOCKED Threads
Chuck, On 22.12.2011 14:07, Caldarale, Charles R wrote: From: David kerber [mailto:dcker...@verizon.net] Subject: Re: High memory consumption caused by BLOCKED Threads Fix your app so that it releases the locks (probably synchronized sections) on the SimpleDateFormat objects. Read the stack trace more carefully - only Tomcat or JRE code is present. However, since this is only a partial stack trace, there might be some app code that is indirectly locking 0x7ff9996d4000 and then pausing for some reason, causing a deadlock. Hmmm, actually I had a short look at the code of sun.util.resources.TimeZoneNames.getContents(TimeZoneNames.java:185) and i don't unerstand why it is waiting for a monitor entry. The method should quickly return an array of objects which is explicitely defined in the class and that's it. No idea what's happening here. @Violeta: is anything wrong with your system, e.g. did you get an OutOfMemoryError somewhere? It looks your JVM is in a strange state. Are you doing frequent redeployments without stopping Tomcat? Regards, Rainer - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: High memory consumption caused by BLOCKED Threads
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Rainer, On 12/22/11 2:00 PM, Rainer Jung wrote: Hmmm, actually I had a short look at the code of sun.util.resources.TimeZoneNames.getContents(TimeZoneNames.java:185) and i don't unerstand why it is waiting for a monitor entry. The method should quickly return an array of objects which is explicitely defined in the class and that's it. No idea what's happening here. @Violeta: is anything wrong with your system, e.g. did you get an OutOfMemoryError somewhere? It looks your JVM is in a strange state. Are you doing frequent redeployments without stopping Tomcat? +1 Looks like something horrible has happened in the JVM. - -chris -BEGIN PGP SIGNATURE- Version: GnuPG/MacGPG2 v2.0.17 (Darwin) Comment: GPGTools - http://gpgtools.org Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk7zskQACgkQ9CaO5/Lv0PDv2gCfUtQObYXhqNKH8LxEMT3rBuU5 O0wAoKoCNwYv6a50LMTmv6y+cGRu+fAc =M07c -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: High memory consumption caused by BLOCKED Threads
From: Rainer Jung [mailto:rainer.j...@kippdata.de] Subject: Re: High memory consumption caused by BLOCKED Threads Hmmm, actually I had a short look at the code of sun.util.resources.TimeZoneNames.getContents(TimeZoneNames.java:185) and i don't unerstand why it is waiting for a monitor entry. It appears to be an internal JVM monitor, possibly set when GC is running. I suspect that the JVM is completely out of heap space, causing the threads to hang, rather than hanging threads causing heap exhaustion. GC may be releasing just enough memory to allow some activities to proceed rather than throwing an OOME, but then restarting GC right away. Examine the heap using jhat or other profiler and see who's eating the memory. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org