Github user marcaurele commented on the issue:
https://github.com/apache/cloudstack/pull/2027
@rhtyd I found one issue with the test and `NioConnection` class. This kind
of intermittent problem are always hard to search for a root cause, but after
lots of logging I finally found why. I updated the PR with the change.
If the main thread running the test is stopped there
https://github.com/apache/cloudstack/blob/master/utils/src/main/java/com/cloud/utils/nio/NioConnection.java#L102
due to context switching, the flag `_isRunning` isn't switched to True by the
time the NioServer connection handler start it's call loop, and it exits on the
`while(_isRunning)`
https://github.com/apache/cloudstack/blob/master/utils/src/main/java/com/cloud/utils/nio/NioConnection.java#L125
directly. Therefore the server isn't listening at all and the connection
cannot be made. The flag `_isRunning` must be turned `true` before submitting
the task/thread.
I still digging into Nio thread handler as we are experiencing some problem
in production when quite a few agents try to connect at the same time to a
management server. None of them can connect.
---
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.
---