]
Bela Ban updated JGRP-1901:
---------------------------
Fix Version/s: 3.6.2
(was: 3.6.1)
GMS: view installation by consensus
-----------------------------------
Key: JGRP-1901
URL:
https://issues.jboss.org/browse/JGRP-1901
Project: JGroups
Issue Type: Feature Request
Reporter: Bela Ban
Assignee: Bela Ban
Fix For: 3.6.2
Investigate whether view installation should optionally be done via 2PC. Example:
* View is A,B,C,D, splits into A,B and C,D
* Before AB is installed in A and B, view A,B,C is installed
** (C hasn't been suspected yet. This can happen with {{FD}})
Infinispan's rebalancing algorithm has problems with this, as it tries to assign
state to C which however isn't reachable from the A,B side of the network partition.
It would be better if A,B,C,D went directly to A,B and C,D
Investigate whether we should add a property to {{GMS}} which defines whether to use 2PC
for view installation (default would be {{false}}). The algorithm would work as follows:
* Send a {{PREPARE_VIEW(view)}} message
* When all responses have been received -> send a {{COMMIT_VIEW}} message
* Else
** Inject SUSPECT(C) event for all misisng acks OR
** Set a timer to go off in N ms -> when it fires, send the {{COMMIT_VIEW}} msg
** If another view is installed before the tmer goes off (e.g. A,B) -> kill the timer