Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Segmentation crash caused by setting unavailable_server_retry_responses in parent.config #11005

Closed
jasmine-nahrain opened this issue Jan 24, 2024 · 0 comments · Fixed by #11009

Comments

@jasmine-nahrain
Copy link
Contributor

Got this error when adding unavailable_server_retry_responses to the parent config

(lldb) bt
* thread #2, name = '[ET_NET 0]', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
  * frame #0: 0x000000010016aa78 traffic_server`std::__1::vector<int, std::__1::allocator<int> >::begin[abi:v15006](this=0x0000000000000000) at vector:1420:33
    frame #1: 0x000000010016a9e8 traffic_server`SimpleRetryResponseCodes::contains(this=0x0000000000000000, code=502) at ParentSelection.h:103:32
    frame #2: 0x000000010016a7c4 traffic_server`ParentResult::response_is_retryable(this=0x000000011a10da28, retry_type=PARENT_RETRY_SIMPLE, response_code=HTTP_STATUS_BAD_GATEWAY) const at ParentSelection.h:276:50
    frame #3: 0x0000000100169e88 traffic_server`response_is_retryable(s=0x000000011a10d108, response_code=HTTP_STATUS_BAD_GATEWAY) at HttpTransact.cc:398:25
    frame #4: 0x000000010015581c traffic_server`simple_or_unavailable_server_retry(s=0x000000011a10d108) at HttpTransact.cc:417:11
    frame #5: 0x0000000100152544 traffic_server`HttpTransact::handle_response_from_parent(s=0x000000011a10d108) at HttpTransact.cc:3627:3
    frame #6: 0x000000010013de3c traffic_server`HttpTransact::HandleResponse(s=0x000000011a10d108) at HttpTransact.cc:3491:5
    frame #7: 0x00000001000dea30 traffic_server`HttpSM::call_transact_and_set_next_state(this=0x000000011a10d000, f=0x0000000000000000)(HttpTransact::State*)) at HttpSM.cc:7630:5
    frame #8: 0x00000001000e8568 traffic_server`HttpSM::handle_api_return(this=0x000000011a10d000) at HttpSM.cc:1713:5
    frame #9: 0x00000001000da128 traffic_server`HttpSM::do_api_callout(this=0x000000011a10d000) at HttpSM.cc:423:5
    frame #10: 0x00000001000efa0c traffic_server`HttpSM::state_read_server_response_header(this=0x000000011a10d000, event=100, data=0x0000000128887938) at HttpSM.cc:2150:7
    frame #11: 0x00000001000d99f4 traffic_server`HttpSM::main_handler(this=0x000000011a10d000, event=100, data=0x0000000128887938) at HttpSM.cc:2757:5
    frame #12: 0x0000000100005594 traffic_server`Continuation::handleEvent(this=0x000000011a10d000, event=100, data=0x0000000128887938) at I_Continuation.h:227:12
    frame #13: 0x00000001004a8f90 traffic_server`read_signal_and_update(event=100, vc=0x0000000128887740) at UnixNetVConnection.cc:83:24
    frame #14: 0x00000001004a8468 traffic_server`read_from_net(nh=0x000000011816c400, vc=0x0000000128887740, thread=0x0000000118168000) at UnixNetVConnection.cc:323:11
    frame #15: 0x00000001004a77ec traffic_server`UnixNetVConnection::net_read_io(this=0x0000000128887740, nh=0x000000011816c400, lthread=0x0000000118168000) at UnixNetVConnection.cc:852:3
    frame #16: 0x0000000100494e7c traffic_server`NetHandler::process_ready_list(this=0x000000011816c400) at UnixNet.cc:421:11
    frame #17: 0x0000000100495648 traffic_server`NetHandler::waitForActivity(this=0x000000011816c400, timeout=60000000) at UnixNet.cc:558:3
    frame #18: 0x00000001004dc2c0 traffic_server`EThread::execute_regular(this=0x0000000118168000) at UnixEThread.cc:292:14
    frame #19: 0x00000001004dc7a8 traffic_server`EThread::execute(this=0x0000000118168000) at UnixEThread.cc:353:11
    frame #20: 0x00000001004da654 traffic_server`spawn_thread_internal(a=0x00006000020cf840) at Thread.cc:78:12
    frame #21: 0x0000000185eb1034 libsystem_pthread.dylib`_pthread_start + 136

To reproduce:

  1. Set unavailable_server_retry_responses in parent.config
    1. e.g. unavailable_server_retry_responses=“502”
  2. parent_retry can be any of the options
@masaori335 masaori335 added this to Open Issues in 9.2.x Branch and Release via automation Jan 24, 2024
@jasmine-nahrain jasmine-nahrain changed the title [9.2.x] Segmentation crash caused by setting unavailable_server_retry_responses in parent.config Segmentation crash caused by setting unavailable_server_retry_responses in parent.config Jan 24, 2024
@zwoop zwoop moved this from Open Issues to Ready to Merge in 9.2.x Branch and Release Feb 16, 2024
@zwoop zwoop moved this from Ready to Merge to Done for v9.2.3 in 9.2.x Branch and Release Feb 16, 2024
@zwoop zwoop removed this from Done for v9.2.3 in 9.2.x Branch and Release Feb 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants