-
Bug
-
Resolution: Won't Do
-
Major
-
None
-
None
-
None
From AMQ-5692:
It is possible that a socket write is stuck but the inactivity monitor currently does not time out on a socketWrite.
AbstractInactivityMonitor.java
final void writeCheck() { if (inSend.get()) { LOG.trace("Send in progress. Skipping write check."); return; }
As a result a connection that is stuck in a tcp write will never be taken down due to inactivity. If a client misbehaves the broker will not be able to clear that connection as part of the inactivity monitoring.
Now AMQ-2511 introduced a counter on reachCheck() to detect it a socket read in progress really retrieves data or is stuck.
I propose for a similar mechanism being applied on the writeCheck() operation so that a socket write that is stuck can be detected and the connection can be closed.
- duplicates
-
AMQ-5692 Loading...