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.
---

Reply via email to