A variant on many postings I've found, unfortunately none of the
remedies work.  Been googling furiously to no avail.  Surely tomcat on
Fedora can't be this broken out of the box, can it?

Problem:
Tomcat fails to shut down in response to shutdown.sh script.  Hangs,
eventually throws exception with dreaded "Protocol handler pause failed"
message.  I have tried both values for LD_ASSUME_KERNEL as per release
notes.  It changes the behavior slightly, but the problem remains (more
below).

Environment:

- A freshly built & updated fedora RC4 install: 2.6.14-1.1656_FC4

- A completely unmodified Tomcat Version 5.5.12 - I untarred it and ran it.

- Sun's jdk1.5.0_06

Repro:

1) run startup.sh
2) hit localhost:8080 in browser, works
3) run shutdown.sh
4) log shows:

Jan 19, 2006 11:08:27 PM org.apache.coyote.http11.Http11BaseProtocol pause
INFO: Pausing Coyote HTTP/1.1 on http-8080

It hangs for a minute or so, then throws:

Jan 19, 2006 11:03:48 PM org.apache.catalina.connector.Connector pause
SEVERE: Protocol handler pause failed
java.net.ConnectException: Connection timed out
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
        at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
        at java.net.Socket.connect(Socket.java:507)
        at java.net.Socket.connect(Socket.java:457)
        at java.net.Socket.<init>(Socket.java:365)
        at java.net.Socket.<init>(Socket.java:207)
        at 
org.apache.jk.common.ChannelSocket.unLockSocket(ChannelSocket.java:463)
        at org.apache.jk.common.ChannelSocket.pause(ChannelSocket.java:270)
        at org.apache.jk.server.JkMain.pause(JkMain.java:679)
        at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:162)
        at org.apache.catalina.connector.Connector.pause(Connector.java:1031)
        at 
org.apache.catalina.core.StandardService.stop(StandardService.java:491)
        at 
org.apache.catalina.core.StandardServer.stop(StandardServer.java:714)        at 
org.apache.catalina.startup.Catalina.stop(Catalina.java:586)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:561)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:275)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)

Interestingly enough, lsof shows different behaviors depending on the
value of the LD_ASSSUME_KERNEL variable.  With no variable set, 

# lsof -P | grep java | grep 8080
java      6555   chris   10u     IPv6     329120                  TCP *:8080 
(LISTEN)

setting LD_ASSUME_KERNEL=2.2.5 results in about 40 threads listening on
the port (in the hung state):

# lsof -P | grep java | grep 8080
java      6652   chris   12u     IPv6     331547                  TCP *:8080 
(LISTEN)
java      6653   chris   12u     IPv6     331547                  TCP *:8080 
(LISTEN)
...etc

setting it to 2.4.1 yields the more entertaining:

# lsof -P | grep java | grep 8080
java      6779   chris  mem       REG      253,0   1465636    4980808 
/lib/obsolete/linuxthreads/i686/libc-2.3.5.so
java      6779   chris   12u     IPv6     334251                  TCP *:8080 
(LISTEN)
java      6780   chris  mem       REG      253,0   1465636    4980808 
/lib/obsolete/linuxthreads/i686/libc-2.3.5.so
java      6780   chris   12u     IPv6     334251                  TCP *:8080 
(LISTEN)
...

but the behavior is the same.

This is awful, I'm losing faith.  I actually booted the XP partition
today...

-- 
Chris Abajian <[EMAIL PROTECTED]>
thePlatform, Inc.
(206) 839-0600 ext. 216


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to