[jboss-dev-forums] [Design of Messaging on JBoss (Messaging/JBoss)] - Unnecessarily pulling messages

timfox do-not-reply at jboss.com
Wed Oct 11 10:17:09 EDT 2006


When a channel deliveries messages to a receiver that can only accept x messages, the channel delivers as many messages as it can until the receiver returns null to signify it doesn't want any more.

There is a problem with this in a clustered setup, when pulling messages from a remote queue.

The channel will deliver as many messages it can from the local queue, and then, if the receiver is still ready, in some situations will start pulling
messages from a remote queue.

So what can happen is the local queue pulls a message from the remote queue then offers it to the receiver which returns null because it is now full, so we have unnecessaily retrieved a message.

But the receiver knows it is full after accepting the last message.

So I suggest we add a flag on simple delivery to signify "receiver now full", this prevents the channel having to try delivery only to find it is rejected.

Any other solutions ideas?

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3977556#3977556

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3977556



More information about the jboss-dev-forums mailing list