Github user aledsage commented on the issue:
https://github.com/apache/brooklyn-server/pull/497
LGTM. It's slightly concerning that `JcloudsUtil.getFirstReachableAddress`
might now block until the reachability check on the VM's private (unreachable)
address times out. But I presume that is what you're alluding to for "some
other work on JcloudsLocation".
To elaborate on my concern, imagine we are (somehow) given the IPs in
order: `[10.0.0.1, 10.0.0.2]` but where only 10.0.0.2 is reachable. We might
very quickly establish that `10.0.0.2` is reachable (in its future), while the
check for `10.0.0.1` might take a really long time (e.g. because it's behind a
firewall that just doesn't respond at all). When iterating over the the results
of `tryReachable()` in-order, we'll pause for a long time on the future.get()
of `10.0.0.1`, before we move onto `10.0.0.2` (which will have been evaluated
really quickly).
I don't know whether it's worth trying to avoid that. One way we could do
it is for `getReachableAddresses()` to take a callback argument, so it can be
told immediately about each success/fail/timeout, and also told when everything
has been attempted. That would be a more complicated (internal) API to use. Is
it worth it?
---
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.
---