brooklyn-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From aledsage <...@git.apache.org>
Subject [GitHub] brooklyn-server issue #344: JmxService tests marked as integration
Date Fri, 23 Sep 2016 10:30:32 GMT
Github user aledsage commented on the issue:

    https://github.com/apache/brooklyn-server/pull/344
  
    Re sneaking the change into #340 - next time can you do it in a separate PR, even if you
merge that PR yourself immediately!
    
    ---
    Maybe it is just the problem of socket `time_wait` status. But I'd have thought it would
be more deterministic, and would fail on other environments (rather than just the shared jenkins)
if that is the case.
    
    I guess the alternative (that the port is snapped up by another process in the few millisecond
window) is pretty unlikely, particularly with unusual port numbers like this!
    
    I wonder if it could be more subtle: the socket might already be in a time_wait state;
we call `Networking.isPortAvailable` using `setReuseAddress` so it works; we then call the
`JmxService` without `setReuseAddress` and it fails because the original socket is still there
in `time_wait` state. Or is that nonsense: does opening a socket with `setReuseAddress` cause
the previous time_wait socket to close immediately?
    
    ---
    I don't particularly like us waiting up to 3 minutes in our test (as per your observation
in #329 that we want tests to be fast). I'd prefer (medium-term) if we could retry with different
port numbers instead.
    
    But happy to see if your fix works!


---
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 infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

Mime
View raw message