]
Yong Hao Gao updated JBMESSAGING-1790:
--------------------------------------
Fix Version/s: 1.4.8.SP6
(was: 1.4.8.SP5)
A single lagging JBM topic subscriber can cause all publishes to lag
--------------------------------------------------------------------
Key: JBMESSAGING-1790
URL:
https://issues.jboss.org/browse/JBMESSAGING-1790
Project: JBoss Messaging
Issue Type: Bug
Components: Messaging Core
Affects Versions: 1.4.3.GA
Environment: JBoss 5.1.0_GA, JDK 1.6.0_14 and JDK 1.6.0_18, multiple versions of
Windows (2008, 2003, Vista)
Reporter: Jason Burton
Assignee: Yong Hao Gao
Fix For: 1.4.8.SP6
Attachments: stack_traces.zip
We have an application that makes heavy use of JMS topics. The attached stack traces
lead me to believe that we have one client that has some sort of network problem and that
JBM is trying to write messages to it. Evidently this client's socket isn't
working anymore. That's no problem (and maybe could be expected), but this causes
every other client publish to hang.
The attached stack traces are from JBoss and taken 10 seconds apart during an occurence
of this. During this time, we observed that one or more calls to
JBossMessageProducer.publish() took 50 seconds to complete (normally takes 2-5
milliseconds). Best I can tell, the "WorkManager(2)-3" thread is the culprit.
Over the 50 seconds, it seemed to be stuck in a socketWrite() and has object
<0x143a2250> locked. There are a few other publishing threads waiting on that
lock.
I'm pretty sure this relates to a closed bug:
https://jira.jboss.org/jira/browse/JBMESSAGING-1220
This bug report states to run a client out of memory to reproduce the problem, but at the
point of the attached server stack traces. there aren't any clients that are out of
memory. We have been able to reproduce this by running a client out of memory, though.
That bug report stated to reduce the prefetchSize to a number of messages whose size would
be under the TCP window size. Best I can tell by searching, the TCP window size defaults
to 16K on Windows. It is definitely possible that the messages we send are larger than
16K, so even setting the prefetchSize to 1 would be larger that the TCP window size.
Let me know if you need any more information.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: