pacemaker  2.1.7-0f7f88312f
Scalable High-Availability cluster resource manager
Macros | Enumerations | Functions
pcmk_sched_ordering.c File Reference
#include <crm_internal.h>
#include <inttypes.h>
#include <stdbool.h>
#include <glib.h>
#include <crm/crm.h>
#include <pacemaker-internal.h>
#include "libpacemaker_private.h"
Include dependency graph for pcmk_sched_ordering.c:

Go to the source code of this file.

Macros

#define EXPAND_CONSTRAINT_IDREF(__set, __rsc, __name)
 
#define handle_restart_type(rsc, kind, flag, flags)
 

Enumerations

enum  pe_order_kind { pe_order_kind_optional, pe_order_kind_mandatory, pe_order_kind_serialize }
 
enum  ordering_symmetry { ordering_asymmetric, ordering_symmetric, ordering_symmetric_inverse }
 

Functions

void pcmk__new_ordering (pcmk_resource_t *first_rsc, char *first_action_task, pcmk_action_t *first_action, pcmk_resource_t *then_rsc, char *then_action_task, pcmk_action_t *then_action, uint32_t flags, pcmk_scheduler_t *sched)
 
void pcmk__unpack_ordering (xmlNode *xml_obj, pcmk_scheduler_t *scheduler)
 
void pcmk__disable_invalid_orderings (pcmk_scheduler_t *scheduler)
 
void pcmk__order_stops_before_shutdown (pcmk_node_t *node, pcmk_action_t *shutdown_op)
 
void pcmk__apply_orderings (pcmk_scheduler_t *sched)
 
void pcmk__order_after_each (pcmk_action_t *after, GList *list)
 
void pcmk__promotable_restart_ordering (pcmk_resource_t *rsc)
 

Macro Definition Documentation

◆ EXPAND_CONSTRAINT_IDREF

#define EXPAND_CONSTRAINT_IDREF (   __set,
  __rsc,
  __name 
)
Value:
do { \
__name); \
if (__rsc == NULL) { \
pcmk__config_err("%s: No resource found for %s", __set, __name);\
} \
} while (0)
GList * resources
Resources in cluster.
Definition: scheduler.h:196
G_GNUC_INTERNAL pcmk_resource_t * pcmk__find_constraint_resource(GList *rsc_list, const char *id)
pcmk_scheduler_t * scheduler

Definition at line 32 of file pcmk_sched_ordering.c.

◆ handle_restart_type

#define handle_restart_type (   rsc,
  kind,
  flag,
  flags 
)
Value:
do { \
if (((kind) == pe_order_kind_optional) \
&& ((rsc)->restart_type == pe_restart_restart)) { \
pe__set_order_flags((flags), (flag)); \
} \
} while (0)
uint64_t flags
Definition: remote.c:215

Definition at line 384 of file pcmk_sched_ordering.c.

Enumeration Type Documentation

◆ ordering_symmetry

Enumerator
ordering_asymmetric 
ordering_symmetric 
ordering_symmetric_inverse 

Definition at line 26 of file pcmk_sched_ordering.c.

◆ pe_order_kind

Enumerator
pe_order_kind_optional 
pe_order_kind_mandatory 
pe_order_kind_serialize 

Definition at line 20 of file pcmk_sched_ordering.c.

Function Documentation

◆ pcmk__apply_orderings()

void pcmk__apply_orderings ( pcmk_scheduler_t sched)

Definition at line 1389 of file pcmk_sched_ordering.c.

◆ pcmk__disable_invalid_orderings()

void pcmk__disable_invalid_orderings ( pcmk_scheduler_t scheduler)

Definition at line 1105 of file pcmk_sched_ordering.c.

◆ pcmk__new_ordering()

void pcmk__new_ordering ( pcmk_resource_t first_rsc,
char *  first_action_task,
pcmk_action_t first_action,
pcmk_resource_t then_rsc,
char *  then_action_task,
pcmk_action_t then_action,
uint32_t  flags,
pcmk_scheduler_t sched 
)

Definition at line 525 of file pcmk_sched_ordering.c.

◆ pcmk__order_after_each()

void pcmk__order_after_each ( pcmk_action_t after,
GList *  list 
)

Definition at line 1448 of file pcmk_sched_ordering.c.

◆ pcmk__order_stops_before_shutdown()

void pcmk__order_stops_before_shutdown ( pcmk_node_t node,
pcmk_action_t shutdown_op 
)

Definition at line 1130 of file pcmk_sched_ordering.c.

◆ pcmk__promotable_restart_ordering()

void pcmk__promotable_restart_ordering ( pcmk_resource_t rsc)

Definition at line 1470 of file pcmk_sched_ordering.c.

◆ pcmk__unpack_ordering()

void pcmk__unpack_ordering ( xmlNode *  xml_obj,
pcmk_scheduler_t scheduler 
)

Definition at line 1000 of file pcmk_sched_ordering.c.