Commit Graph

8 Commits

Author SHA1 Message Date
Jan Friesse
72f9388083 qnetd-algo-ffsplit: Simplify KAP Tie-breaker logic
Also make it more reliable.

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
2020-11-18 15:05:21 +01:00
Jan Friesse
09c6f78864 qnetd: Fix NULL dereference of client
Shouldn't happen but be rather safe.

Also add more comments.

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
2020-10-27 17:22:46 +01:00
Jan Friesse
7a0201a5c6 qnetd: Add support for keep active partition vote
When tie happens prefer partition with members of
previously active (quorate) partition. This is hard-coded
behavior of LMS algorithm so this setting affects only
FFSplit algorithm. By default it is disabled for backwards
compatibility.

This solves problem with FFSplit when node A (with lowest id) is killed,
node B gets vote and then node A starts up and creates single node
membership and gets vote.

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
2020-09-22 13:35:55 +02:00
Jan Friesse
406b689d36 qdevice: Use EXIT_SUCCESS and EXIT_FAILURE codes
Signed-off-by: Jan Friesse <jfriesse@redhat.com>
2020-08-12 15:52:17 +02:00
Jan Friesse
02080d993b qnetd: Do not call ffsplit_do on shutdown
Signed-off-by: Jan Friesse <jfriesse@redhat.com>
2020-08-12 15:52:17 +02:00
Jan Friesse
c099509e72 qnetd: Use log-common for nodelist debug dump
Signed-off-by: Jan Friesse <jfriesse@redhat.com>
2019-08-12 17:47:40 +02:00
Jan Friesse
bb9dabf945 qnetd: Rename qnetd-log.c to log.c
And remove qnetd_ prefix from function names.

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
2019-08-12 17:47:39 +02:00
Jan Friesse
9a1955a7d6 Initial import from corosync codebase
Used the code from corosync master
(31ddba64a2726bcedf81eb84df2e2da4846832f7)

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
2018-01-23 14:24:36 +01:00