[
https://issues.apache.org/jira/browse/TS-4388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15266968#comment-15266968
]
ASF subversion and git services commented on TS-4388:
-----------------------------------------------------
Commit 060b8e8bd0d794ee038595e42e3e104d6c89371a in trafficserver's branch
refs/heads/master from [[email protected]]
[ https://git-wip-us.apache.org/repos/asf?p=trafficserver.git;h=060b8e8 ]
TS-4388: Fix global hook handling in API tests.
Many of the API regression tests work by trampolining off a global
hook (which is really what you have to do). However, there's no way
to unregister a global hook, so once the test is done, it needs to
be careful to co-operate with the remaining tests. We clear the
continuation data, and if is is clear, we either ignore the event
or re-enable the HTTP transaction.
> parent proxy crashes with TSHttpTxnParentProxySet
> -------------------------------------------------
>
> Key: TS-4388
> URL: https://issues.apache.org/jira/browse/TS-4388
> Project: Traffic Server
> Issue Type: Bug
> Components: Plugins
> Reporter: James Peach
> Assignee: James Peach
> Fix For: 7.0.0
>
>
> If you call {{TSHttpTxnParentProxySet}} to explicitly set a parent proxy
> target, the proxy request will fail because it is not initialized correctly.
> {code}
> [Switching to Thread 0x7ffff5023700 (LWP 24309)]
> 0x000000000061da0a in HttpTransact::build_request (s=0x7fffe2f43278,
> base_request=0x7fffe2f43990,
> outgoing_request=0x7fffe2f43a10, outgoing_version=...) at
> HttpTransact.cc:7852
> 7852 } else if (s->current.request_to == PARENT_PROXY &&
> !s->parent_result.rec->parent_is_proxy &&
> (gdb) p s->current.request_to
> $1 = HttpTransact::PARENT_PROXY
> (gdb) p s->parent_result
> $2 = {r = PARENT_SPECIFIED, hostname = 0x7ffff7e29c19 "127.0.0.1", port =
> 10090, retry = false, line_number = -1, epoch = 0x0,
> rec = 0xeeeeffff, last_parent = 0, start_parent = 0, wrap_around = false,
> last_lookup = 0}
> (gdb)
> {code}
> The corresponding {{HttpTransact.cc}} code is:
> {code}
> } else if (s->current.request_to == PARENT_PROXY &&
> !s->parent_result.rec->parent_is_proxy &&
> outgoing_request->is_target_in_url()) {
> // If the parent is an origin server remove the hostname from the url.
> DebugTxn("http_trans", "[build_request] removing target from URL for a
> parent origin.");
> HttpTransactHeaders::remove_host_name_from_url(outgoing_request);
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)