I came across a case where CVMFS_HTTP_PROXY was configured to use a non-functioning squid, and even though it was a client in the middle U.S., it used the CERN backup proxies. I was able to reproduce it on my test machine. cvmfs_talk proxy info showed that the backup proxies were properly sorted such that FNAL backup came first, and it was the assigned proxy group, yet /var/log/messages showed it connecting to CERN:
The problem is that it needs to switch to the fallback proxy to get the geo order, and at that point it couldn't yet sort them so it takes them in the order in which they are defined in the config file. Then after it has retrieved the order, it does not right away reset to use the sorted order.
I guess that after 5 minutes when it retries the original squid it will at that point switch to the closer backup proxy.
As a workaround, I plan to change the fallback proxy order in the OSG config repo, but that's not a complete solution. For one, it doesn't affect the config repo, and it takes a long time for everybody to upgrade that config rpm. Also, there are some users of the OSG config outside of North America.