BUG/MEDIUM: peers: same table updates re-pushed after a re-connect
Some updates are pushed using an incremental update message after a re-connection whereas the origin is forgotten by the peer. These updates are never correctly acknowledged. So they are regularly re-pushed after an idle timeout and a re-connect. The fix consists to use an absolute update message in some cases.
This commit is contained in:
parent
c703a9d296
commit
a6a0998529
|
@ -250,8 +250,8 @@ static int peer_prepare_updatemsg(struct stksess *ts, struct shared_table *st, c
|
|||
/* construct message */
|
||||
|
||||
/* check if we need to send the update identifer */
|
||||
if (st->last_pushed && ts->upd.key > st->last_pushed && (ts->upd.key - st->last_pushed) == 1) {
|
||||
use_identifier = 0;
|
||||
if (!st->last_pushed || ts->upd.key < st->last_pushed || ((ts->upd.key - st->last_pushed) != 1)) {
|
||||
use_identifier = 1;
|
||||
}
|
||||
|
||||
/* encode update identifier if needed */
|
||||
|
|
Loading…
Reference in New Issue