Now that we are generating the set of possible peers before attempting
to connect. The retry_on_error directive is no longer repeatedly
cycling through the peer selecting process failing on one peer until
that peer works.
The maybe-direct case seems to have been depending on this behaviour to
locate alternative peers before going DIRECT. The attached patch seeks
to make the maybe-direct case produce a list of all available parents
with the specific algorithm choice first.
Amos
--
Please be using
Current Stable Squid 2.7.STABLE9 or 3.1.15
Beta testers wanted for 3.2.0.12
=== modified file 'src/peer_select.cc'
--- src/peer_select.cc 2011-09-18 00:54:22 +0000
+++ src/peer_select.cc 2011-09-18 01:18:39 +0000
@@ -435,8 +435,10 @@
if (Config.onoff.prefer_direct)
peerGetSomeDirect(ps);
- if (request->flags.hierarchical || !Config.onoff.nonhierarchical_direct)
+ if (request->flags.hierarchical || !Config.onoff.nonhierarchical_direct) {
peerGetSomeParent(ps);
+ peerGetAllParents(ps);
+ }
if (!Config.onoff.prefer_direct)
peerGetSomeDirect(ps);