From bfc9fbf386d3f45315bc06290bd8fde0e3b4862fc19f613fb857ac74f9d9f4cd Mon Sep 17 00:00:00 2001 From: Yan Gao Date: Thu, 23 Dec 2021 10:19:25 +0000 Subject: [PATCH] Accepting request 942220 from home:yan_gao:branches:network:ha-clustering:Factory - fencer: get current time correctly * 0001-Fix-fencer-get-current-time-correctly.patch - Update to version 2.1.2+20211124.ada5c3b36 (Pacemaker-2.1.2): - fencer: add missing space to topology message - controller: handle remote connection start timeouts correctly - Update to version 2.1.1+20211116.8db4569e4 (Pacemaker-2.1.2-rc2): - fencing: mark state as done if remapped "on" times out - Fix OCF_RA_INSTALL_DIR Autoconf variable name in pkg-config files - daemons: Free memory at the end of fail_pending_op. - Update to version 2.1.1+20211104.62c36e2b1 (Pacemaker-2.1.2-rc1): - Use user_include_exclude_cb in crm_mon more. (clbz#5485) - Only set default sections in crm_mon once. (clbz#5485) - fencer: improve messages for dynamic target queries (rh#1470834) - fencer: consolidate messages for asynchronous results (rh#1470834) - fencer: log a message when out of memory for dynamic target search (rh#1470834) - libcrmservice: distinguish local and global configuration errors (rh#1470834) - libcrmservice: improve messages for pre-execution failures in child (rh#1470834) - Update to version 2.1.1+20211028.70f82d2c0: - attrd: check election status upon loss of a voter to prevent unexpected pending (bsc#1191676) - Update to version 2.1.1+20211028.7ee8b5bdd: - tools: select technical or human-friendly output of failed actions (rh#1470834) - controller,executor: tweak action result messages (rh#1470834) - install init scripts only if not using systemd - executor: log execution status and exit reason with results (rh#1470834) - executor: improve result message (rh#1470834) OBS-URL: https://build.opensuse.org/request/show/942220 OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=354 --- ...ix-fencer-get-current-time-correctly.patch | 43 ++++ _service | 6 +- _servicedata | 2 +- bug-728579_pacemaker-stonith-dev-id.patch | 36 +-- bug-943295_pacemaker-lrmd-log-notice.patch | 18 +- pacemaker-2.1.0+20210816.c6a4f6e6c.tar.xz | 3 - pacemaker-2.1.2+20211124.ada5c3b36.tar.xz | 3 + pacemaker.changes | 223 ++++++++++++++++-- pacemaker.rpmlintrc | 1 + pacemaker.spec | 19 +- 10 files changed, 289 insertions(+), 65 deletions(-) create mode 100644 0001-Fix-fencer-get-current-time-correctly.patch delete mode 100644 pacemaker-2.1.0+20210816.c6a4f6e6c.tar.xz create mode 100644 pacemaker-2.1.2+20211124.ada5c3b36.tar.xz diff --git a/0001-Fix-fencer-get-current-time-correctly.patch b/0001-Fix-fencer-get-current-time-correctly.patch new file mode 100644 index 0000000..aed3845 --- /dev/null +++ b/0001-Fix-fencer-get-current-time-correctly.patch @@ -0,0 +1,43 @@ +From 0339e89f3238b31df78b864dae8684b82c370741 Mon Sep 17 00:00:00 2001 +From: Ken Gaillot +Date: Mon, 13 Dec 2021 15:22:40 -0600 +Subject: [PATCH] Fix: fencer: get current time correctly + +f52bc8e1ce (2.1.2) introduced a regression by using clock_gettime() with +CLOCK_MONOTONIC to get the current time. Use qb_util_timespec_from_epoch_get() +instead (which as of this writing uses clock_gettime() with CLOCK_REALTIME if +available, and falls back to gettimeofday() if not). +--- + daemons/fenced/fenced_commands.c | 11 +++-------- + 1 file changed, 3 insertions(+), 8 deletions(-) + +diff --git a/daemons/fenced/fenced_commands.c b/daemons/fenced/fenced_commands.c +index f34cb4f13..7685cb8c3 100644 +--- a/daemons/fenced/fenced_commands.c ++++ b/daemons/fenced/fenced_commands.c +@@ -2746,19 +2746,14 @@ bool fencing_peer_active(crm_node_t *peer) + return FALSE; + } + +-void set_fencing_completed(remote_fencing_op_t * op) ++void ++set_fencing_completed(remote_fencing_op_t *op) + { +-#ifdef CLOCK_MONOTONIC + struct timespec tv; + +- clock_gettime(CLOCK_MONOTONIC, &tv); +- ++ qb_util_timespec_from_epoch_get(&tv); + op->completed = tv.tv_sec; + op->completed_nsec = tv.tv_nsec; +-#else +- op->completed = time(NULL); +- op->completed_nsec = 0L; +-#endif + } + + /*! +-- +2.31.1 + diff --git a/_service b/_service index 0e76504..f746a12 100644 --- a/_service +++ b/_service @@ -8,10 +8,10 @@ To update to a new release, change "revision" to the desired git commit hash and bump "version" if necessary - 2.1.0 + 2.1.2 --> - 2.1.0+%cd.%h - Pacemaker-2.1.1-rc3 + 2.1.2+%cd.%h + Pacemaker-2.1.2 enable diff --git a/_servicedata b/_servicedata index 74376c6..3be074f 100644 --- a/_servicedata +++ b/_servicedata @@ -1,6 +1,6 @@ git://github.com/ClusterLabs/pacemaker.git - c6a4f6e6cdcedf08e0bfd81248b86812c2a571b2 + ada5c3b36e2adf1703d54d39f40a4b8628eca175 \ No newline at end of file diff --git a/bug-728579_pacemaker-stonith-dev-id.patch b/bug-728579_pacemaker-stonith-dev-id.patch index f56e772..82f7187 100644 --- a/bug-728579_pacemaker-stonith-dev-id.patch +++ b/bug-728579_pacemaker-stonith-dev-id.patch @@ -4,11 +4,11 @@ Date: Thu Sep 6 15:14:58 2012 +0800 Medium: stonith: Expose IDs of stonith resources to stonith agents through "$CRM_meta_st_device_id" environment variable -Index: pacemaker-2.0.5+20210104.8ae19fdf9/daemons/fenced/fenced_commands.c +Index: pacemaker-2.1.1+20211028.7ee8b5bdd/daemons/fenced/fenced_commands.c =================================================================== ---- pacemaker-2.0.5+20210104.8ae19fdf9.orig/daemons/fenced/fenced_commands.c -+++ pacemaker-2.0.5+20210104.8ae19fdf9/daemons/fenced/fenced_commands.c -@@ -937,6 +937,7 @@ build_device_from_xml(xmlNode * msg) +--- pacemaker-2.1.1+20211028.7ee8b5bdd.orig/daemons/fenced/fenced_commands.c ++++ pacemaker-2.1.1+20211028.7ee8b5bdd/daemons/fenced/fenced_commands.c +@@ -1068,6 +1068,7 @@ build_device_from_xml(xmlNode * msg) "on target", device->id, device->on_target_actions); } @@ -16,11 +16,11 @@ Index: pacemaker-2.0.5+20210104.8ae19fdf9/daemons/fenced/fenced_commands.c device->work = mainloop_add_trigger(G_PRIORITY_HIGH, stonith_device_dispatch, device); /* TODO: Hook up priority */ -Index: pacemaker-2.0.5+20210104.8ae19fdf9/lib/fencing/st_client.c +Index: pacemaker-2.1.1+20211028.7ee8b5bdd/lib/fencing/st_client.c =================================================================== ---- pacemaker-2.0.5+20210104.8ae19fdf9.orig/lib/fencing/st_client.c -+++ pacemaker-2.0.5+20210104.8ae19fdf9/lib/fencing/st_client.c -@@ -40,6 +40,7 @@ struct stonith_action_s { +--- pacemaker-2.1.1+20211028.7ee8b5bdd.orig/lib/fencing/st_client.c ++++ pacemaker-2.1.1+20211028.7ee8b5bdd/lib/fencing/st_client.c +@@ -42,6 +42,7 @@ struct stonith_action_s { char *action; char *victim; GHashTable *args; @@ -28,7 +28,7 @@ Index: pacemaker-2.0.5+20210104.8ae19fdf9/lib/fencing/st_client.c int timeout; int async; void *userdata; -@@ -586,6 +587,7 @@ stonith__destroy_action(stonith_action_t +@@ -647,6 +648,7 @@ stonith__destroy_action(stonith_action_t } free(action->output); free(action->error); @@ -36,7 +36,7 @@ Index: pacemaker-2.0.5+20210104.8ae19fdf9/lib/fencing/st_client.c free(action); } } -@@ -657,6 +659,8 @@ stonith_action_create(const char *agent, +@@ -718,6 +720,8 @@ stonith_action_create(const char *agent, if (device_args) { char buffer[512]; const char *value = NULL; @@ -45,7 +45,7 @@ Index: pacemaker-2.0.5+20210104.8ae19fdf9/lib/fencing/st_client.c snprintf(buffer, sizeof(buffer), "pcmk_%s_retries", _action); value = g_hash_table_lookup(device_args, buffer); -@@ -664,6 +668,11 @@ stonith_action_create(const char *agent, +@@ -725,6 +729,11 @@ stonith_action_create(const char *agent, if (value) { action->max_retries = atoi(value); } @@ -57,7 +57,7 @@ Index: pacemaker-2.0.5+20210104.8ae19fdf9/lib/fencing/st_client.c } return action; -@@ -806,6 +815,10 @@ internal_stonith_action_execute(stonith_ +@@ -875,6 +884,10 @@ internal_stonith_action_execute(stonith_ SVC_ACTION_NON_BLOCKED, "SVC_ACTION_NON_BLOCKED"); @@ -68,13 +68,13 @@ Index: pacemaker-2.0.5+20210104.8ae19fdf9/lib/fencing/st_client.c /* keep retries from executing out of control and free previous results */ if (is_retry) { free(action->output); -Index: pacemaker-2.0.5+20210104.8ae19fdf9/lib/services/services_linux.c +Index: pacemaker-2.1.1+20211028.7ee8b5bdd/lib/services/services_linux.c =================================================================== ---- pacemaker-2.0.5+20210104.8ae19fdf9.orig/lib/services/services_linux.c -+++ pacemaker-2.0.5+20210104.8ae19fdf9/lib/services/services_linux.c -@@ -28,6 +28,9 @@ - #include "crm/common/mainloop.h" +--- pacemaker-2.1.1+20211028.7ee8b5bdd.orig/lib/services/services_linux.c ++++ pacemaker-2.1.1+20211028.7ee8b5bdd/lib/services/services_linux.c +@@ -29,6 +29,9 @@ #include "crm/services.h" + #include "crm/services_internal.h" +#include "crm/stonith-ng.h" +#include "crm/fencing/internal.h" @@ -82,7 +82,7 @@ Index: pacemaker-2.0.5+20210104.8ae19fdf9/lib/services/services_linux.c #include "services_private.h" static void close_pipe(int fildes[]); -@@ -405,6 +408,15 @@ static void +@@ -406,6 +409,15 @@ static void add_action_env_vars(const svc_action_t *op) { void (*env_setter)(gpointer, gpointer, gpointer) = NULL; diff --git a/bug-943295_pacemaker-lrmd-log-notice.patch b/bug-943295_pacemaker-lrmd-log-notice.patch index b1a2228..69d735e 100644 --- a/bug-943295_pacemaker-lrmd-log-notice.patch +++ b/bug-943295_pacemaker-lrmd-log-notice.patch @@ -1,17 +1,17 @@ -Index: pacemaker-2.0.4+20200819.114974685/daemons/execd/execd_commands.c +Index: pacemaker-2.1.1+20211028.7ee8b5bdd/daemons/execd/execd_commands.c =================================================================== ---- pacemaker-2.0.4+20200819.114974685.orig/daemons/execd/execd_commands.c -+++ pacemaker-2.0.4+20200819.114974685/daemons/execd/execd_commands.c -@@ -198,7 +198,7 @@ static void - log_finished(lrmd_cmd_t * cmd, int exec_time, int queue_time) +--- pacemaker-2.1.1+20211028.7ee8b5bdd.orig/daemons/execd/execd_commands.c ++++ pacemaker-2.1.1+20211028.7ee8b5bdd/daemons/execd/execd_commands.c +@@ -208,7 +208,7 @@ action_matches(lrmd_cmd_t *cmd, const ch + static void + log_finished(lrmd_cmd_t *cmd, int exec_time_ms, int queue_time_ms) { - char pid_str[32] = { 0, }; - int log_level = LOG_INFO; + int log_level = LOG_NOTICE; + GString *str = g_string_sized_new(100); // reasonable starting size - if (cmd->last_pid) { - snprintf(pid_str, 32, "%d", cmd->last_pid); -@@ -223,7 +223,7 @@ log_finished(lrmd_cmd_t * cmd, int exec_ + if (pcmk__str_eq(cmd->action, "monitor", pcmk__str_casei)) { +@@ -248,7 +248,7 @@ log_finished(lrmd_cmd_t *cmd, int exec_t static void log_execute(lrmd_cmd_t * cmd) { diff --git a/pacemaker-2.1.0+20210816.c6a4f6e6c.tar.xz b/pacemaker-2.1.0+20210816.c6a4f6e6c.tar.xz deleted file mode 100644 index 904c087..0000000 --- a/pacemaker-2.1.0+20210816.c6a4f6e6c.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:27f2b1b4bd150c1cf17b7d87f9c2bd6ca9f46bbc8c63dc3cfc9d27a4c1e20543 -size 3473932 diff --git a/pacemaker-2.1.2+20211124.ada5c3b36.tar.xz b/pacemaker-2.1.2+20211124.ada5c3b36.tar.xz new file mode 100644 index 0000000..3d258ea --- /dev/null +++ b/pacemaker-2.1.2+20211124.ada5c3b36.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e240106c50fa32b0b32834afd01cc5ebd44e6c0135ea963f27fbb7a101d714a +size 3494436 diff --git a/pacemaker.changes b/pacemaker.changes index a55204e..e7c72e3 100644 --- a/pacemaker.changes +++ b/pacemaker.changes @@ -1,3 +1,180 @@ +------------------------------------------------------------------- +Wed Dec 22 13:36:05 UTC 2021 - Yan Gao + +- fencer: get current time correctly + * 0001-Fix-fencer-get-current-time-correctly.patch + +------------------------------------------------------------------- +Wed Dec 22 13:25:51 UTC 2021 - Yan Gao + +- Update to version 2.1.2+20211124.ada5c3b36 (Pacemaker-2.1.2): +- fencer: add missing space to topology message +- controller: handle remote connection start timeouts correctly + +------------------------------------------------------------------- +Wed Dec 22 11:24:15 UTC 2021 - Yan Gao + +- Update to version 2.1.1+20211116.8db4569e4 (Pacemaker-2.1.2-rc2): +- fencing: mark state as done if remapped "on" times out +- Fix OCF_RA_INSTALL_DIR Autoconf variable name in pkg-config files +- daemons: Free memory at the end of fail_pending_op. + +------------------------------------------------------------------- +Wed Dec 22 11:17:24 UTC 2021 - Yan Gao + +- Update to version 2.1.1+20211104.62c36e2b1 (Pacemaker-2.1.2-rc1): +- Use user_include_exclude_cb in crm_mon more. (clbz#5485) +- Only set default sections in crm_mon once. (clbz#5485) +- fencer: improve messages for dynamic target queries (rh#1470834) +- fencer: consolidate messages for asynchronous results (rh#1470834) +- fencer: log a message when out of memory for dynamic target search (rh#1470834) +- libcrmservice: distinguish local and global configuration errors (rh#1470834) +- libcrmservice: improve messages for pre-execution failures in child (rh#1470834) + +------------------------------------------------------------------- +Wed Dec 22 10:35:46 UTC 2021 - Yan Gao + +- Update to version 2.1.1+20211028.70f82d2c0: +- attrd: check election status upon loss of a voter to prevent unexpected pending (bsc#1191676) + +------------------------------------------------------------------- +Wed Dec 22 10:23:59 UTC 2021 - Yan Gao + +- Update to version 2.1.1+20211028.7ee8b5bdd: +- tools: select technical or human-friendly output of failed actions (rh#1470834) +- controller,executor: tweak action result messages (rh#1470834) +- install init scripts only if not using systemd +- executor: log execution status and exit reason with results (rh#1470834) +- executor: improve result message (rh#1470834) +- controller: log exit reason with action results (rh#1470834) +- controller: make executor result messages more consistent (rh#1470834) +- daemon metadata: Output OCF-1.1-style metadata for enum options +- libcrmservice: avoid memory leak when checking systemd unit existence +- fencer: avoid memory leak on async execution failure (rh#1470834) +- fencer: report correct code for CIB secret failure (rh#1470834) +- libcrmservice: improve exit codes for child execution failures (rh#1470834) +- cib,pacemakerd,libcrmcommon,libcrmservice: improve child completion logs (rh#1470834) +- executor: map nagios warnings to OCF "degraded" result code (rh#1470834) +- schemas: update crm_resource API schema for --force-* changes (rh#1470834) +- tools: show exit reason for crm_resource --force-* (rh#1470834) +- daemons: Be more careful about restarting subdaemons. (clbz#5225) +- daemons: Re-register UID/GID with corosync on restart. +- tools: handle crm_resource --force-* failures consistently (rh#1470834) +- tools: improve check for supported standards in crm_resource --force-* (rh#1470834) +- tools: map LSB status to OCF correctly with crm_resource --force-check (rh#1470834) +- tools: show detailed message with crm_resource --force-* failure (rh#1470834) +- daemons: Correct which subdaemons need the cluster. +- daemons: Keep track of which daemons need corosync. +- libcrmservice: improve handling of too many nagios parameters (rh#1470834) +- executor,libstonithd,libcrmservice: better error handling for generic actions (rh#1470834) +- libcrmservice: set exit reason for some memory errors when creating action (rh#1470834) +- executor,libcrmservice: set exit reason for invalid arguments (rh#1470834) +- executor: use exit reason from service library when available (rh#1470834) +- libcrmservice: set exit reason for internal errors (rh#1470834) +- tools: avoid double free with crm_resource --force-* +- tools: avoid error message when no stdout +- fencing: improve error handling when executing fence actions (rh#1470834) +- libcrmservice: check for memory errors when creating an action (rh#1470834) +- executor,libcrmservice: don't overwrite execution status from execute_action() (rh#1470834) +- executor,controller,libcrmservice: use PCMK_OCF_UNKNOWN_ERROR for timeouts (rh#1470834) +- libcrmservice: don't assert for mainloop error (rh#1470834) +- libcrmservice: ensure rc/status are set for meta-data failures (rh#1470834) +- libcrmservice: ensure synchronous file action always sets rc and status (rh#1470834) +- libcrmservice: use NAGIOS_STATE_UNKNOWN for internal nagios errors (rh#1470834) +- libcrmservice: use standard-appropriate exit code for signal management failures (rh#1470834) +- libcrmservice: properly detect systemd unit existence (rh#1470834) + +- Rebase: + * bug-728579_pacemaker-stonith-dev-id.patch + * bug-943295_pacemaker-lrmd-log-notice.patch + +------------------------------------------------------------------- +Mon Dec 20 14:35:20 UTC 2021 - Yan Gao + +- Update to version 2.1.1+20210924.be206af22: +- fenced: Change query timeout calculation. +- resources: update HealthIOWait agent for OCF 1.1 +- resources: add integer parameter validation to HealthIOWait +- resources: fix HealthIOWait validate action + +------------------------------------------------------------------- +Mon Dec 20 12:44:34 UTC 2021 - Yan Gao + +- Update to version 2.1.1+20210923.ce81ff72e: +- tools: Properly display supported output formats in crm_mon. +- libcrmservice: avoid possible use-of-NULL +- libcrmservice: update systemd agent meta-data for OCF 1.1 +- libcrmservice: set default execution status for systemd actions to error (rh#1470834) +- libcrmservice: ensure status is set when masking systemd errors (rh#1470834) +- libcrmservice: ensure rc/status are set when parsing systemd results (rh#1470834) +- libcrmservice: ensure execution status is set after parsing status result (rh#1470834) +- libcrmservice: ensure rc/status are set after invoking systemd unit paths (rh#1470834) +- libcrmservice: ensure rc/status are set after systemd LoadUnit calls (rh#1470834) +- libcrmservice: ensure rc/status are set when loading systemd unit (rh#1470834) +- libcrmservice: set rc and status appropriately for systemd timeouts (rh#1470834) +- libcrmservice: handle corner cases when creating action (rh#1470834) +- libcrmservice: always set rc/status when executing files (rh#1470834) +- libcrmservice: always set rc/status when executing systemd actions (rh#1470834) +- libstonithd: check libcrmservice status rather than exit code for timeouts (rh#1470834) +- fencer: avoid assertions in delegate_from_xml() +- scheduler: quote execution status in failed action output (rh#1470834) +- liblrmd: don't mask errors from sending IPC (rh#1470834) +- executor: set exit reason for stonith resource action failures (rh#1470834) +- controller: set exit reason for executor communication timeout (rh#1470834) +- controller: use OCF timeout exit code for executor communication timeout (rh#1470834) +- controller: set exit reason when using synthesize_lrmd_failure() (rh#1470834) +- controller: set exit reason when using fake_op_status() (rh#1470834) +- controller,libpacemaker: set exit reason for internal errors (rh#1470834) + +------------------------------------------------------------------- +Mon Dec 20 10:05:39 UTC 2021 - Yan Gao + +- Update to version 2.1.1+20210910.89c5b06a3: +- controller: use "not connected" status for remote execution failure (rh#1470834) +- controller: send error reply if can't initiate action via executor (rh#1470834) +- controller: improve messages for failed resource agent actions (rh#1470834) +- tools: better error message if crm_resource can't create action (rh#1470834) +- controller: set exit reason when remote connection start fails (rh#1470834) +- tools: better error messages for crm_resource executor failures (rh#1470834) +- fenced: add support for mapping pcmk_delay_base pr node +- scheduler: use existing epoch-to-string function in failed action display (rh#1470834) +- scheduler: add exit reason to failed action string only if present (rh#1470834) +- scheduler: add timing details to failed action strings only when available (rh#1470834) +- scheduler: ensure failed action display handles NULL values (rh#1470834) +- fence_watchdog: fix malformed xml in metadata +- fenced: support escaped characters as values in pcmk_host_map +- fenced: Added nanosecond field to operation completion data. +- controller: use sensible message for poke of disconnected executor (rh#1470834) +- controller: improve messages for remote executor connection failure (rh#1470834) +- controller: improve message for failed local executor connection (rh#1470834) +- scheduler: reword "multiply active" message (rh#1470834) +- libcrmcluster: reword initial quorum message (rh#1470834) +- libcrmcluster: downgrade message for CPG messages sent (rh#1470834) +- scheduler: improve migration threshold message (rh#1470834) +- fencer: downgrade reboot remapping to notice +- controller: handle malformed CIB diffs better +- scheduler: avoid memory leak for invalid ordering constraints +- scheduler: improve bad id-ref handling +- scheduler: downgrade inverse ordering failure to warning +- fence_watchdog: fix version output needed for help2man +- rpm: package fence_watchdog in base-package +- watchdog-fencing: Silence warning without node restriction +- tools: If there are no nodes, don't add an extra blank line. +- watchdog-fencing: allow restriction to certain nodes + +------------------------------------------------------------------- +Wed Dec 8 14:47:53 UTC 2021 - Yan Gao + +- pacemaker.rpmlintrc: filter out shlib-policy-name-error (bsc#1191776) + +------------------------------------------------------------------- +Wed Dec 08 14:14:53 UTC 2021 - Yan Gao + +- Update to version 2.1.1+20210909.77db57872 (Pacemaker-2.1.1): +- liblrmd: avoid segfault on TLS connection errors +- tools: Fix a segfault when calling "crm_simulate -U". +- tools: make exit-code stdout/stderr consistent with --version + ------------------------------------------------------------------- Fri Sep 10 14:17:49 UTC 2021 - Yan Gao @@ -5,7 +182,7 @@ Fri Sep 10 14:17:49 UTC 2021 - Yan Gao - crm_resource: translate LSB rc to exit code and fix resources_find_service_class() call - controller: ensure newly joining node learns the node names of non-DCs (bsc#1180618) - controller: ensure lost node's transient attributes are cleared without DC (rh#1986998) - + ------------------------------------------------------------------- Fri Sep 10 14:04:23 UTC 2021 - Yan Gao @@ -108,7 +285,7 @@ Mon Aug 16 15:24:26 UTC 2021 - Yan Gao - Update to version 2.1.0+20210617.8c0c4eff9: - Purge remote node attribute when the node is up. (bsc#1186693) - Merge: - * bsc#1186693-clean-attrd-attributes-when-remote-node-is-up.patch + * bsc#1186693-clean-attrd-attributes-when-remote-node-is-up.patch ------------------------------------------------------------------- Mon Aug 16 14:57:35 UTC 2021 - Yan Gao @@ -347,7 +524,7 @@ Sun Mar 21 17:21:29 UTC 2021 - Yan Gao - Update to version 2.0.5+20210310.83e765df6: - controller: re-joined node gets the host names of non-DC nodes (bsc#1180618) - Merge: - * bsc#1180618-0001-Fix-crmd-update-crm_peer_cache.patch + * bsc#1180618-0001-Fix-crmd-update-crm_peer_cache.patch ------------------------------------------------------------------- Sun Mar 21 16:05:07 UTC 2021 - Yan Gao @@ -362,10 +539,10 @@ Sun Mar 21 15:32:59 UTC 2021 - Yan Gao - Update to version 2.0.5+20210302.64e0c771d: - crm_mon.rng/crm_resource.rng: Change the schema type of 'expected' and 'call' to integer. (rh#1931332) - Merge: - * rh#1931332-0003-Med-Change-the-schema-type-of-expected-and-call-to-i.patch - * rh#1931332-0002-Med-Copy-crm_mon.rng-and-crm_resource.rng-in-prepara.patch - * rh#1931332-0001-Med-Generate-xml-crm_mon.rng-from-the-contents-of-xm.patch - * rh#1931332-0000-Feature-xml-Move-resource-related-XML-schema-into-it.patch + * rh#1931332-0003-Med-Change-the-schema-type-of-expected-and-call-to-i.patch + * rh#1931332-0002-Med-Copy-crm_mon.rng-and-crm_resource.rng-in-prepara.patch + * rh#1931332-0001-Med-Generate-xml-crm_mon.rng-from-the-contents-of-xm.patch + * rh#1931332-0000-Feature-xml-Move-resource-related-XML-schema-into-it.patch ------------------------------------------------------------------- Sun Mar 21 15:13:49 UTC 2021 - Yan Gao @@ -394,7 +571,7 @@ Sun Mar 21 14:39:24 UTC 2021 - Yan Gao - iso8601: prevent sec overrun before adding up as long long - Merge: - * 0001-Fix-iso8601-prevent-sec-overrun-before-adding-up-as-.patch + * 0001-Fix-iso8601-prevent-sec-overrun-before-adding-up-as-.patch - crmadmin: tweaks - scheduler: route monitor cancellations behind moving remote connections correctly @@ -409,19 +586,19 @@ Sat Mar 20 13:53:24 UTC 2021 - Yan Gao - Update to version 2.0.5+20210223.dbc27b2ac: - fencer: optimize merging of fencing history by removing unneeded entries on creation of history diff (bsc#1181744) - Merge: - * bsc#1181744-0004-Refactor-fencer-optimize-merging-of-fencing-history-.patch + * bsc#1181744-0004-Refactor-fencer-optimize-merging-of-fencing-history-.patch - fencing: new function stonith_op_state_pending() for checking if a fencing operation is in pending state (bsc#1181744) - Merge: - * bsc#1181744-0003-Refactor-fencing-new-function-stonith_op_state_pendi.patch + * bsc#1181744-0003-Refactor-fencing-new-function-stonith_op_state_pendi.patch - fencer: update outdated pending operations according to returned ones from remote peer history (bsc#1181744) - Merge: - * bsc#1181744-0002-Fix-fencer-update-outdated-pending-operations-accord.patch + * bsc#1181744-0002-Fix-fencer-update-outdated-pending-operations-accord.patch - fencer: broadcast returned fencing operations to update outdated pending ones in remote peer history (bsc#1181744) - Merge: - * bsc#1181744-0001-Fix-fencer-broadcast-returned-fencing-operations-to-.patch + * bsc#1181744-0001-Fix-fencer-broadcast-returned-fencing-operations-to-.patch ------------------------------------------------------------------- Sat Mar 20 13:45:07 UTC 2021 - Yan Gao @@ -445,17 +622,17 @@ Sat Mar 20 12:38:19 UTC 2021 - Yan Gao - Update to version 2.0.5+20210205.46cf48d27: - execd: Skips merging of canceled fencing monitors.(Fix:#CLBZ5393) - Merge: - * 0001-Mid-execd-Skips-merging-of-canceled-fencing-monitors.patch + * 0001-Mid-execd-Skips-merging-of-canceled-fencing-monitors.patch - crm_mon: detect when run on remote-node - tools: get cibsecret stash working again - Merge: - * 0001-Fix-tools-get-cibsecret-stash-working-again.patch + * 0001-Fix-tools-get-cibsecret-stash-working-again.patch - fencing: remove any devices that are not installed - Merge: - * 0001-Fix-fencing-remove-any-devices-that-are-not-installe.patch + * 0001-Fix-fencing-remove-any-devices-that-are-not-installe.patch - crm_mon: suppress pacemakerd-status for non-text output - crm_mon: retry fencer connection as not fatal initially @@ -545,7 +722,7 @@ Tue Mar 16 13:48:17 UTC 2021 - Yan Gao - liblrmd: Limit node name addition to proxied attrd update commands (rh#1907726) - Merge: - * rh#1907726-0001-Fix-liblrmd-Limit-node-name-addition-to-proxied-attr.patch + * rh#1907726-0001-Fix-liblrmd-Limit-node-name-addition-to-proxied-attr.patch ------------------------------------------------------------------- Fri Jan 29 12:42:52 UTC 2021 - Yan Gao @@ -559,7 +736,7 @@ Thu Jan 28 14:28:18 UTC 2021 - Yan Gao - Update to version 2.0.5+20210104.8ae19fdf9: - attrd: prevent leftover attributes of shutdown node in cib (bsc#1173668) - Merge: - * bsc#1173668-0001-Fix-attrd-prevent-leftover-attributes-of-shutdown-no.patch + * bsc#1173668-0001-Fix-attrd-prevent-leftover-attributes-of-shutdown-no.patch ------------------------------------------------------------------- Thu Jan 28 14:22:47 UTC 2021 - Yan Gao @@ -592,7 +769,7 @@ Thu Jan 28 14:22:47 UTC 2021 - Yan Gao - fencer: use singular or plural correctly in messages - pacemakerd: improve error message when -S can't connect - libcrmcommon: improve messages when adding a log file -- libcrmcommon: drop unformatted log message about log permissions +- libcrmcommon: drop unformatted log message about log permissions (bsc#1190821) - libcrmcommon: drop unnecessary parent check when adding log file - daemons: improve client name used in log messages - ipc_client: Use libqb to get auth data for ipcc connections @@ -650,7 +827,7 @@ Mon Jan 25 12:29:58 UTC 2021 - Yan Gao - crmadmin: implement formatted output (bsc#1178865) - Drop obsolete: - * bsc#1178865-0001-Fix-crmadmin-printing-DC-quietly-if-needed.patch + * bsc#1178865-0001-Fix-crmadmin-printing-DC-quietly-if-needed.patch ------------------------------------------------------------------- Sun Dec 06 12:32:29 UTC 2020 - Yan Gao @@ -1769,7 +1946,7 @@ Thu Jan 31 08:07:34 UTC 2019 - ygao@suse.com - CTS: really don't require nodes to be specified if listing tests (bsc#1114840) - controller: really avoid closing attrd IPC for temporary failures - controller: clear election dampening when DC is lost - + ------------------------------------------------------------------- Mon Jan 28 10:24:10 UTC 2019 - ygao@suse.com @@ -1950,7 +2127,7 @@ Thu Oct 4 09:35:38 UTC 2018 - ygao@suse.com - pacemaker-based: drop declared, errant option never backed in tree - crm_mon: don't exit directly from cib_connect on error - scheduler: honor asymmetric orderings even when restarting - + ------------------------------------------------------------------- Thu Sep 13 09:59:39 UTC 2018 - ygao@suse.com @@ -2299,7 +2476,7 @@ Fri Apr 6 15:39:19 UTC 2018 - ygao@suse.com Fri Apr 6 14:49:31 UTC 2018 - ygao@suse.com - Update to version 1.1.18+20180406.18fe1cc2b: -- XML: upgrade-2.10.xsl: add transform for automatic upgrades to latest schema +- XML: upgrade-2.10.xsl: add transform for automatic upgrades to latest schema - Log: establish correct character string literals also with qb_logt sink - pengine: fix swapped warning message arguments leading to segfault (bsc#1090538) - cts-pengine: add regression test for notifications for unrunnable actions @@ -2620,7 +2797,7 @@ Wed Nov 29 12:05:00 UTC 2017 - ygao@suse.com ------------------------------------------------------------------- Thu Nov 23 13:48:52 UTC 2017 - rbrown@suse.com -- Replace references to /var/adm/fillup-templates with new +- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468) ------------------------------------------------------------------- diff --git a/pacemaker.rpmlintrc b/pacemaker.rpmlintrc index 574275c..221df4d 100644 --- a/pacemaker.rpmlintrc +++ b/pacemaker.rpmlintrc @@ -2,3 +2,4 @@ addFilter("script-without-shebang /usr/share/pacemaker/.*\.rng") addFilter("script-without-shebang /usr/share/pacemaker/.*\.dtd") addFilter("script-without-shebang /usr/share/pacemaker/.*\.xsl") addFilter("non-executable-script /usr/share/pacemaker/cts/") +addFilter("shlib-policy-name-error") diff --git a/pacemaker.spec b/pacemaker.spec index 0db2230..df219cc 100644 --- a/pacemaker.spec +++ b/pacemaker.spec @@ -84,9 +84,8 @@ # Python-related definitions -## Path to Python interpreter (leave commented to auto-detect, -## or uncomment and edit to use a specific version) -%global python_path /usr/bin/python%{python3_version} +## Prefer Python 3 definitions explicitly, in case 2 is also available +%global python_path %{__python3} # Keep sane profiling data if requested %if %{with profiling} @@ -107,7 +106,7 @@ %define with_regression_tests 0 Name: pacemaker -Version: 2.1.0+20210816.c6a4f6e6c +Version: 2.1.2+20211124.ada5c3b36 Release: 0 Summary: Scalable High-Availability cluster resource manager # AGPL-3.0 licensed extra/clustermon.sh is not present in the binary @@ -129,6 +128,7 @@ Patch7: bug-977201_pacemaker-controld-self-fencing.patch Patch8: bug-995365_pacemaker-cts-restart-systemd-journald.patch Patch9: pacemaker-cts-StartCmd.patch Patch10: bsc#1180966-0001-Log-pacemakerd-downgrade-the-warning-about-SBD_SYNC_.patch +Patch11: 0001-Fix-fencer-get-current-time-correctly.patch # Required for core functionality BuildRequires: autoconf BuildRequires: automake @@ -146,6 +146,8 @@ BuildRequires: pkgconfig BuildRequires: resource-agents BuildRequires: sed BuildRequires: pkgconfig(bzip2) +# Required for "make check" +BuildRequires: pkgconfig(cmocka) BuildRequires: pkgconfig(corosync) >= 2.0.0 BuildRequires: pkgconfig(dbus-1) BuildRequires: pkgconfig(glib-2.0) >= 2.42 @@ -159,6 +161,7 @@ BuildRequires: pkgconfig(libxslt) BuildRequires: pkgconfig(python3) BuildRequires: pkgconfig(systemd) BuildRequires: pkgconfig(uuid) +BuildRequires: python-rpm-macros Requires: %{name}-cli = %{version}-%{release} Requires: corosync >= 2.0.0 Requires: libpacemaker3 = %{version}-%{release} @@ -348,6 +351,7 @@ manager. %patch8 -p1 %patch9 -p1 %patch10 -p1 +%patch11 -p1 %build @@ -415,10 +419,6 @@ find %{buildroot} -type f -name "*.la" -delete -print rm -f %{buildroot}/%{_sbindir}/notifyServicelogEvent rm -f %{buildroot}/%{_sbindir}/ipmiservicelogd -# Don't ship init scripts for systemd based platforms -rm -f %{buildroot}/%{_initddir}/pacemaker -rm -f %{buildroot}/%{_initddir}/pacemaker_remote - %if %{with coverage} GCOV_BASE=%{buildroot}/%{_var}/lib/pacemaker/gcov mkdir -p $GCOV_BASE @@ -538,6 +538,7 @@ fi %{_libexecdir}/pacemaker/* %{_sbindir}/fence_legacy +%{_sbindir}/fence_watchdog %{_mandir}/man7/pacemaker-controld.7%{ext_man} %{_mandir}/man7/pacemaker-schedulerd.7%{ext_man} @@ -546,6 +547,7 @@ fi %{_mandir}/man7/ocf_pacemaker_o2cb.7%{ext_man} %{_mandir}/man7/ocf_pacemaker_remote.7%{ext_man} %{_mandir}/man8/fence_legacy.8%{ext_man} +%{_mandir}/man8/fence_watchdog.8%{ext_man} %{_mandir}/man8/pacemakerd.8%{ext_man} %doc %{_datadir}/pacemaker/alerts @@ -614,6 +616,7 @@ fi %exclude %{_mandir}/man7/ocf_pacemaker_remote.* %{_mandir}/man8/* %exclude %{_mandir}/man8/fence_legacy.* +%exclude %{_mandir}/man8/fence_watchdog.* %exclude %{_mandir}/man8/pacemakerd.* %exclude %{_mandir}/man8/pacemaker-remoted.*