https://bz.apache.org/bugzilla/show_bug.cgi?id=65455
Bug ID: 65455
Summary: after about 10 days ago, tomcat8.5.63 can't response
web request again
Product: Tomcat 8
Version: 8.5.63
Hardware: PC
Status: NEW
Severity: normal
Priority: P2
Component: Connectors
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: ----
server.xml config:
<Connector port="8080" maxThreads="200" minSpareThreads="100"
protocol="org.apache.coyote.http11.Http11Nio2Protocol"
connectionTimeout="20000" keepAliveTimeout="15000" maxKeepAliveRequests="-1"
redirectPort="8443" acceptCount="400"/>
Tomcat server run about 10 days, then can't response web request again.
request has request header: Connection: Keep-Alive
response has header: Keep-Alive: timeout=15
>From tcpdump data can see, server don't send fin data to client again.
tcpdump 34 stream is a normal stream, response is ok.
3604 2021-07-12 01:25:52.369772 10.61.0.15 10.9.5.23 TCP
66 45978 → 8080 [ACK] Seq=1958 Ack=214372 Win=155136 Len=0
TSval=3599507486 TSecr=359044615
3606 2021-07-12 01:26:07.369723 10.9.5.23 10.61.0.15 TCP
66 8080 → 45978 [FIN, ACK] Seq=214372 Ack=1958 Win=33792 Len=0
TSval=359059615 TSecr=3599507486
3608 2021-07-12 01:26:07.409277 10.61.0.15 10.9.5.23 TCP
66 45978 → 8080 [ACK] Seq=1958 Ack=214373 Win=164864 Len=0
TSval=3599522526 TSecr=359059615
3609 2021-07-12 01:26:14.970215 10.61.0.15 10.9.5.23 TCP
66 45978 → 8080 [FIN, ACK] Seq=1958 Ack=214373 Win=164864 Len=0
TSval=3599530086 TSecr=359059615
3611 2021-07-12 01:26:14.970268 10.9.5.23 10.61.0.15 TCP
66 8080 → 45978 [ACK] Seq=214373 Ack=1959 Win=33792 Len=0 TSval=359067215
TSecr=3599530086
>From 35 stream on, cant respnse.
35 stream:
3613 2021-07-12 01:26:14.971184 10.61.0.15 10.9.5.23 TCP
74 46052 → 8080 [SYN] Seq=0 Win=29200 Len=0 MSS=1460 SACK_PERM=1
TSval=3599530087 TSecr=0 WS=512
3614 2021-07-12 01:26:14.971219 10.9.5.23 10.61.0.15 TCP
74 8080 → 46052 [SYN, ACK] Seq=0 Ack=1 Win=28960 Len=0 MSS=1460
SACK_PERM=1 TSval=359067216 TSecr=3599530087 WS=512
3615 2021-07-12 01:26:14.971440 10.61.0.15 10.9.5.23 TCP
66 46052 → 8080 [ACK] Seq=1 Ack=1 Win=29696 Len=0 TSval=3599530088
TSecr=359067216
3616 2021-07-12 01:26:14.971564 10.61.0.15 10.9.5.23 HTTP
590 POST
/mx_traffic_searcher/getTrafficViewInfo?trace_id=112256964&device_no=bc7536fd80d000000
HTTP/1.1
3617 2021-07-12 01:26:14.971572 10.9.5.23 10.61.0.15 TCP
66 8080 → 46052 [ACK] Seq=1 Ack=525 Win=30208 Len=0 TSval=359067217
TSecr=3599530088
3618 2021-07-12 01:26:15.706276 10.9.5.23 10.61.0.15 HTTP
270 HTTP/1.1 200
3619 2021-07-12 01:26:15.706508 10.61.0.15 10.9.5.23 TCP
66 46052 → 8080 [ACK] Seq=525 Ack=205 Win=30720 Len=0 TSval=3599530823
TSecr=359067952
3620 2021-07-12 01:26:16.371719 10.61.0.15 10.9.5.23 HTTP
607 POST
/mx_traffic_searcher/getTrafficRouteInfo?trace_id=112258403&device_no=bc7536fd80d000000
HTTP/1.1
3621 2021-07-12 01:26:16.371767 10.9.5.23 10.61.0.15 TCP
66 8080 → 46052 [ACK] Seq=205 Ack=1066 Win=31232 Len=0 TSval=359068617
TSecr=3599531488
3622 2021-07-12 01:26:16.374063 10.9.5.23 10.61.0.15 HTTP
265 HTTP/1.1 200
3623 2021-07-12 01:26:16.374244 10.61.0.15 10.9.5.23 TCP
66 46052 → 8080 [ACK] Seq=1066 Ack=404 Win=31744 Len=0 TSval=3599531490
TSecr=359068619
3624 2021-07-12 01:26:31.123460 10.61.0.15 10.9.5.23 HTTP
606 POST
/mx_traffic_searcher/getTrafficRouteInfo?trace_id=30989437&device_no=bc7536fd398000000
HTTP/1.1
3630 2021-07-12 01:26:31.163272 10.9.5.23 10.61.0.15 TCP
66 8080 → 46052 [ACK] Seq=404 Ack=1606 Win=32256 Len=0 TSval=359083409
TSecr=3599546240
3631 2021-07-12 01:26:31.771455 10.9.5.23 10.61.0.15 TCP
66 8080 → 46052 [RST, ACK] Seq=404 Ack=1606 Win=32256 Len=0
TSval=359084017 TSecr=3599546240
The 36 stream:
3625 2021-07-12 01:26:31.157749 10.61.0.15 10.9.5.23 TCP
74 46080 → 8080 [SYN] Seq=0 Win=29200 Len=0 MSS=1460 SACK_PERM=1
TSval=3599546274 TSecr=0 WS=512
3626 2021-07-12 01:26:31.157787 10.9.5.23 10.61.0.15 TCP
74 8080 → 46080 [SYN, ACK] Seq=0 Ack=1 Win=28960 Len=0 MSS=1460
SACK_PERM=1 TSval=359083403 TSecr=3599546274 WS=512
3627 2021-07-12 01:26:31.157979 10.61.0.15 10.9.5.23 TCP
66 46080 → 8080 [ACK] Seq=1 Ack=1 Win=29696 Len=0 TSval=3599546274
TSecr=359083403
3628 2021-07-12 01:26:31.158111 10.61.0.15 10.9.5.23 HTTP
768 POST
/mx_traffic_searcher/getTrafficViewInfo?trace_id=30989435&device_no=bc7536fd398000000
HTTP/1.1
3629 2021-07-12 01:26:31.158118 10.9.5.23 10.61.0.15 TCP
66 8080 → 46080 [ACK] Seq=1 Ack=703 Win=30720 Len=0 TSval=359083403
TSecr=3599546274
3637 2021-07-12 01:26:41.161537 10.61.0.15 10.9.5.23 TCP
66 46080 → 8080 [FIN, ACK] Seq=703 Ack=1 Win=29696 Len=0 TSval=3599556278
TSecr=359083403
3638 2021-07-12 01:26:41.201292 10.9.5.23 10.61.0.15 TCP
66 8080 → 46080 [ACK] Seq=1 Ack=704 Win=30720 Len=0 TSval=359093447
TSecr=3599556278
37~... is similar to 36.
jstack result is:
"http-nio2-8080-AsyncTimeout" #210 daemon prio=5 os_prio=0
tid=0x00007fb188933000 nid=0x1ad waiting on condition [0x00007f8e842dc000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at
org.apache.coyote.AbstractProtocol$AsyncTimeout.run(AbstractProtocol.java:1193)
at java.lang.Thread.run(Thread.java:745)
"http-nio2-8080-Acceptor-0" #209 daemon prio=5 os_prio=0 tid=0x00007fb188932000
nid=0x1ac waiting on condition [0x00007f8e843dd000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007f941cfffff8> (a
java.util.concurrent.CountDownLatch$Sync)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:997)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1304)
at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:231)
at sun.nio.ch.PendingFuture.get(PendingFuture.java:180)
at
org.apache.tomcat.util.net.Nio2Endpoint$Acceptor.run(Nio2Endpoint.java:393)
at java.lang.Thread.run(Thread.java:745)
"http-nio2-8080-exec-960" #16165 daemon prio=5 os_prio=0 tid=0x00007f8e1005d800
nid=0x4a8e waiting on condition [0x00007f8dfa485000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007f92bd0541b0> (a
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at org.apache.tomcat.util.threads.TaskQueue.take(TaskQueue.java:108)
at org.apache.tomcat.util.threads.TaskQueue.take(TaskQueue.java:33)
at
java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
Other port can receive data and response.
>From netstat can see:
tcp 0 0 10.9.5.23:8080 10.61.0.15:40540 SYN_RECV
tcp 0 0 10.9.5.23:8080 10.61.0.15:40442 SYN_RECV
tcp 0 0 10.9.5.23:8080 10.61.0.15:40570 SYN_RECV
tcp 0 0 10.9.5.23:8080 10.61.0.15:40590 SYN_RECV
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:38941 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:18080 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:8005 0.0.0.0:* LISTEN
tcp 205 0 10.9.5.23:8080 10.9.4.93:48620 CLOSE_WAIT
tcp 515 0 10.9.5.23:8080 10.61.0.15:46760 CLOSE_WAIT
tcp 515 0 10.9.5.23:8080 10.61.0.15:46418 CLOSE_WAIT
tcp 0 0 10.9.5.23:44338 10.61.2.234:6379 ESTABLISHED
tcp 0 0 10.9.5.23:38178 10.253.94.17:11800 ESTABLISHED
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]