[
https://issues.apache.org/jira/browse/DERBY-3869?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12633880#action_12633880
]
Bryan Pendleton commented on DERBY-3869:
----------------------------------------
> closes the clientSocket if the server is shutting down
This seems like the right approach to me.
And yes, it seems reasonable that a ping request might get an error
if attempted while the server is shutting down.
> intermittent hang pinging server on Linux
> ------------------------------------------
>
> Key: DERBY-3869
> URL: https://issues.apache.org/jira/browse/DERBY-3869
> Project: Derby
> Issue Type: Bug
> Components: Network Server
> Affects Versions: 10.5.0.0
> Environment: java version "1.6.0"
> Java(TM) SE Runtime Environment (build pxi3260sr1-20080416_01(SR1))
> IBM J9 VM (build 2.4, J2RE 1.6.0 IBM J9 2.4 Linux x86-32
> jvmxi3260-20080415_1876
> J9VM - 20080415_018762_lHdSMr
> JIT - r9_20080415_1520
> GC - 20080415_AA)
> JCL - 20080412_01
> Reporter: Kathey Marsden
> Assignee: Kathey Marsden
> Attachments: derby-3869_diff.txt,
> derby-3869_sleep_to_force_hang_diff.txt, derby.log,
> javacore.20080903.183815.7684.0001.txt, Repro.java, TryHang.java
>
>
> am looking at a intermittent hang with IBM 1.6 on Linux with the ping
> command. I am not entirely sure it is a jvm issue, but I have not been
> able to reproduce the hang with other jvms.
> The trace is
> 3XMTHREADINFO "main" TID:0x08072500, j9thread_t:0x08057AF4, state:R,
> prio=5
> 3XMTHREADINFO1 (native thread ID:0x1E05, native priority:0x5,
> native policy:UNKNOWN)
> 4XESTACKTRACE at java/net/SocketInputStream.socketRead0(Native
> Method)
> 4XESTACKTRACE at
> java/net/SocketInputStream.read(SocketInputStream.java:140)
> 4XESTACKTRACE at
> java/net/SocketInputStream.read(SocketInputStream.java:101)
> 4XESTACKTRACE at
> org/apache/derby/impl/drda/NetworkServerControlImpl.fillReplyBuffer(NetworkServerControlImpl.java:2764)
> 4XESTACKTRACE at
> org/apache/derby/impl/drda/NetworkServerControlImpl.readResult(NetworkServerControlImpl.java:2708)
> 4XESTACKTRACE at
> org/apache/derby/impl/drda/NetworkServerControlImpl.pingWithNoOpen(NetworkServerControlImpl.java:1169)
> 4XESTACKTRACE at
> org/apache/derby/impl/drda/NetworkServerControlImpl.ping(NetworkServerControlImpl.java:1144(Compiled
> Code))
> 4XESTACKTRACE at
> org/apache/derby/drda/NetworkServerControl.ping(NetworkServerControl.java:395(Compiled
> Code))
> 4XESTACKTRACE at Repro.pingForServerUp(Repro.java:38(Compiled Code))
> 4XESTACKTRACE at Repro.startAndShutdown(Repro.java:20)
> The client has sent the ping, but there is no corresponding session on
> the server side to process the
> command. The full thread dump is in.
> javacore.20080903.183815.7684.0001.txt
> The program Repro.java shows the problem. It repeatedly starts the server,
> pings until it
> comes up, and then shuts down.
> In the derby.log I see a startup error, that the address is already in
> use, so presumably the shutdown is not complete before we start the
> server and then perhaps it shuts down mid ping causing the hang?
> 2008-09-04 01:37:51.048 GMT : Could not listen on port 1527 on host 127.0.0.1:
> java.net.BindException: Address already in use
> An exception was thrown during network server startup.
> DRDA_ListenPort.S:Could not listen on port 1527 on host 127.0.0.1:
> java.net.BindException: Address already in use
> java.lang.reflect.InvocationTargetException
> at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
> at java.lang.reflect.Method.invoke(Method.java:599)
> at
> org.apache.derby.iapi.jdbc.DRDAServerStarter.run(DRDAServerStarter.java:236)
> at java.lang.Thread.run(Thread.java:735)
> Caused by: java.lang.Exception: DRDA_ListenPort.S:Could not listen on port
> 1527 on host 127.0.0.1:
> java.net.BindException: Address already in use
> at java.lang.Throwable.<init>(Throwable.java:67)
> at
> org.apache.derby.impl.drda.NetworkServerControlImpl.consolePropertyMessageWork(NetworkServerControlImpl.java:3179)
> at
> org.apache.derby.impl.drda.NetworkServerControlImpl.consolePropertyMessage(NetworkServerControlImpl.java:1861)
> at
> org.apache.derby.impl.drda.NetworkServerControlImpl.blockingStart(NetworkServerControlImpl.java:731)
> ... 5 more
> Full log is attached as derby.log
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.