-
Enhancement
-
Resolution: Done
-
Major
-
None
-
None
-
None
XNIO NioTcpServer catches enormous amount of IOExceptions if process run out of free file descriptors when accepting a connection. The bad part is that there is no indication in the logs since exception is ignored in NioTcpServer.accept method:
try { accepted = channel.accept(); ... } catch (IOException e) { return null; } finally { ... }
Moreover amount of exceptions thrown is very high for a small time period and it takes over the CPU extensively (not sure this can be improved since exceptions are thrown by java.nio.channels.ServerSocketChannel). We've been able to see this only after analyzing profiler snapshot which kept data about thrown exceptions.
Request for enhancement arose when debugging investigating issues in Undertow which uses XNIO.
- is incorporated by
-
JBEAP-17711 [GSS](7.2.z) Introduce alternative queued acceptor to fix XNIO-258 XNIO-286 XNIO-335 XNIO-265
- Closed
-
JBEAP-17712 [GSS](7.1.z) Introduce alternative queued acceptor to fix XNIO-258 XNIO-286 XNIO-335 XNIO-265
- Closed