[jboss-dev-forums] [Design of Messaging on JBoss (Messaging/JBoss)] - ack problem casued by consumer window size
ataylor
do-not-reply at jboss.com
Wed Aug 5 06:43:01 EDT 2009
This is to do with https://jira.jboss.org/jira/browse/JBMESSAGING-1693.
If i set the producer window size to 100 and the ack batch size to -1 the consumer will hang after a couple of messages. In this scenario the send semaphore has 100 and the confirm window size will be 75 (i.e. 100 *.75).
I logged the acquiring of send semaphores and you can see how it hangs as follows
client permits used server receive bytes
| client aquires 53 available 100 53 0
| server receives packet size 53 53 53
| client aquires 25 available 47 78 53
| client aquires 13 available 22 91 53
| server receives packet size 25 91 78
| server frees 78 bytes 13 0
| server receives packetsize 13 13 13
| client aquires 30 available 87 43 13
| client aquires 30 available 57 73 13
| client aquires 30 available 27 (waits) 73 13
| server receives packet size 13 73 43
| server receives packet size 13 73 73
| hang
If i change the confirm window size to 70 % (i.e. 100 * .7) then it works fine.
Thing is i'm struggling with the maths here of what the confirm window size should be in order to always work. any ideas anyone.
We could make this configurable?
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4248073#4248073
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4248073
More information about the jboss-dev-forums
mailing list