[jboss-jira] [JBoss JIRA] Commented: (JGRP-831) SEQUENCER: incorrect order of delivery when thread pool is used
Bela Ban (JIRA)
jira-events at lists.jboss.org
Mon Oct 6 12:03:08 EDT 2008
[ https://jira.jboss.org/jira/browse/JGRP-831?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12432704#action_12432704 ]
Bela Ban commented on JGRP-831:
-------------------------------
Actually, I might be wrong: because we have NAKACK under SEQUENCER and because we have only a single sender (the coordinator), all messages will be received in the correct order !
We don't need to synchronize on deliver() because NAKACK will deliver messages from the same sender sequentially !
So this might be correct after all ! More investigation needed...
> SEQUENCER: incorrect order of delivery when thread pool is used
> ---------------------------------------------------------------
>
> Key: JGRP-831
> URL: https://jira.jboss.org/jira/browse/JGRP-831
> Project: JGroups
> Issue Type: Bug
> Reporter: Bela Ban
> Assignee: Bela Ban
> Fix For: 2.6.5, 2.7
>
>
> SEQUENCER was written before the concurrent stack was added. We forgot to add a lock (similar to NAKACK and UNICAST) to it, so currently we have unordered delivery when a thread pool is used.
> SOLUTION: acquire a lock before removing a message from the SeqnoTable and release the lock on delivery. The lock cannot be per sender, but has to be for all the senders because we have total (global) ordering requirements.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list