[jetty-users] OutOfMemoryError with Jetty 8.1.1

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

[jetty-users] OutOfMemoryError with Jetty 8.1.1

kmooney

Hello,

One way we launch our eclipse is in a headless mode (no UI) for command line execution support.  Shortly after process startup we experience OutOfMemoryError.  This is running on Windows 7.  The relevant stack trace for the current thread is shown below.  Any ideas why this is happening?

Thanks,
Kevin

0SECTION       THREADS subcomponent dump routine
NULL           =================================
NULL
1XMPOOLINFO    Thread pool info:
2XMPOOLTOTAL       Current total number of threads: 56
NULL            
1XMCURTHDINFO  Current thread
NULL           ----------------------
3XMTHREADINFO      "qtp879320118-90" J9VMThread:0x90D0EB00, j9thread_t:0x90D084DC, java/lang/Thread:0x9AE3D9D8, state:R, prio=5
3XMTHREADINFO1            (native thread ID:0x6239, native priority:0x5, native policy:UNKNOWN)
3XMTHREADINFO2            (native stack address range from:0x90C7E000, to:0x90CBF000, size:0x41000)
3XMTHREADINFO3           Java callstack:
4XESTACKTRACE                at java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject.addConditionWaiter(AbstractQueuedSynchronizer.java:1868)
4XESTACKTRACE                at java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2084)
4XESTACKTRACE                at org/eclipse/jetty/util/BlockingArrayQueue.poll(BlockingArrayQueue.java:337)
4XESTACKTRACE                at org/eclipse/jetty/util/thread/QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:517)
4XESTACKTRACE                at org/eclipse/jetty/util/thread/QueuedThreadPool.access$600(QueuedThreadPool.java:39)
4XESTACKTRACE                at org/eclipse/jetty/util/thread/QueuedThreadPool$3.run(QueuedThreadPool.java:563)
4XESTACKTRACE                at java/lang/Thread.run(Thread.java:777)

_______________________________________________
jetty-users mailing list
[hidden email]
https://dev.eclipse.org/mailman/listinfo/jetty-users

Reply | Threaded
Open this post in threaded view
|

Re: [jetty-users] OutOfMemoryError with Jetty 8.1.1

kmooney

Apparently, jetty code running as the current thread was coincidental.  Heap dump analysis has revealed the culprit.

Inactive hide details for Kevin Mooney---06/14/2012 08:21:22 AM---Hello, One way we launch our eclipse is in a headless mode (nKevin Mooney---06/14/2012 08:21:22 AM---Hello, One way we launch our eclipse is in a headless mode (no UI) for command line execution suppor

From: Kevin Mooney/Raleigh/IBM
To: [hidden email],
Date: 06/14/2012 08:21 AM
Subject: OutOfMemoryError with Jetty 8.1.1




Hello,

One way we launch our eclipse is in a headless mode (no UI) for command line execution support.  Shortly after process startup we experience OutOfMemoryError.  This is running on Windows 7.  The relevant stack trace for the current thread is shown below.  Any ideas why this is happening?

Thanks,
Kevin

0SECTION       THREADS subcomponent dump routine
NULL           =================================
NULL
1XMPOOLINFO    Thread pool info:
2XMPOOLTOTAL       Current total number of threads: 56
NULL            
1XMCURTHDINFO  Current thread
NULL           ----------------------
3XMTHREADINFO      "qtp879320118-90" J9VMThread:0x90D0EB00, j9thread_t:0x90D084DC, java/lang/Thread:0x9AE3D9D8, state:R, prio=5
3XMTHREADINFO1            (native thread ID:0x6239, native priority:0x5, native policy:UNKNOWN)
3XMTHREADINFO2            (native stack address range from:0x90C7E000, to:0x90CBF000, size:0x41000)
3XMTHREADINFO3           Java callstack:
4XESTACKTRACE                at java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject.addConditionWaiter(AbstractQueuedSynchronizer.java:1868)
4XESTACKTRACE                at java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2084)
4XESTACKTRACE                at org/eclipse/jetty/util/BlockingArrayQueue.poll(BlockingArrayQueue.java:337)
4XESTACKTRACE                at org/eclipse/jetty/util/thread/QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:517)
4XESTACKTRACE                at org/eclipse/jetty/util/thread/QueuedThreadPool.access$600(QueuedThreadPool.java:39)
4XESTACKTRACE                at org/eclipse/jetty/util/thread/QueuedThreadPool$3.run(QueuedThreadPool.java:563)
4XESTACKTRACE                at java/lang/Thread.run(Thread.java:777)


_______________________________________________
jetty-users mailing list
[hidden email]
https://dev.eclipse.org/mailman/listinfo/jetty-users
Reply | Threaded
Open this post in threaded view
|

Re: [jetty-users] OutOfMemoryError with Jetty 8.1.1

Jesse McConnell
In reply to this post by kmooney
I really don't see how this stack trace is related to your OOME, sorry.

Once an OOME is triggered it is really hard to trust any sort of
results coming out of the jvm as it is scrambling to do its work and
hits those upper limits.  Most I can recommend is to profile the app
when your running it to see where the memory is going.

Jetty itself is very lightweight and does not consume a lot of memory,
which is one reason it can run well on android devices.  Eclipse has
always been a bit of a memory hog in my experience so I think chasing
jetty in this instance is a bit of a red herring.

cheers,
jesse

--
jesse mcconnell
[hidden email]


On Thu, Jun 14, 2012 at 7:21 AM, Kevin Mooney <[hidden email]> wrote:

> Hello,
>
> One way we launch our eclipse is in a headless mode (no UI) for command line
> execution support.  Shortly after process startup we experience
> OutOfMemoryError.  This is running on Windows 7.  The relevant stack trace
> for the current thread is shown below.  Any ideas why this is happening?
>
> Thanks,
> Kevin
>
> 0SECTION       THREADS subcomponent dump routine
> NULL           =================================
> NULL
> 1XMPOOLINFO    Thread pool info:
> 2XMPOOLTOTAL       Current total number of threads: 56
> NULL
> 1XMCURTHDINFO  Current thread
> NULL           ----------------------
> 3XMTHREADINFO      "qtp879320118-90" J9VMThread:0x90D0EB00,
> j9thread_t:0x90D084DC, java/lang/Thread:0x9AE3D9D8, state:R, prio=5
> 3XMTHREADINFO1            (native thread ID:0x6239, native priority:0x5,
> native policy:UNKNOWN)
> 3XMTHREADINFO2            (native stack address range from:0x90C7E000,
> to:0x90CBF000, size:0x41000)
> 3XMTHREADINFO3           Java callstack:
> 4XESTACKTRACE                at
> java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject.addConditionWaiter(AbstractQueuedSynchronizer.java:1868)
> 4XESTACKTRACE                at
> java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2084)
> 4XESTACKTRACE                at
> org/eclipse/jetty/util/BlockingArrayQueue.poll(BlockingArrayQueue.java:337)
> 4XESTACKTRACE                at
> org/eclipse/jetty/util/thread/QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:517)
> 4XESTACKTRACE                at
> org/eclipse/jetty/util/thread/QueuedThreadPool.access$600(QueuedThreadPool.java:39)
> 4XESTACKTRACE                at
> org/eclipse/jetty/util/thread/QueuedThreadPool$3.run(QueuedThreadPool.java:563)
> 4XESTACKTRACE                at java/lang/Thread.run(Thread.java:777)
>
>
> _______________________________________________
> jetty-users mailing list
> [hidden email]
> https://dev.eclipse.org/mailman/listinfo/jetty-users
>
_______________________________________________
jetty-users mailing list
[hidden email]
https://dev.eclipse.org/mailman/listinfo/jetty-users
Reply | Threaded
Open this post in threaded view
|

Re: [jetty-users] OutOfMemoryError with Jetty 8.1.1

Nick Fenwick
In reply to this post by kmooney
On 06/14/2012 07:21 PM, Kevin Mooney wrote:

One way we launch our eclipse is in a headless mode (no UI) for command line execution support.  Shortly after process startup we experience OutOfMemoryError.  This is running on Windows 7.  The relevant stack trace for the current thread is shown below.  Any ideas why this is happening?


Got to agree with Jesse.  A stack trace of a thread at some point in time is not guaranteed to be indicative of anything that caused an OutOfMemoryException, it's just indicative of what that thread was doing at the point in time you captured the stack trace.  I'd also question your use of the phrase "current thread" - what makes you think the thread you've captured a stack trace for is relevant?  jstack can show you all the threads and their various stack traces at the point of capture.

Try using jmap shipped in your JDK to get a dump of JVM memory content, and analyze the dump with JConsole or jvisualvm to figure out what objects are allocated and in what quantity.  From that you may be able to determine what allocated the objects and thus lead to your memory leak.  It's not easy, though, don't expect a big flashing arrow pointing to a line of code.

Nick

_______________________________________________
jetty-users mailing list
[hidden email]
https://dev.eclipse.org/mailman/listinfo/jetty-users