masaori335 commented on issue #7915:
URL: https://github.com/apache/trafficserver/issues/7915#issuecomment-855543295


   After #7809, `read_from_net` raises `VC_EVENT_ERROR` when the origin server 
resets the connection after sending the response.
   
   <details><summary>`VC_EVENT_ERROR` on 
`HttpSM::state_read_server_response_header`</summary>
   
   ```
   (gdb) bt
   #0  HttpSM::state_read_server_response_header (this=0x7ffff02a03b0, event=3, 
data=0x7fffec1552e8) at HttpSM.cc:1981
   #1  0x0000000000594768 in HttpSM::main_handler (this=0x7ffff02a03b0, 
event=3, data=0x7fffec1552e8) at HttpSM.cc:2703
   #2  0x00000000007e052e in read_signal_and_update (event=3, 
vc=0x7fffec155100) at UnixNetVConnection.cc:83
   #3  0x00000000007e4f41 in UnixNetVConnection::readSignalAndUpdate (event=3, 
this=0x7fffec155100) at UnixNetVConnection.cc:1043
   #4  read_from_net (nh=0x7ffff3845180, vc=0x7fffec155100, 
thread=0x7ffff3841010) at UnixNetVConnection.cc:204
   #5  0x00000000007d1947 in NetHandler::process_ready_list 
(this=this@entry=0x7ffff3845180) at UnixNet.cc:415
   #6  0x00000000007d1d13 in NetHandler::waitForActivity (this=0x7ffff3845180, 
timeout=<optimized out>) at UnixNet.cc:546
   #7  0x00000000008271aa in EThread::execute_regular 
(this=this@entry=0x7ffff3841010) at I_PriorityEventQueue.h:115
   #8  0x0000000000827412 in EThread::execute (this=0x7ffff3841010) at 
UnixEThread.cc:364
   #9  EThread::execute (this=0x7ffff3841010) at UnixEThread.cc:342
   #10 0x00000000008257ea in spawn_thread_internal (a=0xd5e7f0) at Thread.cc:92
   #11 0x00007ffff68a614a in start_thread () from /lib64/libpthread.so.0
   #12 0x00007ffff5aa4f23 in clone () from /lib64/libc.so.6
   (gdb) frame 4
   #4  read_from_net (nh=0x7ffff3845180, vc=0x7fffec155100, 
thread=0x7ffff3841010) at UnixNetVConnection.cc:204
   204         vc->readSignalAndUpdate(VC_EVENT_ERROR);
   (gdb) p vc->error
   $1 = 104
   ```
   </details>
   
   <details><summary>tcpdump trafficserver <-> origin server</summary>
   
   ```
       1 2021-06-07 02:51:09.889582   0.000000 TCP    127.0.0.1 51260 127.0.0.1 
   61000 74 51260 → 61000 [SYN] Seq=0 Win=43690 Len=0 MSS=65495 SACK_PERM=1 
TSval=1062468354 TSecr=0 WS=128
       2 2021-06-07 02:51:09.889596   0.000014 TCP    127.0.0.1 61000 127.0.0.1 
   51260 74 61000 → 51260 [SYN, ACK] Seq=0 Ack=1 Win=43690 Len=0 MSS=65495 
SACK_PERM=1 TSval=1062468354 TSecr=1062468354 WS=128
       3 2021-06-07 02:51:09.889605   0.000023 TCP    127.0.0.1 51260 127.0.0.1 
   61000 66 51260 → 61000 [ACK] Seq=1 Ack=1 Win=43776 Len=0 TSval=1062468354 
TSecr=1062468354
       4 2021-06-07 02:51:09.889839   0.000257 TCP    127.0.0.1 51260 127.0.0.1 
   61000 282 POST / HTTP/1.1  [TCP segment of a reassembled PDU]
       5 2021-06-07 02:51:09.889845   0.000263 TCP    127.0.0.1 61000 127.0.0.1 
   51260 66 61000 → 51260 [ACK] Seq=1 Ack=217 Win=44800 Len=0 TSval=1062468355 
TSecr=1062468355
       6 2021-06-07 02:51:09.889993   0.000411 HTTP    127.0.0.1 51260 
127.0.0.1    61000 16487 POST / HTTP/1.1
       7 2021-06-07 02:51:09.889999   0.000417 TCP    127.0.0.1 61000 127.0.0.1 
   51260 66 61000 → 51260 [ACK] Seq=1 Ack=16638 Win=175744 Len=0 
TSval=1062468355 TSecr=1062468355
       8 2021-06-07 02:51:09.891157   0.001575 TCP    127.0.0.1 61000 127.0.0.1 
   51260 335 HTTP/1.1 405 METHOD NOT ALLOWED  [TCP segment of a reassembled PDU]
       9 2021-06-07 02:51:09.891169   0.001587 TCP    127.0.0.1 51260 127.0.0.1 
   61000 66 51260 → 61000 [ACK] Seq=16638 Ack=270 Win=44800 Len=0 
TSval=1062468356 TSecr=1062468356
      10 2021-06-07 02:51:09.891184   0.001602 HTTP    127.0.0.1 61000 
127.0.0.1    51260 244 HTTP/1.1 405 METHOD NOT ALLOWED  (text/html)
      11 2021-06-07 02:51:09.891189   0.001607 TCP    127.0.0.1 51260 127.0.0.1 
   61000 66 51260 → 61000 [ACK] Seq=16638 Ack=448 Win=45952 Len=0 
TSval=1062468356 TSecr=1062468356
      12 2021-06-07 02:51:09.891231   0.001649 TCP    127.0.0.1 61000 127.0.0.1 
   51260 66 61000 → 51260 [RST, ACK] Seq=448 Ack=16638 Win=175744 Len=0 
TSval=1062468356 TSecr=1062468356
   ```
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to