From: Jan B. (JIRA) <ji...@co...> - 2007-06-01 12:51:03
|
[ http://jira.codehaus.org/browse/JETTY-356?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_97977 ] Jan Bartel commented on JETTY-356: ---------------------------------- Kevan, I think release 6.1.4rc0 is more recent that the last snapshot, but we'll push another snapshot now anyway. If there's some more specific info on the problem, then it would help track this down, particularly as I can't seem to reproduce it with the info I currenlty have. regards Jan > Problem with a thread continously looping after viewing one jpeg file > --------------------------------------------------------------------- > > Key: JETTY-356 > URL: http://jira.codehaus.org/browse/JETTY-356 > Project: Jetty > Issue Type: Bug > Components: HTTP > Affects Versions: 6.1.4rc0 > Environment: Mac OS X jdk 1.5.0_07 > Reporter: Shawn Ellis > Assignee: Jan Bartel > > I updated with the latest version of the software from subversion and I'm now seeing a different problem that is related to JETTY-344. With the latest code, I'm seeing a thread within HttpConnection.handle that is continously looping without exiting. If I revert ByteBufferArray.java back to version 810, then the code works properly. I've included a thread dump of the problem that I'm seeing. Thanks for all of your help. > Here is how I was able to reproduce the problem: > 1) Start up the embedded example file from JETTY-344 > 2) Check your load average > 3) Visit http://localhost:9100/ee/earth.jpg > 4) Check your load average again and you will see that it keeps on increasing. > Full thread dump Java HotSpot(TM) Client VM (1.5.0_07-87 mixed mode, sharing): > "btpool0-2" prio=5 tid=0x00515530 nid=0x1869800 runnable [0xf0e0c000..0xf0e0cb30] > at java.lang.ThreadLocal.set(ThreadLocal.java:148) > at org.mortbay.jetty.HttpConnection.setCurrentConnection(HttpConnection.java:102) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:364) > at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:226) > at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) > "btpool0-1" prio=5 tid=0x005146e0 nid=0x186ae00 runnable [0xf0d8b000..0xf0d8bb30] > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:204) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:379) > at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:226) > at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) > "DestroyJavaVM" prio=5 tid=0x00501480 nid=0x1804600 waiting on condition [0x00000000..0xf07ffe70] > "Timer-0" prio=5 tid=0x00512f60 nid=0x184be00 in Object.wait() [0xf0d0a000..0xf0d0ab30] > at java.lang.Object.wait(Native Method) > - waiting on <0x26d2ba08> (a java.util.TaskQueue) > at java.util.TimerThread.mainLoop(Timer.java:509) > - locked <0x26d2ba08> (a java.util.TaskQueue) > at java.util.TimerThread.run(Timer.java:462) > "btpool0-0 - Acceptor0 SocketConnector @ 0.0.0.0:9100" prio=5 tid=0x0050ef70 nid=0x184ba00 runnable [0xf0c89000..0xf0c89b30] > at java.net.PlainSocketImpl.socketAccept(Native Method) > at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384) > - locked <0x26d60d10> (a java.net.SocksSocketImpl) > at java.net.ServerSocket.implAccept(ServerSocket.java:450) > at java.net.ServerSocket.accept(ServerSocket.java:421) > at org.mortbay.jetty.bio.SocketConnector.accept(SocketConnector.java:97) > at org.mortbay.jetty.AbstractConnector$Acceptor.run(AbstractConnector.java:516) > at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) > "Low Memory Detector" daemon prio=5 tid=0x0050a710 nid=0x1811600 runnable [0x00000000..0x00000000] > "CompilerThread0" daemon prio=9 tid=0x00509dc0 nid=0x1811200 waiting on condition [0x00000000..0xf0b06450] > "Signal Dispatcher" daemon prio=9 tid=0x00509950 nid=0x1810e00 waiting on condition [0x00000000..0x00000000] > "Finalizer" daemon prio=8 tid=0x00509130 nid=0x180fc00 in Object.wait() [0xf0a04000..0xf0a04b30] > at java.lang.Object.wait(Native Method) > - waiting on <0x26ca06e8> (a java.lang.ref.ReferenceQueue$Lock) > at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116) > - locked <0x26ca06e8> (a java.lang.ref.ReferenceQueue$Lock) > at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132) > at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159) > "Reference Handler" daemon prio=10 tid=0x00508d40 nid=0x180ec00 in Object.wait() [0xf0983000..0xf0983b30] > at java.lang.Object.wait(Native Method) > - waiting on <0x26ca0768> (a java.lang.ref.Reference$Lock) > at java.lang.Object.wait(Object.java:474) > at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116) > - locked <0x26ca0768> (a java.lang.ref.Reference$Lock) > "VM Thread" prio=9 tid=0x00508560 nid=0x1803c00 runnable > "VM Periodic Task Thread" prio=9 tid=0x0050bdc0 nid=0x1811a00 waiting on condition > "Exception Catcher Thread" prio=10 tid=0x005016f0 nid=0x1804a00 runnable -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |