]
Bela Ban resolved JGRP-1014.
----------------------------
Resolution: Done
NAKACK: SET_DIGEST does not overwrite the digest
------------------------------------------------
Key: JGRP-1014
URL:
https://jira.jboss.org/jira/browse/JGRP-1014
Project: JGroups
Issue Type: Bug
Reporter: Bela Ban
Assignee: Bela Ban
Fix For: 2.8
When we set a digest in NAKACK, we do not overwrite an element for a member if it already
exists. With state transfer, the following issue can occur (see [1]):
Scenario #2:
- [NAKACK] D receives B:11 (digest is 11 now for B)
- [NAKACK] D applies the digest: this does NOT reset the digest for B to #10, but it
remains #11 !!
- D delivers B:11 to the app, changes state
- D sets state, overwriting the change from B:11
--> B:11 will NOT get retransmitted as the digest in NAKACK contains it !
--> B:11 is lost
SOLUTION: maybe add a 'state' boolean to the setDigest() method and overwrite if
true
This is a regression in 2.8 only; 2.6.x and 2.4.x handle SET_DIGEST correctly and do
overwrite the digest.
[1]
https://jira.jboss.org/jira/browse/JGRP-1013
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: