10 #ifndef PCMK__CRM_COMMON_ACTION_RELATION_INTERNAL__H 11 #define PCMK__CRM_COMMON_ACTION_RELATION_INTERNAL__H 158 #define pcmk__set_relation_flags(ar_flags, flags_to_set) do { \ 159 ar_flags = pcmk__set_flags_as(__func__, __LINE__, LOG_TRACE, \ 160 "Action relation", "constraint", \ 161 ar_flags, (flags_to_set), \ 172 #define pcmk__clear_relation_flags(ar_flags, flags_to_clear) do { \ 173 ar_flags = pcmk__clear_flags_as(__func__, __LINE__, LOG_TRACE, \ 174 "Action relation", "constraint", \ 175 ar_flags, (flags_to_clear), \ 179 #endif // PCMK__CRM_COMMON_ACTION_RELATION_INTERNAL__H Relation applies only if actions are on same node.
'then' is runnable (and migratable) only if 'first' is runnable
Actions are ordered if on same node (or migration target for migrate_to)
User-configured asymmetric ordering.
Type aliases needed to define scheduler objects.
If 'first' is unrunnable, 'then' becomes a real, unmigratable action.
If 'first' is required, 'then' action for instance on same node is.
Ordering applies even if 'first' runs on guest node created by 'then'.
pcmk__action_relation_flags
Actions are ordered (optionally, if no other flags are set)
Ordering applies only if 'first' is required and on same node as 'then'.
If 'then' is required, 'first' must be added to the transition graph.
If 'first' is required and runnable, 'then' must be in graph.
Relation applies only if 'first' cannot be part of a live migration.
If 'then' action becomes required, 'first' becomes optional.
'then' action is runnable if certain number of 'first' instances are
No relation (compare with equality rather than bit set)