pacemaker  2.1.3-ea053b43a
Scalable High-Availability cluster resource manager
pcmki_sched_utils.h
Go to the documentation of this file.
1 /*
2  * Copyright 2004-2022 the Pacemaker project contributors
3  *
4  * The version control history for this file may have further details.
5  *
6  * This source code is licensed under the GNU Lesser General Public License
7  * version 2.1 or later (LGPLv2.1+) WITHOUT ANY WARRANTY.
8  */
9 
10 #ifndef PCMK__PCMKI_PCMKI_SCHED_UTILS__H
11 # define PCMK__PCMKI_PCMKI_SCHED_UTILS__H
12 
13 #include <stdbool.h> // bool
14 #include <glib.h> // GList, GHashTable, gboolean, guint
15 #include <crm/lrmd.h> // lrmd_event_data_t
16 #include <crm/cib.h> // cib_t
17 #include <crm/pengine/pe_types.h>
19 #include <crm/pengine/internal.h>
20 #include <pcmki/pcmki_scheduler.h>
21 #include <pcmki/pcmki_transition.h>
22 #include <pacemaker.h>
23 
24 /* Constraint helper functions */
26 
28 
29 GList *pcmk__copy_node_list(const GList *list, bool reset);
30 
32  pe_resource_t *rsc, enum rsc_role_e filter,
33  gboolean current,
36  enum rsc_role_e filter, gboolean current);
37 gboolean is_child_compatible(pe_resource_t *child_rsc, pe_node_t * local_node, enum rsc_role_e filter, gboolean current);
38 enum pe_action_flags summary_action_flags(pe_action_t * action, GList *children, pe_node_t * node);
41 
42 xmlNode *pcmk__create_history_xml(xmlNode *parent, lrmd_event_data_t *event,
43  const char *caller_version, int target_rc,
44  const char *node, const char *origin);
45 
46 # define LOAD_STOPPED "load_stopped"
47 
48 #endif
GList * pcmk__copy_node_list(const GList *list, bool reset)
pe__location_t * copy_constraint(pe__location_t *constraint)
enum pe_action_flags summary_action_flags(pe_action_t *action, GList *children, pe_node_t *node)
Resource agent executor.
High Level API.
gboolean is_child_compatible(pe_resource_t *child_rsc, pe_node_t *local_node, enum rsc_role_e filter, gboolean current)
const char * action
Definition: pcmk_fence.c:29
pe_action_flags
Definition: pe_types.h:305
pcmk__colocation_t * invert_constraint(pcmk__colocation_t *constraint)
pe_working_set_t * data_set
enum action_tasks clone_child_action(pe_action_t *action)
pe_resource_t * find_compatible_child(pe_resource_t *local_child, pe_resource_t *rsc, enum rsc_role_e filter, gboolean current, pe_working_set_t *data_set)
Cluster Configuration.
xmlNode * pcmk__create_history_xml(xmlNode *parent, lrmd_event_data_t *event, const char *caller_version, int target_rc, const char *node, const char *origin)
rsc_role_e
Possible roles that a resource can be in.
Definition: common.h:92
pe_resource_t * find_compatible_child_by_node(pe_resource_t *local_child, pe_node_t *local_node, pe_resource_t *rsc, enum rsc_role_e filter, gboolean current)
Data types for cluster status.
const char * parent
Definition: cib.c:25
action_tasks
Definition: common.h:61
int copies_per_node(pe_resource_t *rsc)