GitHub user jpeach opened a pull request:
https://github.com/apache/trafficserver/pull/606
TS-4388: Fix TSHttpTxnParentProxySet
This PR fixes ``TSHttpTxnParentProxySet``.
The first two commits are minor cleanups of cruft. The third one fixes the
API tests so that they don't interfere with each other when they register
multiple global hooks. The final one actually fixes the
``TSHttpTxnParentProxySet`` API, primarily by restricting access to private
``ParentResult`` data and providing accessors that enforce the correct policy.
I've tested that this works correctly with the tests and with my plugin. I
don't have any way to test that I haven't broken the various parent retry
features.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/jpeach/trafficserver jpeach/parent-proxy-api
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/trafficserver/pull/606.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 #606
----
commit 295908ee95fed93c469a1b96508d0fab12609650
Author: James Peach <[email protected]>
Date: 2016-04-27T18:12:11Z
TS-4388: Remove useless record API defines.
commit 10b81dbfead0238a62d6dde832172e6f14528da6
Author: James Peach <[email protected]>
Date: 2016-04-27T18:20:25Z
TS-4388: Remove unused HttpConfig::parent_proxy_routing_enable.
commit 1c32eba4449787153b5b232b69c1e30497fb0647
Author: James Peach <[email protected]>
Date: 2016-04-28T20:02:38Z
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 waht 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.
commit 2cf6f9a99e1176a8d97529ef9c4eb4d0a8aa437a
Author: James Peach <[email protected]>
Date: 2016-04-27T22:16:32Z
TS-4388: TSHttpTxnParentProxySet crashes in parent selection.
Fix ParentResult to handle the case where the parent is specified
by the TSHttpTxnParentProxySet API. Encapsulate the internals of
the result better so that it is easier for the HTTP state machine
to do the right thing.
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---