bneradt commented on issue #12240: URL: https://github.com/apache/trafficserver/issues/12240#issuecomment-2898878216
Here's an example bt of a previous event from the client triggering an EOS via `HttpSM::state_http_server_open` that would put it in the state where the `HttpSM::attach_server_session` as the original bt indicates: ``` #0 0x00007f9901eb0acf in raise () from /lib64/libc.so.6 #1 0x00007f9901e83ea5 in abort () from /lib64/libc.so.6 #2 0x00007f99036aa44c in ink_abort (message_format=message_format@entry=0x7f99036bdaa7 "%s:%d: failed assertion `%s`") at src/tscore/ink_error.cc:99 #3 0x00007f99036a7906 in _ink_assert (expression=expression@entry=0x8fb4e9 "0", file=file@entry=0x8d77d8 "src/proxy/http/HttpSM.cc", line=line@entry=1829) at src/tscore/ink_assert.cc:35 #4 0x000000000059c272 in HttpSM::state_http_server_open (this=0x7f8d147b2000, event=104, data=0x0) at src/proxy/http/HttpSM.cc:1829 #5 0x0000000000597f3f in HttpSM::main_handler (data=0x0, event=104, this=0x7f8d147b2000) at src/proxy/http/HttpSM.cc:2661 #6 HttpSM::main_handler (this=0x7f8d147b2000, event=104, data=0x0) at src/proxy/http/HttpSM.cc:2631 #7 0x000000000064d4f0 in Continuation::handleEvent (data=0x0, event=104, this=0x7f8d147b2000) at include/iocore/eventsystem/Continuation.h:228 #8 Continuation::handleEvent (data=0x0, event=104, this=0x7f8d147b2000) at include/iocore/eventsystem/Continuation.h:224 #9 Http2Stream::initiating_close (this=<optimized out>) at src/proxy/http2/Http2Stream.cc:680 #10 0x000000000063f653 in Http2ConnectionState::rcv_frame (this=this@entry=0x7f8f78857720, frame=frame@entry=0x7f98f0bfd390) at src/proxy/http2/Http2ConnectionState.cc:1496 #11 0x0000000000636ba9 in Http2CommonSession::do_complete_frame_read (this=this@entry=0x7f8f78857718) at src/proxy/http2/Http2CommonSession.cc:338 #12 0x0000000000637014 in Http2CommonSession::do_process_frame_read (this=0x7f8f78857718, vio=0x7f777f3fc1f8, inside_frame=<optimized out>) at src/proxy/http2/Http2CommonSession.cc:400 #13 0x000000000065cd6e in Http2ClientSession::main_event_handler (this=0x7f8f78857400, event=2259, edata=0x7f8cf3a56900) at src/proxy/http2/Http2ClientSession.cc:193 #14 0x000000000086590c in Continuation::handleEvent (data=0x7f8cf3a56900, event=2259, this=<optimized out>) at include/iocore/eventsystem/Continuation.h:228 #15 Continuation::handleEvent (data=0x7f8cf3a56900, event=2259, this=<optimized out>) at include/iocore/eventsystem/Continuation.h:224 #16 EThread::process_event (this=0x7f98fa0cdd40, e=0x7f8cf3a56900, calling_code=2259) at src/iocore/eventsystem/UnixEThread.cc:166 #17 0x000000000086669c in EThread::execute_regular (this=this@entry=0x7f98fa0cdd40) at src/iocore/eventsystem/UnixEThread.cc:273 #18 0x0000000000867199 in EThread::execute (this=0x7f98fa0cdd40) at src/iocore/eventsystem/UnixEThread.cc:358 #19 EThread::execute (this=0x7f98fa0cdd40) at src/iocore/eventsystem/UnixEThread.cc:335 #20 0x0000000000863d32 in spawn_thread_internal (a=0x7f99011ffa40) at src/iocore/eventsystem/Thread.cc:75 #21 0x00007f990222f1ca in start_thread () from /lib64/libpthread.so.0 #22 0x00007f9901e9be73 in clone () from /lib64/libc.so.6 ``` I added an assertion in `HttpSM::state_http_server_open` to catch this. Note in this case, while opening an origin side connection, the client processed a frame which triggered a stream error. The handling of the error in `Http2Stream::initiating_close` resulted in an EOS event to the HttpSM in `HttpSM::state_http_server_open` -- 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. To unsubscribe, e-mail: issues-unsubscr...@trafficserver.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org