pacemaker 3.0.1-16e74fc4da
Scalable High-Availability cluster resource manager
Loading...
Searching...
No Matches
scheduler_internal.h File Reference
Include dependency graph for scheduler_internal.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  pcmk__scheduler_private
 

Macros

#define pcmk__rsc_info(rsc, fmt, args...)
 
#define pcmk__rsc_debug(rsc, fmt, args...)
 
#define pcmk__rsc_trace(rsc, fmt, args...)
 
#define pcmk__sched_err(scheduler, fmt...)
 
#define pcmk__sched_warn(scheduler, fmt...)
 
#define pcmk__set_scheduler_flags(scheduler, flags_to_set)
 
#define pcmk__clear_scheduler_flags(scheduler, flags_to_clear)
 

Enumerations

enum  pcmk__check_parameters { pcmk__check_last_failure , pcmk__check_active }
 
enum  pcmk__scheduler_flags {
  pcmk__sched_none = 0ULL , pcmk__sched_quorate = (1ULL << 0) , pcmk__sched_symmetric_cluster = (1ULL << 1) , pcmk__sched_processing_error = (1ULL << 2) ,
  pcmk__sched_in_maintenance = (1ULL << 3) , pcmk__sched_fencing_enabled = (1ULL << 4) , pcmk__sched_have_fencing = (1ULL << 5) , pcmk__sched_enable_unfencing = (1ULL << 6) ,
  pcmk__sched_concurrent_fencing = (1ULL << 7) , pcmk__sched_stop_removed_resources = (1ULL << 8) , pcmk__sched_cancel_removed_actions = (1ULL << 9) , pcmk__sched_stop_all = (1ULL << 10) ,
  pcmk__sched_processing_warning = (1ULL << 11) , pcmk__sched_start_failure_fatal = (1ULL << 12) , pcmk__sched_startup_fencing = (1ULL << 14) , pcmk__sched_shutdown_lock = (1ULL << 15) ,
  pcmk__sched_probe_resources = (1ULL << 16) , pcmk__sched_have_status = (1ULL << 17) , pcmk__sched_have_remote_nodes = (1ULL << 18) , pcmk__sched_location_only = (1ULL << 20) ,
  pcmk__sched_sanitized = (1ULL << 21) , pcmk__sched_no_counts = (1ULL << 23) , pcmk__sched_output_scores = (1ULL << 25) , pcmk__sched_show_utilization = (1ULL << 26) ,
  pcmk__sched_validate_only = (1ULL << 27) , pcmk__sched_fence_remote_no_quorum = (1ULL << 28)
}
 

Functions

void pcmk__set_scheduler_defaults (pcmk_scheduler_t *scheduler)
 
time_t pcmk__scheduler_epoch_time (pcmk_scheduler_t *scheduler)
 
void pcmk__update_recheck_time (time_t recheck, pcmk_scheduler_t *scheduler, const char *reason)
 
void pcmk__add_param_check (const xmlNode *rsc_op, pcmk_resource_t *rsc, pcmk_node_t *node, enum pcmk__check_parameters)
 
void pcmk__foreach_param_check (pcmk_scheduler_t *scheduler, void(*cb)(pcmk_resource_t *, pcmk_node_t *, const xmlNode *, enum pcmk__check_parameters))
 
void pcmk__free_param_checks (pcmk_scheduler_t *scheduler)
 

Variables

uint32_t pcmk__warnings
 

Macro Definition Documentation

◆ pcmk__clear_scheduler_flags

#define pcmk__clear_scheduler_flags ( scheduler,
flags_to_clear )
Value:
do { \
(scheduler)->flags = pcmk__clear_flags_as(__func__, __LINE__, \
LOG_TRACE, "Scheduler", crm_system_name, \
(scheduler)->flags, (flags_to_clear), #flags_to_clear); \
} while (0)
uint64_t flags
Definition remote.c:3
char * crm_system_name
Definition utils.c:45
#define LOG_TRACE
Definition logging.h:38
pcmk_scheduler_t * scheduler

Definition at line 284 of file scheduler_internal.h.

◆ pcmk__rsc_debug

#define pcmk__rsc_debug ( rsc,
fmt,
args... )
Value:
crm_log_tag(LOG_DEBUG, ((rsc) == NULL)? "<NULL>" : (rsc)->id, (fmt), ##args)
#define crm_log_tag(level, tag, fmt, args...)
Log a message with a tag (for use with PCMK_trace_tags)
Definition logging.h:328

Definition at line 225 of file scheduler_internal.h.

◆ pcmk__rsc_info

#define pcmk__rsc_info ( rsc,
fmt,
args... )
Value:
crm_log_tag(LOG_INFO, ((rsc) == NULL)? "<NULL>" : (rsc)->id, (fmt), ##args)

Definition at line 215 of file scheduler_internal.h.

◆ pcmk__rsc_trace

#define pcmk__rsc_trace ( rsc,
fmt,
args... )
Value:
crm_log_tag(LOG_TRACE, ((rsc) == NULL)? "<NULL>" : (rsc)->id, (fmt), ##args)

Definition at line 235 of file scheduler_internal.h.

◆ pcmk__sched_err

#define pcmk__sched_err ( scheduler,
fmt... )
Value:
do { \
pcmk__set_scheduler_flags((scheduler), \
crm_err(fmt); \
} while (0)
@ pcmk__sched_processing_error

Definition at line 245 of file scheduler_internal.h.

◆ pcmk__sched_warn

#define pcmk__sched_warn ( scheduler,
fmt... )
Value:
do { \
pcmk__set_scheduler_flags((scheduler), \
crm_warn(fmt); \
} while (0)
@ pcmk__sched_processing_warning

Definition at line 258 of file scheduler_internal.h.

◆ pcmk__set_scheduler_flags

#define pcmk__set_scheduler_flags ( scheduler,
flags_to_set )
Value:
do { \
(scheduler)->flags = pcmk__set_flags_as(__func__, __LINE__, \
LOG_TRACE, "Scheduler", crm_system_name, \
(scheduler)->flags, (flags_to_set), #flags_to_set); \
} while (0)

Definition at line 271 of file scheduler_internal.h.

Enumeration Type Documentation

◆ pcmk__check_parameters

Enumerator
pcmk__check_last_failure 
pcmk__check_active 

Definition at line 35 of file scheduler_internal.h.

◆ pcmk__scheduler_flags

Enumerator
pcmk__sched_none 
pcmk__sched_quorate 
Deprecated
Call pcmk_has_quorum() to check quorum instead
pcmk__sched_symmetric_cluster 
pcmk__sched_processing_error 
pcmk__sched_in_maintenance 
pcmk__sched_fencing_enabled 
pcmk__sched_have_fencing 
Deprecated
To indicate the cluster has a fencing resource, add either a fencing resource configuration or the have-watchdog cluster option to the input CIB
pcmk__sched_enable_unfencing 
pcmk__sched_concurrent_fencing 
pcmk__sched_stop_removed_resources 
pcmk__sched_cancel_removed_actions 
pcmk__sched_stop_all 
pcmk__sched_processing_warning 
pcmk__sched_start_failure_fatal 
pcmk__sched_startup_fencing 
pcmk__sched_shutdown_lock 
pcmk__sched_probe_resources 
pcmk__sched_have_status 
pcmk__sched_have_remote_nodes 
pcmk__sched_location_only 
pcmk__sched_sanitized 
pcmk__sched_no_counts 
pcmk__sched_output_scores 
pcmk__sched_show_utilization 
pcmk__sched_validate_only 
pcmk__sched_fence_remote_no_quorum 

Definition at line 48 of file scheduler_internal.h.

Function Documentation

◆ pcmk__add_param_check()

void pcmk__add_param_check ( const xmlNode * rsc_op,
pcmk_resource_t * rsc,
pcmk_node_t * node,
enum pcmk__check_parameters )

Definition at line 360 of file scheduler.c.

◆ pcmk__foreach_param_check()

void pcmk__foreach_param_check ( pcmk_scheduler_t * scheduler,
void(* cb )(pcmk_resource_t *, pcmk_node_t *, const xmlNode *, enum pcmk__check_parameters) )

Definition at line 387 of file scheduler.c.

◆ pcmk__free_param_checks()

void pcmk__free_param_checks ( pcmk_scheduler_t * scheduler)

Definition at line 410 of file scheduler.c.

◆ pcmk__scheduler_epoch_time()

time_t pcmk__scheduler_epoch_time ( pcmk_scheduler_t * scheduler)

Definition at line 300 of file scheduler.c.

◆ pcmk__set_scheduler_defaults()

void pcmk__set_scheduler_defaults ( pcmk_scheduler_t * scheduler)

Definition at line 57 of file scheduler.c.

◆ pcmk__update_recheck_time()

void pcmk__update_recheck_time ( time_t recheck,
pcmk_scheduler_t * scheduler,
const char * reason )

Definition at line 321 of file scheduler.c.

Variable Documentation

◆ pcmk__warnings

uint32_t pcmk__warnings
extern

Definition at line 19 of file scheduler.c.