Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jetty-users] Jetty hanging after upgrade from 6.1.14 to 7.1.15

Hi Greg, 

Thanks for having a look into this.

There is no SelectChannelConnectors in the thread dump, because I'm suspecting it has died. If I do a thread dump on a healthy instance however (one that has not hung) the ProxyPassingSelectChannelConnector: (our extension of SelectChannelConnector) is present. Or, if I do a thread dump prior to the server hanging, it is also present.

  [java] "btpool0-1 - Acceptor0 ProxyPassingSelectChannelConnector@0.0.0.0:6060" prio=5 tid=101d7c800 nid=0x1442c4000 runnable [1442c3000]
     [java]    java.lang.Thread.State: RUNNABLE
     [java] 	at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
     [java] 	at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:136)
     [java] 	at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:69)
     [java] 	at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:69)
     [java] 	- locked <10d4d45e0> (a sun.nio.ch.Util$1)
     [java] 	- locked <10d4d45f8> (a java.util.Collections$UnmodifiableSet)
     [java] 	- locked <10d4d4568> (a sun.nio.ch.KQueueSelectorImpl)
     [java] 	at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:80)
     [java] 	at org.mortbay.io.nio.SelectorManager$SelectSet.doSelect(SelectorManager.java:484)
     [java] 	at org.mortbay.io.nio.SelectorManager.doSelect(SelectorManager.java:191)
     [java] 	at org.mortbay.jetty.nio.SelectChannelConnector.accept(SelectChannelConnector.java:124)
     [java] 	at org.mortbay.jetty.AbstractConnector$Acceptor.run(AbstractConnector.java:708)
     [java] 	at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:451)


Is Jetty 7.1.6 released ? I can't see it in the maven repo just yet: http://repo1.maven.org/maven2/org/eclipse/jetty/jetty-server/
Is there any thing else we could configure or log to try and determine what could be going on ?

Cheers,
Nick



On 19/07/2010, at 4:22 PM, Greg Wilkins wrote:

Nick,

I had a quick look, but cannot follow what you have said/sent.
I cannot see any SelectChannelConnectors in your thread dump.  All I
see is a LocalConnector:

   [junit] "qtp1177106648-212 - Acceptor0 LocalConnector@0.0.0.0:0"
prio=5 tid=17970d000 nid=0x16cf9b000 waiting on condition [16cf9a000]
   [junit]    java.lang.Thread.State: WAITING (parking)
   [junit] at sun.misc.Unsafe.park(Native Method)
   [junit] - parking to wait for  <10fb31178> (a
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   [junit] at
java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
   [junit] at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1925)
   [junit] at
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:399)
   [junit] at
org.eclipse.jetty.server.LocalConnector.accept(LocalConnector.java:59)
   [junit] at
org.eclipse.jetty.server.AbstractConnector$Acceptor.run(AbstractConnector.java:793)
   [junit] at
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:436)
   [junit] at java.lang.Thread.run(Thread.java:637)


can you clarify what your configuration was, and perhaps raise an
issue in the jetty JIRA

Note that 7.1.5 did have a few problems (though nothing obviously
related), so try 7.1.6 now.

regards









On 14 July 2010 10:11, Nick Pellow <npellow@xxxxxxxxxxxxx> wrote:
Hi,
We start and stop Jetty during the setUp() and tearDown() methods in some of
our tests.
We recently tried upgrading from Jetty 6.1.14, to Jetty 7.1.15 - however had
to revert this for the time being because some of our tests started randomly
hanging.

After Jetty starts, our tests use HttpClient to make requests to FishEye
running inside Jetty.
It is one of these client requests that hang, indefinitely. From what I can
tell, this is more easily reproducable on machines that run quite slow, and
have few (<3) cores. (e.g a mac-mini, but not a 8-core MacPro)

It appears that the SelectChannelConnector we configure Jetty with to handle
remote requests is no longer running (or was never started?) when the hang
occurs.

There are three DEBUG logs, including thread dumps, attached
to http://jira.atlassian.com/browse/CRUC-3721, showing:

a build that hangs using a SelectChannelConnector
a build that doesn't hang using a SelectChannelConnector (only a single test
is run)
a built that hangs using a normal (non-nio) SocketConnector.

Has anyone seen similar behaviour using Jetty 7 before, or does anything in
the logs standout as a candidate for causing Jetty to hang?

Is there anything else we can enable to try and detect what could be going
on?

Cheers,

Nick

_______________________________________________
jetty-users mailing list
jetty-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/jetty-users


_______________________________________________
jetty-users mailing list
jetty-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/jetty-users


Back to the top