HomeClusterLabs Projects

Fix: libcrmservices: Add another place to finalize Start/Stop ops.
c0d99b966c29Unpublished

Unpublished Commit ยท Learn More

Not On Permanent Ref: This commit is not an ancestor of any permanent ref.

Description

Fix: libcrmservices: Add another place to finalize Start/Stop ops.

The comment should explain this pretty well. What was happening was
that an executor regression test was failing because the operation never
gets finalized. Essentially, services__finalize_async_op never gets
called for a unit that doesn't exist.

We typically want this to happen as part of the systemd callback that's
registered in the executor, but this callback will never get called in
this case because there's no systemd message that will make it through
our filter and trigger the callback. JobRemoved won't get sent because
there's no job to remove.

It seems like we could look for a failure from LoadUnit for units that
don't exist, but pacemaker always writes an override unit file which
means the unit will always exist.

Details

Provenance
clumensAuthored on Jan 21 2025, 3:49 PM
Parents
rP1b6c951ffb16: Feature: daemons: Use dbus to detect systemd resources stopping.
Branches
Unknown
Tags
Unknown

Event Timeline