GitHub user jacksontj opened a pull request:
https://github.com/apache/trafficserver/pull/234
Fixes for TS-3720
The first commit here is to revert @SolidWallOfCode 's commit that has
broken it right now. We actually had a long conversation about this on IRC and
we'd prefer a better solution, but at least for now this has broken
last_failure checking completely. I'm going to take a crack at maintaining a
map of the port health separately, but I'm not sure how hard it'll be.
The second commit makes all 3 LB methods check the status of the real,
instead of just default (which isn't even RR BTW).
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/jacksontj/trafficserver master
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/trafficserver/pull/234.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 #234
----
commit 6a8cb988fb19ab36140da6be737b88bf4e99d63d
Author: Thomas Jackson <[email protected]>
Date: 2015-06-25T23:38:45Z
Revert "TS-3237: Don't segregate DNS results by port."
This reverts commit a8d186224bd5aab95c0d087da251aefb46ba2af9.
Conflicts:
CHANGES
proxy/http/HttpSM.cc
commit f672723ca4910de3d8dcd4805828577a7a1c1676
Author: Thomas Jackson <[email protected]>
Date: 2015-06-26T01:50:28Z
Make HostDBRoundRobin::select_best_http take last_failure time into
consideration for all RR types
In the current setup it only checks that status of the reals if you use
"default RR" (which is actually consistent hashing... but we'll let that
slide). This patch consolidates the alive() check into the HostDBInfo struct,
and then calls if from all 3 LB mechanisms. Since you can control if/when a
host is marked as down in ATS there is no reason to not check.
Issue: TS-3720
----
---
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.
---