[jboss-jira] [JBoss JIRA] (JGRP-1317) STABLE: compress STABLE messages
Bela Ban (JIRA)
jira-events at lists.jboss.org
Wed Aug 28 03:02:26 EDT 2013
[ https://issues.jboss.org/browse/JGRP-1317?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12799757#comment-12799757 ]
Bela Ban commented on JGRP-1317:
--------------------------------
Solved as suggested:
* Only the ViewId and the digest seqno pairs are sent
* The seqnos are sent in order of members ranks in the view, e.g. if we have A|5=\{A,B,C\}, then we'd send
{noformat}
A|5 20:20 15:20 0:0
{noformat}
A|5 is the ViewId, 20:20 the digest for A, 15:20 for B and 0:0 for C.
* When receiving the digest, if the ViewId shipped with the digest and the current ViewId don't match, the STABLE or STABILITY message is discarded
* If the view IDs match, a digest is created whose members point to the members of the *current view*. The advantage here is that the elements of Digest.members are only references to existing addresses in the view, so memory is saved
> STABLE: compress STABLE messages
> --------------------------------
>
> Key: JGRP-1317
> URL: https://issues.jboss.org/browse/JGRP-1317
> Project: JGroups
> Issue Type: Feature Request
> Reporter: Bela Ban
> Assignee: Bela Ban
> Fix For: 3.4
>
>
> For large clusters, STABLE messages are quite large, and should be compressed to be sent over the wire.
> STABLE messages are sent between members in the same view, so we could only send the ViewId + highest_delivered/highest_received seqnos.
> Everybody who receives a STABLE message grabs the View associated with the ViewId (should be the current view !) and creates a Digest based on the View and the long[] array.
> Further optimization:
> - Canonicalize digests: if everyone has (14) 20, 22, then we could write it once, give it an ID of (say) 1 and then only refer to 1 again if we encounter the same digest. Actually, as a matter of fact, most of the digests would be the same, so this optimization could have a big effect !
--
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