HomeClusterLabs Projects

Fix: libpacemaker: avoid assertion failure if a node_state entry doesn't have…

Description

Fix: libpacemaker: avoid assertion failure if a node_state entry doesn't have an uname yet

It's possible that a node_state entry doesn't have an uname yet.
Previously in that case upon simulate_fencing_action(), crm_simulate
would encounter an assertion failure in pcmk__inject_node() at:

CRM_ASSERT(rc == pcmk_ok);

, since a query by uname wouldn't find the existing node_state entry,
then the unnecessary creation of a new entry would conflict with the
existing one and a new query by uname would still get nothing.

This commit fixes it by finding the existing node_state entry by node id
and adding its uname to the entry rather than creating a new entry.

Details

Provenance
gao-yanAuthored on Jan 25 2023, 6:36 AM
Parents
rP7e8c700c9b1b: Refactor: libpacemaker: unify bailing out in pcmk__inject_node()
Branches
Unknown
Tags
Unknown