MCPcopy Create free account
hub / github.com/ClusterLabs/pacemaker / child_promoting_constraints

Function child_promoting_constraints

pengine/master.c:32–66  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

30static int master_score(resource_t * rsc, node_t * node, int not_set_value);
31
32static void
33child_promoting_constraints(clone_variant_data_t * clone_data, enum pe_ordering type,
34 resource_t * rsc, resource_t * child, resource_t * last,
35 pe_working_set_t * data_set)
36{
37 if (child == NULL) {
38 if (clone_data->ordered && last != NULL) {
39 pe_rsc_trace(rsc, "Ordered version (last node)");
40 /* last child promote before promoted started */
41 new_rsc_order(last, RSC_PROMOTE, rsc, RSC_PROMOTED, type, data_set);
42 }
43 return;
44 }
45
46 /* child promote before global promoted */
47 new_rsc_order(child, RSC_PROMOTE, rsc, RSC_PROMOTED, type, data_set);
48
49 /* global promote before child promote */
50 new_rsc_order(rsc, RSC_PROMOTE, child, RSC_PROMOTE, type, data_set);
51
52 if (clone_data->ordered) {
53 pe_rsc_trace(rsc, "Ordered version");
54 if (last == NULL) {
55 /* global promote before first child promote */
56 last = rsc;
57
58 }
59 /* else: child/child relative promote */
60 order_start_start(last, child, type);
61 new_rsc_order(last, RSC_PROMOTE, child, RSC_PROMOTE, type, data_set);
62
63 } else {
64 pe_rsc_trace(rsc, "Un-ordered version");
65 }
66}
67
68static void
69child_demoting_constraints(clone_variant_data_t * clone_data, enum pe_ordering type,

Callers 2

master_create_actionsFunction · 0.85

Calls 1

new_rsc_orderFunction · 0.85

Tested by

no test coverage detected