[
https://issues.jboss.org/browse/JGRP-1396?page=com.atlassian.jira.plugin....
]
Bela Ban commented on JGRP-1396:
--------------------------------
OK, I think the ultimate solution is now:
#1 Extend RetransmitTable to keep track of low, hd and hr. Remove() or removeMany() can
also advance low if nullify=true
#2 Use RetransmitTable in NAKACK directly, rather than NakReceiverWindow, trash the latter
(ditto for UNICAST2)
#3 Create *one* single retransmit task, periodically scanning the RetransmiTables for gaps
and triggering retransmission if needed
NAKACK2: merge NakReceiverWindow and Retransmitter
--------------------------------------------------
Key: JGRP-1396
URL:
https://issues.jboss.org/browse/JGRP-1396
Project: JGroups
Issue Type: Enhancement
Reporter: Bela Ban
Assignee: Bela Ban
Fix For: 3.1
Both NakReceiverWindow and Retransmitter use their own data structures to keep a list of
messages received (NRW) and seqnos to be retransmitted (Retrasmitter). This is redundant
and costly memory-wise.
I suggest let's merge the 2 classes, or at least let them share the data structure
which keeps track of received messages.
Suggestion II: create a ring buffer with a (changeable) capacity that keeps track of
received messages and messages to be retransmitted.
--
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