It is not a bug. This behavior is by design. When a wide IP is configured to load balance across multiple pools and the desired behavior is for GTM to go to the next pool if its first choice is unavailable then that first pool should have its fallback lb method set to "none".
Example 1:
WIP: www.foo.bar; lb method: Global Availability
Europe pool: VS1, VS2; lb methods RR, RR, Return to DNS
North America pool: VS3, VS4; lb methods RR, RR, Return to DNS
In the above scenario the wip lb method global availability will select Europe, the first pool on the list. If both VS1 and VS2 are unavailable GTM will use the fallback method, return to DNS (or whatever method it is set to), in an attempt to resolve the query while sticking with the first choice pool. GTM will not use the North America pool even if the Europe pool is unavailable. This is the effect of having a fallback lb method set in a pool. If the desired behavior is to use the North America pool when Europe is unavailable then the Europe pool must have fallback lb method set to none like this
Example 2:
WIP: www.foo.bar; lb method: Global Availability
Europe pool: VS1, VS2; lb methods RR, RR, none
North America pool: VS3, VS4; lb methods RR, RR, Return to DNS
Now when the Europe VS are unavailable GTM will move on to the next pool on the list.
Scott