From 5c951f9dac1d9940174ffd5f1d8bf6f23f54bd9b28493e7b3dec4561b4621404 Mon Sep 17 00:00:00 2001 From: Yan Gao Date: Tue, 19 Nov 2013 16:46:16 +0000 Subject: [PATCH] - Update pacemaker-colocated-utilization.patch * pengine: Do not check the allocation of resources during a colocation preview (bnc#849595) - election: Correctly hook up the timeout callback - crmd: Improve throttling response on clusters of single core machines - fencing: Wait until all possible replies are recieved before continuing with unverified devices - Bug cl#5179 - Corosync: Attempt to retrieve a peer's node name if it is not already known - Core: Allow blackbox logging to be disabled with SIGUSR2 - PE: Correctly handle demotion of grouped masters that are partially demoted - crmd: When the DC gracefully shuts down, record the new expected state into the cib - crmd: When a peer expectedly shuts down, record the new join and expected states into the cib - attrd: Memory leak - attrd: Do something sane when older non-atomic versions send us messages - crmd: Correctly observe the configured batch-limit - attrd: Improve compatibility with older attrd versions - controld: Use the correct variant of dlm_controld for corosync-2 clusters - lrmd: Correctly calculate metadata for the 'service' class - crmd: Prevent over-polling of throttle inputs - crmd: Enable cluster-wide throttling when the cib heavily exceeds its target load - Upstream version cs: 5a69be5ff56ec7fa66bcf9c2069af6211e4ebc98 OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=83 --- _service | 2 +- pacemaker-1.1.10+git20131112.2383f6c.tar.bz2 | 3 - pacemaker-1.1.10+git20131118.5a69be5.tar.bz2 | 3 + pacemaker-colocated-utilization.patch | 71 +++++++++++--------- pacemaker.changes | 27 ++++++++ pacemaker.spec | 2 +- 6 files changed, 72 insertions(+), 36 deletions(-) delete mode 100644 pacemaker-1.1.10+git20131112.2383f6c.tar.bz2 create mode 100644 pacemaker-1.1.10+git20131118.5a69be5.tar.bz2 diff --git a/_service b/_service index 9c9d2d8..4e0bab9 100644 --- a/_service +++ b/_service @@ -11,7 +11,7 @@ 1.1.10 --> 1.1.10+git%cd.%h - 2383f6c469bfb31da9efa8e4dd626de049e808c6 + 5a69be5ff56ec7fa66bcf9c2069af6211e4ebc98 diff --git a/pacemaker-1.1.10+git20131112.2383f6c.tar.bz2 b/pacemaker-1.1.10+git20131112.2383f6c.tar.bz2 deleted file mode 100644 index 9e5d34c..0000000 --- a/pacemaker-1.1.10+git20131112.2383f6c.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fb4196b30d9d642fb09a9ef4c53bbbead17d598f4f1b5a496c96f5fd79d2a2e5 -size 9196048 diff --git a/pacemaker-1.1.10+git20131118.5a69be5.tar.bz2 b/pacemaker-1.1.10+git20131118.5a69be5.tar.bz2 new file mode 100644 index 0000000..b8468d0 --- /dev/null +++ b/pacemaker-1.1.10+git20131118.5a69be5.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16782a91185e6492012e8b6d7209ab407c36bd9e2f1224886e63ca5cd3f64a56 +size 9302673 diff --git a/pacemaker-colocated-utilization.patch b/pacemaker-colocated-utilization.patch index cb28244..fb38b38 100644 --- a/pacemaker-colocated-utilization.patch +++ b/pacemaker-colocated-utilization.patch @@ -4,10 +4,10 @@ Date: Mon Jan 7 03:01:40 2013 +0800 High: PE: cl#5130 - Improve the placement for colocated utilization resources -diff --git a/pengine/group.c b/pengine/group.c -index 823ea08..88f6a69 100644 ---- a/pengine/group.c -+++ b/pengine/group.c +Index: pacemaker/pengine/group.c +=================================================================== +--- pacemaker.orig/pengine/group.c ++++ pacemaker/pengine/group.c @@ -515,3 +515,62 @@ void group_append_meta(resource_t * rsc, xmlNode * xml) { @@ -71,11 +71,11 @@ index 823ea08..88f6a69 100644 + } + } +} -diff --git a/pengine/native.c b/pengine/native.c -index 47c12b4..cacc226 100644 ---- a/pengine/native.c -+++ b/pengine/native.c -@@ -79,7 +79,7 @@ gboolean (*rsc_action_matrix[RSC_ROLE_MAX][RSC_ROLE_MAX])(resource_t*,node_t*,gb +Index: pacemaker/pengine/native.c +=================================================================== +--- pacemaker.orig/pengine/native.c ++++ pacemaker/pengine/native.c +@@ -80,7 +80,7 @@ gboolean (*rsc_action_matrix[RSC_ROLE_MA struct capacity_data { node_t *node; @@ -84,7 +84,7 @@ index 47c12b4..cacc226 100644 gboolean is_enough; }; -@@ -94,27 +94,119 @@ check_capacity(gpointer key, gpointer value, gpointer user_data) +@@ -95,27 +95,119 @@ check_capacity(gpointer key, gpointer va remaining = crm_parse_int(g_hash_table_lookup(data->node->details->utilization, key), "0"); if (required > remaining) { @@ -210,7 +210,7 @@ index 47c12b4..cacc226 100644 static gboolean native_choose_node(resource_t * rsc, node_t * prefer, pe_working_set_t * data_set) { -@@ -136,15 +228,63 @@ native_choose_node(resource_t * rsc, node_t * prefer, pe_working_set_t * data_se +@@ -137,15 +229,63 @@ native_choose_node(resource_t * rsc, nod if (safe_str_neq(data_set->placement_strategy, "default")) { GListPtr gIter = NULL; @@ -259,16 +259,16 @@ index 47c12b4..cacc226 100644 + if (unallocated_utilization) { + g_hash_table_destroy(unallocated_utilization); + } ++ ++ g_list_free(colocated_rscs); ++ free(rscs_id); ++ } - if (have_enough_capacity(node, rsc) == FALSE) { - pe_rsc_debug(rsc, - "Resource %s cannot be allocated to node %s: none of enough capacity", - rsc->id, node->details->uname); - resource_location(rsc, node, -INFINITY, "__limit_utilization_", data_set); -+ g_list_free(colocated_rscs); -+ free(rscs_id); -+ } -+ + if (any_capable == FALSE) { + for (gIter = data_set->nodes; gIter != NULL; gIter = gIter->next) { + node_t *node = (node_t *) gIter->data; @@ -281,7 +281,7 @@ index 47c12b4..cacc226 100644 } } dump_node_scores(alloc_details, rsc, "Post-utilization", rsc->allowed_nodes); -@@ -1279,14 +1419,14 @@ enum filter_colocation_res { +@@ -1367,14 +1507,14 @@ enum filter_colocation_res { static enum filter_colocation_res filter_colocation_constraint(resource_t * rsc_lh, resource_t * rsc_rh, @@ -298,7 +298,16 @@ index 47c12b4..cacc226 100644 return influence_nothing; } -@@ -1462,7 +1602,7 @@ native_rsc_colocation_rh(resource_t * rsc_lh, resource_t * rsc_rh, rsc_colocatio +@@ -1387,7 +1527,7 @@ filter_colocation_constraint(resource_t + return influence_rsc_priority; + } + +- if (is_not_set(rsc_lh->flags, pe_rsc_provisional)) { ++ if (preview == FALSE && is_not_set(rsc_lh->flags, pe_rsc_provisional)) { + /* error check */ + struct node_shared_s *details_lh; + struct node_shared_s *details_rh; +@@ -1550,7 +1690,7 @@ native_rsc_colocation_rh(resource_t * rs { enum filter_colocation_res filter_results; @@ -307,7 +316,7 @@ index 47c12b4..cacc226 100644 switch (filter_results) { case influence_rsc_priority: -@@ -3173,3 +3313,86 @@ native_append_meta(resource_t * rsc, xmlNode * xml) +@@ -3307,3 +3447,86 @@ native_append_meta(resource_t * rsc, xml free(name); } } @@ -394,11 +403,11 @@ index 47c12b4..cacc226 100644 + + return colocated_rscs; +} -diff --git a/pengine/utils.c b/pengine/utils.c -index abd416d..d8d8b81 100644 ---- a/pengine/utils.c -+++ b/pengine/utils.c -@@ -163,7 +163,7 @@ do_compare_capacity2(gpointer key, gpointer value, gpointer user_data) +Index: pacemaker/pengine/utils.c +=================================================================== +--- pacemaker.orig/pengine/utils.c ++++ pacemaker/pengine/utils.c +@@ -164,7 +164,7 @@ do_compare_capacity2(gpointer key, gpoin /* rc < 0 if 'node1' has more capacity remaining * rc > 0 if 'node1' has less capacity remaining */ @@ -407,7 +416,7 @@ index abd416d..d8d8b81 100644 compare_capacity(const node_t * node1, const node_t * node2) { struct compare_data data; -@@ -268,44 +268,41 @@ sort_node_weight(gconstpointer a, gconstpointer b, gpointer data) +@@ -269,44 +269,41 @@ sort_node_weight(gconstpointer a, gconst } struct calculate_data { @@ -472,7 +481,7 @@ index abd416d..d8d8b81 100644 } void -@@ -321,7 +318,7 @@ native_deallocate(resource_t * rsc) +@@ -322,7 +319,7 @@ native_deallocate(resource_t * rsc) old->details->allocated_rsc = g_list_remove(old->details->allocated_rsc, rsc); old->details->num_resources--; /* old->count--; */ @@ -481,7 +490,7 @@ index abd416d..d8d8b81 100644 free(old); } } -@@ -388,7 +385,9 @@ native_assign_node(resource_t * rsc, GListPtr nodes, node_t * chosen, gboolean f +@@ -389,7 +386,9 @@ native_assign_node(resource_t * rsc, GLi chosen->details->allocated_rsc = g_list_prepend(chosen->details->allocated_rsc, rsc); chosen->details->num_resources++; chosen->count++; @@ -492,11 +501,11 @@ index abd416d..d8d8b81 100644 return TRUE; } -diff --git a/pengine/utils.h b/pengine/utils.h -index 1939d40..f8c6b6d 100644 ---- a/pengine/utils.h -+++ b/pengine/utils.h -@@ -55,6 +55,19 @@ extern gboolean can_run_any(GHashTable * nodes); +Index: pacemaker/pengine/utils.h +=================================================================== +--- pacemaker.orig/pengine/utils.h ++++ pacemaker/pengine/utils.h +@@ -55,6 +55,19 @@ extern gboolean can_run_any(GHashTable * extern resource_t *find_compatible_child(resource_t * local_child, resource_t * rsc, enum rsc_role_e filter, gboolean current); diff --git a/pacemaker.changes b/pacemaker.changes index 65ba1a2..f212727 100644 --- a/pacemaker.changes +++ b/pacemaker.changes @@ -1,3 +1,30 @@ +------------------------------------------------------------------- +Tue Nov 19 14:12:00 UTC 2013 - ygao@suse.com + +- Update pacemaker-colocated-utilization.patch + * pengine: Do not check the allocation of resources during a colocation preview (bnc#849595) + +------------------------------------------------------------------- +Tue Nov 19 13:45:56 UTC 2013 - ygao@suse.com + +- election: Correctly hook up the timeout callback +- crmd: Improve throttling response on clusters of single core machines +- fencing: Wait until all possible replies are recieved before continuing with unverified devices +- Bug cl#5179 - Corosync: Attempt to retrieve a peer's node name if it is not already known +- Core: Allow blackbox logging to be disabled with SIGUSR2 +- PE: Correctly handle demotion of grouped masters that are partially demoted +- crmd: When the DC gracefully shuts down, record the new expected state into the cib +- crmd: When a peer expectedly shuts down, record the new join and expected states into the cib +- attrd: Memory leak +- attrd: Do something sane when older non-atomic versions send us messages +- crmd: Correctly observe the configured batch-limit +- attrd: Improve compatibility with older attrd versions +- controld: Use the correct variant of dlm_controld for corosync-2 clusters +- lrmd: Correctly calculate metadata for the 'service' class +- crmd: Prevent over-polling of throttle inputs +- crmd: Enable cluster-wide throttling when the cib heavily exceeds its target load +- Upstream version cs: 5a69be5ff56ec7fa66bcf9c2069af6211e4ebc98 + ------------------------------------------------------------------- Thu Nov 14 07:19:28 UTC 2013 - ygao@suse.com diff --git a/pacemaker.spec b/pacemaker.spec index 817ef4c..8fa6690 100644 --- a/pacemaker.spec +++ b/pacemaker.spec @@ -95,7 +95,7 @@ Name: pacemaker Summary: Scalable High-Availability cluster resource manager License: GPL-2.0+ and LGPL-2.1+ Group: Productivity/Clustering/HA -Version: 1.1.10+git20131112.2383f6c +Version: 1.1.10+git20131118.5a69be5 Release: 0 #Release: %{pcmk_release}%{?dist} Url: http://www.clusterlabs.org