[ https://issues.apache.org/jira/browse/TS-4420?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15277304#comment-15277304 ]
ASF GitHub Bot commented on TS-4420: ------------------------------------ GitHub user jpeach opened a pull request: https://github.com/apache/trafficserver/pull/623 TS-4420: Fix TSHttpTxnParentProxySet crash on parent failure. Fix NULL pointer deref when marking API parents down. Since the API parent caches are fixed, there's no place to store up/down status. Add an API test to exercise API parent failure. You can merge this pull request into a Git repository by running: $ git pull https://github.com/jpeach/trafficserver fix/TS-4420 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/trafficserver/pull/623.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #623 ---- commit 914870dfd885b2a445b2b0a71209413410d01b74 Author: James Peach <jpe...@apache.org> Date: 2016-05-09T23:15:42Z TS-4420: Fix TSHttpTxnParentProxySet crash on parent failure. Fix NULL pointer deref when marking API parents down. Since the API parent caches are fixed, there's no place to store up/down status. Add an API test to exercise API parent failure. ---- > crash on downed API parent > -------------------------- > > Key: TS-4420 > URL: https://issues.apache.org/jira/browse/TS-4420 > Project: Traffic Server > Issue Type: Bug > Components: Parent Proxy, TS API > Reporter: James Peach > Assignee: James Peach > Labels: crash > Fix For: 7.0.0 > > > If you use the API to set the parent proxy and that parent proxy is down, > Traffic Server crashes trying to mark the parent as downed: > {code} > #0 0x0000000000548a2a in ParentConfigParams::markParentDown (this=0x111c650, > result=0x7fffe4b0dc00) at ParentSelection.h:331 > 331 ink_release_assert(result->rec->selection_strategy != NULL); > (gdb) p result > $2 = (ParentResult *) 0x7fffe4b0dc00 > (gdb) p *result > $3 = {result = PARENT_SPECIFIED, hostname = 0x7ffff7e29c19 "127.0.0.1", port > = 10891, retry = false, line_number = -1, rec = 0xeeeeffff, last_parent = 0, > start_parent = 0, wrap_around = false, last_lookup = 0} > (gdb) bt > #0 0x0000000000548a2a in ParentConfigParams::markParentDown (this=0x111c650, > result=0x7fffe4b0dc00) at ParentSelection.h:331 > #1 0x000000000060d8d9 in HttpTransact::handle_response_from_parent > (s=0x7fffe4b0d278) at HttpTransact.cc:3584 > #2 0x000000000060ca3d in HttpTransact::HandleResponse (s=0x7fffe4b0d278) at > HttpTransact.cc:3363 > #3 0x00000000005ee54c in HttpSM::call_transact_and_set_next_state > (this=0x7fffe4b0d200, f=0x60c322 > <HttpTransact::HandleResponse(HttpTransact::State*)>) > at HttpSM.cc:7019 > #4 0x00000000005e83d2 in HttpSM::handle_server_setup_error > (this=0x7fffe4b0d200, event=104, data=0x7fffdc018b20) at HttpSM.cc:5417 > #5 0x00000000005da452 in HttpSM::state_read_server_response_header > (this=0x7fffe4b0d200, event=104, data=0x7fffdc018b20) at HttpSM.cc:1862 > #6 0x00000000005dd19f in HttpSM::main_handler (this=0x7fffe4b0d200, > event=104, data=0x7fffdc018b20) at HttpSM.cc:2600 > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)