[jboss-jira] [JBoss JIRA] (JGRP-1737) TP: ignore DONT_BUNDLE flag for sending of messages

Bela Ban (JIRA) jira-events at lists.jboss.org
Tue Nov 12 07:11:05 EST 2013


    [ https://issues.jboss.org/browse/JGRP-1737?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12922716#comment-12922716 ] 

Bela Ban commented on JGRP-1737:
--------------------------------

The question is whether it makes sense to handle messages in a batch which are tagged as {{DONT_BUNDLE}} but *not* as {{OOB}}. 
For example, if we have {{1 (reg) 2 (reg) 3 (reg | dont_bundle) 4 (reg) 5(reg)}}, then it doesn't make any sense to deliver 3 on its separate thread (because dont_bundle is set), as it will get delivered only *after* 1 and 2 have been delivered.
We should therefore perhaps only 'unbundle' messages marked as {{OOB | DONT_BUNDLE}}, and deliver them via the OOB thread pool (or the INTERNAL thread pool if the INTERNAL flag is also set).
                
> TP: ignore DONT_BUNDLE flag for sending of messages
> ---------------------------------------------------
>
>                 Key: JGRP-1737
>                 URL: https://issues.jboss.org/browse/JGRP-1737
>             Project: JGroups
>          Issue Type: Enhancement
>            Reporter: Bela Ban
>            Assignee: Bela Ban
>             Fix For: 3.5
>
>
> Currently, messages tagged with DONT_BUNDLE are sent separately, not as a message bundle through a bundler. On the receiver, they are passed up as single messages, ie. on a separate thread.
> Sending a lot of single (possibly small) messages is inefficient; it would be better to bundle *all* message on the sender side. This requires a bundler which sends single messages immediately when no other messages are available to be sent.
> SOLUTION (sender):
> * If the bundler is *not* "old", ignore the DONT_BUNDLE flag and send the message through the bundler
> * Else, same as now; send the message immediately as single message
> SOLUTION (receiver):
> * When reading the message list and creating the 4 batches (regular, oob, oob+internal, internal), if a message has DONT_BUNDLE set, pass it as single message to the corresponding thread pool and don't add it to the batch
> This has the advantage that we have a more efficient way of sending messages (as message bundles), yet the behavior (and performance) at the receiver is the same as now

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the jboss-jira mailing list