[jboss-jira] [JBoss JIRA] Resolved: (JGRP-1347) UNICAST/UNICAST2: message can get delivered multiple times
Bela Ban (JIRA)
jira-events at lists.jboss.org
Mon Jul 25 06:02:23 EDT 2011
[ https://issues.jboss.org/browse/JGRP-1347?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Bela Ban resolved JGRP-1347.
----------------------------
Resolution: Done
Added synchronization around fetching the initial window. After that, messages can be added concurrently
> UNICAST/UNICAST2: message can get delivered multiple times
> ----------------------------------------------------------
>
> Key: JGRP-1347
> URL: https://issues.jboss.org/browse/JGRP-1347
> Project: JGroups
> Issue Type: Bug
> Reporter: Bela Ban
> Assignee: Bela Ban
> Fix For: 2.12.2, 3.0
>
>
> In handleDataReceived(), when our connection is not the same as the conn_id of the incoming message, we (1) remove the window and (2) create a new one and add it.
> However, (1) and (2) are *not* synchronized: when multiple threads go through this code concurrently, we could have a sequence 1-2-1, meaning the window is removed, a new one is created, but then - because another thread got conn_id != our conn_id true, the window will be removed again !
> This means that a message #1 might get added to the new window and delivered to the app, and then the same thing could happen again, because we re-create the window again !
> SOLUTION: synchronization around: check for conn_id match, removal and creation of the new window
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list