HomeClusterLabs Projects

Fix: attrd: avoid race condition when shutting down

Description

Fix: attrd: avoid race condition when shutting down

This addresses a race condition that can occur when the DC and the attribute
writer are different nodes, and shutting down at the same time. When the DC
controller leaves its Corosync process group, the remaining nodes erase its
transient node attributes (including "shutdown") from the CIB. However if the
(former) DC's attrd is still up, it can win the attribute writer election
called after the original writer leaves. As the election winner, it writes out
all its attributes to the CIB, including "shutdown". The next time it rejoins
the cluster, it will be immediately shut down.

Fixes T138

Details

Provenance
kgaillotAuthored on Aug 3 2023, 1:17 PM
Parents
rP4c50c6aa2c29: Merge pull request #3177 from kgaillot/glib
Branches
Unknown
Tags
Unknown
Tasks
Restricted Maniphest Task