[jboss-jira] [JBoss JIRA] (JGRP-1458) SEQUENCER delivers the same message more than once

Bela Ban (JIRA) jira-events at lists.jboss.org
Thu May 10 02:19:18 EDT 2012


     [ https://issues.jboss.org/browse/JGRP-1458?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bela Ban resolved JGRP-1458.
----------------------------

    Resolution: Done

    
> SEQUENCER delivers the same message more than once
> --------------------------------------------------
>
>                 Key: JGRP-1458
>                 URL: https://issues.jboss.org/browse/JGRP-1458
>             Project: JGroups
>          Issue Type: Bug
>    Affects Versions: 3.0.9
>            Reporter: David Hotham
>            Assignee: Bela Ban
>             Fix For: 3.0.10, 3.1
>
>
> This issue is certainly exposed by my running with a retransmit task in SEQUENCER (per JGRP-1449).  However, I think that it could be hit anyway at a change of view; and I'm sure it's a bug!
> In SeqnoTable$Entry.add(seqno), the final branch "seqno > next_to_receive" always returns true.  But it should return the return code from seqnos.add(seqno) (ie, false if the seqno has already been added).
> The consequence is that Sequencer's received_table.add() returns true even for a message that has already been delivered, so the message is delivered a second time.
> Looking at this code raised another question, for which I should maybe raise a separate ticket.  Let me know if you'd prefer me to do so.
> I think that when SeqnoTable.add() creates a new Entry, it always creates Entry(0) (because SeqnoTable.next_to_receive is always 0).  Is that true? and if so, is it correct? 
> A might join a group long after some other member B has already broadcast the messages with sequence numbers 0,1,2, say.  Then since A will never receive those messages, isn't it going to end up with an Entry for B in which the Set of seqnos just grows indefinitely?
> It looks to me as though maybe when it creates a new entry it should do so with Entry(seqno) rather than Entry(next_to_receive).  Or have I misunderstood something?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jboss-jira mailing list