Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
2.0.16
-
None
-
None
Description
We synchronize on the selector field in NioProcessor, but this field is accessed without synchronization :
protected void doDispose() throws Exception { selector.close(); }
and :
protected boolean isBrokenConnection() throws IOException { // A flag set to true if we find a broken session boolean brokenSession = false; synchronized (selector) { ...
We should use another lock mechanism.