Details
Description
The socket listener and readers use a complex synchronization to update the reader's NIO Selector. Updating active selectors is not thread-safe so precautions are required.
However, the current locking choreography results in a serialized distribution of new connections to the parallel socket readers. A slower/busier reader can stall the listener and throttle performance.
The problem manifests as unexpectedly low cpu utilization by the listener and readers (~20-30%) under heavy load. The call queue is shallow when it should be overflowing.
Attachments
Attachments
Issue Links
- breaks
-
HADOOP-10406 TestIPC.testIpcWithReaderQueuing may fail
- Resolved