[jboss-jira] [JBoss JIRA] (JGRP-1821) SEQUENCER2: new impl of total order protocol
Bela Ban (JIRA)
issues at jboss.org
Wed Apr 2 10:37:13 EDT 2014
Bela Ban created JGRP-1821:
------------------------------
Summary: SEQUENCER2: new impl of total order protocol
Key: JGRP-1821
URL: https://issues.jboss.org/browse/JGRP-1821
Project: JGroups
Issue Type: Feature Request
Reporter: Bela Ban
Assignee: Bela Ban
Fix For: 3.5
When in {{SEQUENCER}} a member P wants to send a multicast message M, it unicasts it to the coordinator, who multicasts it on behalf of P.
The new impl {{SEQUENCER2}} is different:
* P asks the coord for a seqno
* The coord responds with a (monotonically increasing) seqno
* P multicasts M with that seqno
* Everyone uses one global {{Table}} to deliver messages and weed out duplicates
Advantages:
# A sender sends messages itself, so the sequencer doesn't need to do sending (and potential retransmissions)
# Compared to {{SEQUENCER}}, the data is only sent and marshalled once (better for large messages)
# A sender grabs entire ranges of seqnos, so this should be efficient
The edge case handling though requires some work, e.g.
* A member B crashes after having received a seqno (e.g. 4)
** The sequencer will give out 5 next, but since nobody received 4, all subsequent messages will get stuck, waiting for 4
* The sequencer (coord) dies or leaves
** The next-in-line probably needs to run some reconciliation protocol, asking all members for their highest received seqnos
** Messages like 4 would get marked as dummy, removed from table and dropped
--
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