Skip to content

HttpTunnel / H2 assertion on Docs (9.0.x) #6799

Description

@zwoop

Got this assertion on current (05/18/2020) 9.0.x builds:

Fatal: HttpSM.cc:955: failed assertion `t_state.hdr_info.client_request.m_100_continue_required`

6    0x00002b34a5bfd805 _ink_assert + 0x37
7    0x000000000079b4b2 HttpSM::state_watch_for_client_abort(int, void*) + 0xff6
8    0x00000000007ae4ad HttpSM::main_handler(int, void*) + 0x615
9    0x000000000065b3c4 Continuation::handleEvent(int, void*) + 0x19e
10   0x00000000009ac6e9 Http2Stream::signal_write_event(int) + 0x2e1
11   0x00000000009a6117 Http2Stream::main_event_handler(int, void*) + 0x9e1
12   0x000000000065b3c4 Continuation::handleEvent(int, void*) + 0x19e
13   0x0000000000db27a3 EThread::process_event(Event*, int) + 0x331
14   0x0000000000db2d3b EThread::process_queue(Queue<Event, Event::Link_link>*, int*, int*) + 0x1cb
15   0x0000000000db33d8 EThread::execute_regular() + 0x4c0
16   0x0000000000db4307 EThread::execute() + 0x2e9
17   0x0000000000db098a spawn_thread_internal(void*) + 0xfd
18   0x00002b34a7476ea5 start_thread + 0xc5
19   0x00002b34a81ac8dd clone + 0x6d

Line 955 is this portion of a switch statement in HttpSM::state_watch_for_client_abort(int event, void *data):

  case VC_EVENT_WRITE_COMPLETE:
    // 100-continue handler
    ink_assert(t_state.hdr_info.client_request.m_100_continue_required);
    if (ua_entry->write_buffer) {
      ink_assert(ua_entry->write_vio && !ua_entry->write_vio->ntodo());
      free_MIOBuffer(ua_entry->write_buffer);
      ua_entry->write_buffer = nullptr;
    }
    break;

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions