Skip to content

Next hop strategy with bad 'to' URL causes TS crash #7739

Description

@ywkaras

Here is the trace output:

[Apr 23 17:20:39.860] [ET_NET 3] DEBUG: <HttpTransact.cc:3683 (handle_response_from_parent)> (http_trans) [0] [handle_response_from_parent] 1 per parent attempts exhausted
[Apr 23 17:20:39.861] [ET_NET 3] DEBUG: <NextHopConsistentHash.cc:248 (findNextHop)> (next_hop) [0] not firstcall, line_number: 0, result: PARENT_SPECIFIED
[Apr 23 17:20:39.861] [ET_NET 3] DEBUG: <NextHopConsistentHash.cc:190 (getHashKey)> (next_hop) [0] the parent selection over-ride url is not set, using default path: objwrong.comhttp://wrong.com/obj.
[Apr 23 17:20:39.861] [ET_NET 3] DEBUG: <NextHopConsistentHash.cc:290 (findNextHop)> (next_hop) [0] Initial parent lookups: 2723
traffic_server: received signal 11 (Segmentation fault)
traffic_server - STACK TRACE: 
traffic_server(_Z19crash_logger_invokeiP9siginfo_tPv+0x8e)[0x4fde2e]
/lib64/libpthread.so.0(+0xf680)[0x7fad331bf680]
traffic_server(_ZN21NextHopConsistentHash11findNextHopEP13tsapi_httptxnPvl+0x889)[0x634c79]
traffic_server[0x5d2c38]
traffic_server(_ZN12HttpTransact27handle_response_from_parentEPNS_5StateE+0x273)[0x5dec83]
traffic_server(_ZN12HttpTransact14HandleResponseEPNS_5StateE+0x655)[0x5e00a5]
traffic_server(_ZN6HttpSM32call_transact_and_set_next_stateEPFvPN12HttpTransact5StateEE+0x27)[0x580e67]
traffic_server(_ZN6HttpSM32state_send_server_request_headerEiPv+0x17f)[0x594bdf]
traffic_server(_ZN6HttpSM12main_handlerEiPv+0x108)[0x596f78]
traffic_server[0x7dfa7e]
traffic_server(_Z15write_to_net_ioP10NetHandlerP18UnixNetVConnectionP7EThread+0x6d8)[0x7e57e8]
traffic_server(_ZN10NetHandler18process_ready_listEv+0x1f6)[0x7d13b6]
traffic_server(_ZN10NetHandler15waitForActivityEl+0x245)[0x7d1715]
traffic_server(_ZN7EThread15execute_regularEv+0x66a)[0x8287ea]
traffic_server(_ZN7EThread7executeEv+0x1a2)[0x828a52]
traffic_server[0x826e2a]
/lib64/libpthread.so.0(+0x7dd5)[0x7fad331b7dd5]
/lib64/libc.so.6(clone+0x6d)[0x7fad324beb3d]

The crash looks to be in NextHopConsistentHash::findNextHop(tsapi_httptxn*, void*, long).

Here is the Au test that caused this crash: https://github.com/ywkaras/trafficserver/blob/StrategiesAutestCrash/tests/gold_tests/next_hop/strategies_ch/strategies_ch.test.py

Activity

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

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions