SHA256
1
0
forked from pool/pacemaker

443 Commits

Author SHA256 Message Date
42e61c1b17 Sync changes to SLFO-1.2 branch 2025-08-20 10:02:36 +02:00
00d40a7c65 Accepting request 1266031 from network:ha-clustering:Factory
- Update to version 3.0.0+20250331.008a7d1784:
- pacemaker-attrd: make a peer learn our node name once it has joined (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- pacemaker-attrd: ability to send a protocol message to a single peer (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- pacemaker-attrd: make attrd_send_message()'s node argument const (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- pacemaker-attrd: remember names of peers from attribute update in case unknown (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- pacemaker-attrd: use %PRIu32 format specifier instead of %u for node id (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- libcrmcluster: correctly log node id (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- pacemaker-attrd: log the cluster layer id of the changed peer (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- pacemaker-attrd: prevent segfault if a peer leaves when its name is unknown yet (bsc#1239629, gh#ClusterLabs/pacemaker#3847)

- spec: create a temporary file in /run directory (bsc#1239770)

- Update to version 3.0.0+20250326.6053d2fc3f:
- agents: Add an advised interval value for monitor action in remote RA (gh#ClusterLabs/pacemaker#3854)

- Update to version 3.0.0+20250325.6ad1da5e7a:
- libcib: Don't match element based on XPath matching an attribute

- Update to version 3.0.0+20250319.4263b0ac7e:
- libcrmcommon: provide a description for pcmk_rc_no_dc return code (gh#ClusterLabs/pacemaker#3848)

- Update to version 3.0.0+20250318.6d6734a86b:
- tools: Use correct error code for command lookup failure
- tools: Dry-run crm_resource --fail if CIB_file is set
- libcrmcommon: Sort schema transformations on non-glibc systems
- libcrmcommon: Ensure schema transform numbers are in valid range
- libcrmcommon: Match literal dots in schema transform filter (forwarded request 1266030 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1266031
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=165
2025-04-02 15:08:22 +00:00
3e90be3050 - Update to version 3.0.0+20250331.008a7d1784:
- pacemaker-attrd: make a peer learn our node name once it has joined (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- pacemaker-attrd: ability to send a protocol message to a single peer (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- pacemaker-attrd: make attrd_send_message()'s node argument const (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- pacemaker-attrd: remember names of peers from attribute update in case unknown (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- pacemaker-attrd: use %PRIu32 format specifier instead of %u for node id (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- libcrmcluster: correctly log node id (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- pacemaker-attrd: log the cluster layer id of the changed peer (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
- pacemaker-attrd: prevent segfault if a peer leaves when its name is unknown yet (bsc#1239629, gh#ClusterLabs/pacemaker#3847)

- spec: create a temporary file in /run directory (bsc#1239770)

- Update to version 3.0.0+20250326.6053d2fc3f:
- agents: Add an advised interval value for monitor action in remote RA (gh#ClusterLabs/pacemaker#3854)

- Update to version 3.0.0+20250325.6ad1da5e7a:
- libcib: Don't match element based on XPath matching an attribute

- Update to version 3.0.0+20250319.4263b0ac7e:
- libcrmcommon: provide a description for pcmk_rc_no_dc return code (gh#ClusterLabs/pacemaker#3848)

- Update to version 3.0.0+20250318.6d6734a86b:
- tools: Use correct error code for command lookup failure
- tools: Dry-run crm_resource --fail if CIB_file is set
- libcrmcommon: Sort schema transformations on non-glibc systems
- libcrmcommon: Ensure schema transform numbers are in valid range
- libcrmcommon: Match literal dots in schema transform filter

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=418
2025-04-01 07:45:40 +00:00
8e38b6cc3f Accepting request 1254950 from network:ha-clustering:Factory
- spec: Provides user(hacluster) and group(haclient) (forwarded request 1254949 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1254950
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=164
2025-03-24 12:25:13 +00:00
220bd01a20 Accepting request 1254949 from home:yan_gao:branches:network:ha-clustering:Factory
- spec: Provides user(hacluster) and group(haclient)

OBS-URL: https://build.opensuse.org/request/show/1254949
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=416
2025-03-21 08:53:47 +00:00
cd7e904978 Accepting request 1252999 from network:ha-clustering:Factory
- tools: Fix memory leak in cli_resource_delete() (gh#ClusterLabs/pacemaker#3835) (forwarded request 1252998 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1252999
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=163
2025-03-15 15:15:52 +00:00
60761d198a Accepting request 1252998 from home:yan_gao:branches:network:ha-clustering:Factory
- tools: Fix memory leak in cli_resource_delete() (gh#ClusterLabs/pacemaker#3835)

OBS-URL: https://build.opensuse.org/request/show/1252998
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=414
2025-03-14 08:44:58 +00:00
1d10732568 Accepting request 1252795 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 3.0.0+20250310.476dc59612:
- cts-scheduler: update tests for considering parents of an unmanaged resource active on the node (gh#ClusterLabs/pacemaker#3836, bsc#1238519)
- libpe_status: consider parents of an unmanaged resource active on the node (gh#ClusterLabs/pacemaker#3836, bsc#1238519)

- Update to version 3.0.0+20250310.3573e5a552:
- tools: Fix memory leak in cli_resource_delete()
- various: Correctly detect completion of systemd start/stop actions
- libcrmservice: Fix overrides for systemd resources
- libcrmservice: Fail systemd rsc start if create override fails
- Build: Run cts-cli verbosely.
- controller: improve resource action execution logs
- controller: improve start-up/exit messages
- controller: drop dot file logs
- controller: simplify join finalization messages
- pacemaker-based: improve a few messages
- pacemaker-based: improve exit messages
- pacemaker-based: improve messages when reading CIB from disk

- spec: specify 189 as uid/gid of hacluster/haclient (bsc#1239084)

- spec: specify /var/lib/pacemaker as home directory of hacluster user (bsc#1239084)

OBS-URL: https://build.opensuse.org/request/show/1252795
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=413
2025-03-13 15:11:50 +00:00
51fcab49cc Accepting request 1252133 from home:yan_gao:branches:network:ha-clustering:Factory
- spec: specify /var/lib/pacemaker as home directory for hacluster user (bsc#1239084)

OBS-URL: https://build.opensuse.org/request/show/1252133
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=412
2025-03-11 17:29:01 +00:00
4de76f4805 Accepting request 1251849 from home:yan_gao:branches:network:ha-clustering:Factory
OBS-URL: https://build.opensuse.org/request/show/1251849
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=411
2025-03-10 16:44:09 +00:00
6ab0dccf8e Accepting request 1248015 from network:ha-clustering:Factory
- Update to version 3.0.0+20250218.3d0ffefd9e:
- build: Fix default pacemaker-remoted path

- Update to version 3.0.0+20250210.af3642fbf6:
- libcrmcluster: prevent external callers from triggering assertion when connecting to cluster (gh#ClusterLabs/pacemaker#3821)

- Update to version 3.0.0+20250207.d06c888ba7:
- libpacemaker: Reset scheduler object in pcmk_simulate()
- libpe_status: Make cluster_status() idempotent
- tools: Fix overflow in crm_simulate --repeat
- libpacemaker: Handle scandir() error in pcmk__profile_dir()
- libpacemaker: Fix mem leak in pcmk__profile_dir()
- tools: Avoid crash in crm_simulate --profile

- Update to version 3.0.0+20250205.88e9ec1325:
- libcrmservices: Unref the dbus connection... (gh#ClusterLabs/pacemaker#3816)
- libcrmservices: Don't leak msg if systemd_proxy is NULL. (gh#ClusterLabs/pacemaker#3816)

- Update to version 3.0.0+20250203.f950b1d05d:
- python: Add python value for new CRM_EX_NO_DC exit code. (gh#ClusterLabs/pacemaker#3815)
- libcrmcommon: Fix memory leak in text_end_list()/curses_end_list() (gh#ClusterLabs/pacemaker#3814)
- crmadmin: return error if DC is not elected #2902 #3606 (gh#ClusterLabs/pacemaker#3716)

- Update to version 3.0.0+20250128.0de22e5f75:
- libraries: Update version numbers in so names
- Rebase:
  * bug-995365_pacemaker-cts-restart-systemd-journald.patch

- Update to version 3.0.0+20250114.7dc494a96f:
- controller: best practices for send_stonith_update() (gh#ClusterLabs/pacemaker#3796) (forwarded request 1248014 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1248015
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=162
2025-02-25 15:39:08 +00:00
160ab3edce - Update to version 3.0.0+20250218.3d0ffefd9e:
- build: Fix default pacemaker-remoted path

- Update to version 3.0.0+20250210.af3642fbf6:
- libcrmcluster: prevent external callers from triggering assertion when connecting to cluster (gh#ClusterLabs/pacemaker#3821)

- Update to version 3.0.0+20250207.d06c888ba7:
- libpacemaker: Reset scheduler object in pcmk_simulate()
- libpe_status: Make cluster_status() idempotent
- tools: Fix overflow in crm_simulate --repeat
- libpacemaker: Handle scandir() error in pcmk__profile_dir()
- libpacemaker: Fix mem leak in pcmk__profile_dir()
- tools: Avoid crash in crm_simulate --profile

- Update to version 3.0.0+20250205.88e9ec1325:
- libcrmservices: Unref the dbus connection... (gh#ClusterLabs/pacemaker#3816)
- libcrmservices: Don't leak msg if systemd_proxy is NULL. (gh#ClusterLabs/pacemaker#3816)

- Update to version 3.0.0+20250203.f950b1d05d:
- python: Add python value for new CRM_EX_NO_DC exit code. (gh#ClusterLabs/pacemaker#3815)
- libcrmcommon: Fix memory leak in text_end_list()/curses_end_list() (gh#ClusterLabs/pacemaker#3814)
- crmadmin: return error if DC is not elected #2902 #3606 (gh#ClusterLabs/pacemaker#3716)

- Update to version 3.0.0+20250128.0de22e5f75:
- libraries: Update version numbers in so names
- Rebase:
  * bug-995365_pacemaker-cts-restart-systemd-journald.patch

- Update to version 3.0.0+20250114.7dc494a96f:
- controller: best practices for send_stonith_update() (gh#ClusterLabs/pacemaker#3796)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=409
2025-02-24 08:21:45 +00:00
98f41ca490 Accepting request 1243604 from network:ha-clustering:Factory
- Update to version 3.0.0+20250128.fa492f5181:
- libraries: Update version numbers in so names

- Update to version 3.0.0+20250108.d8340737c4 (Pacemaker-3.0.0):
- Build: raise minimum GnuTLS dependency to 3.4.6

- Update to version 2.1.9+20241223.2587987be9 (Pacemaker-3.0.0-rc3):
- agents: Replace the egrep command with the EGREP definition in ping RA
- libcrmcluster: fix format typos
- doc: drop Inkscape dependency
- tools: validate stonith_admin --timeout value
- libpacemaker: set fail-count to INFINITY for fatal failures (gh#ClusterLabs/pacemaker#3771)
- libpacemaker: add PCMK__XA_FAILED_START_OFFSET and PCMK__XA_FAILED_STOP_OFFSET (gh#ClusterLabs/pacemaker#3771)
- OCF: controld.in: Remove gfs_controld command as it's already obsoleted (gh#ClusterLabs/pacemaker#3767)

- Update to version 2.1.9+20241211.4ae3a303e5 (Pacemaker-3.0.0-rc2):
- sysconfig: Document using certificates for remote nodes.
- sysconfig: Explain permissions needed on TLS-related files.
- liblrmd: Enable TLS support for Pacemaker Remote clients.
- daemons: Enable TLS support for Pacemaker Remote nodes.
- libcrmcommon: Set *tls = NULL in a few more locations.
- xml: Warn about post-transform behavior changes for ACLs with xpath
- libcrmcluster: restore CPG header size compatibility
- libcrmcluster: improve messages in pcmk__cpg_message_data()
- libcrmcluster: don't assert for CPG decompression error
- libcrmcluster: avoid redundant log for invalid CPG messages
- libcrmcluster: initialize from in pcmk__cpg_message_data()
- scheduler: avoid memory leak in bundles
- libcib: Enable TLS certs for remote CIB operations.
- libs: Log if a TLS certificate is close to expiration. (forwarded request 1243603 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1243604
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=161
2025-02-09 18:59:11 +00:00
fdbb7fdbb0 - Update to version 3.0.0+20250128.fa492f5181:
- libraries: Update version numbers in so names

- Update to version 3.0.0+20250108.d8340737c4 (Pacemaker-3.0.0):
- Build: raise minimum GnuTLS dependency to 3.4.6

- Update to version 2.1.9+20241223.2587987be9 (Pacemaker-3.0.0-rc3):
- agents: Replace the egrep command with the EGREP definition in ping RA
- libcrmcluster: fix format typos
- doc: drop Inkscape dependency
- tools: validate stonith_admin --timeout value
- libpacemaker: set fail-count to INFINITY for fatal failures (gh#ClusterLabs/pacemaker#3771)
- libpacemaker: add PCMK__XA_FAILED_START_OFFSET and PCMK__XA_FAILED_STOP_OFFSET (gh#ClusterLabs/pacemaker#3771)
- OCF: controld.in: Remove gfs_controld command as it's already obsoleted (gh#ClusterLabs/pacemaker#3767)

- Update to version 2.1.9+20241211.4ae3a303e5 (Pacemaker-3.0.0-rc2):
- sysconfig: Document using certificates for remote nodes.
- sysconfig: Explain permissions needed on TLS-related files.
- liblrmd: Enable TLS support for Pacemaker Remote clients.
- daemons: Enable TLS support for Pacemaker Remote nodes.
- libcrmcommon: Set *tls = NULL in a few more locations.
- xml: Warn about post-transform behavior changes for ACLs with xpath
- libcrmcluster: restore CPG header size compatibility
- libcrmcluster: improve messages in pcmk__cpg_message_data()
- libcrmcluster: don't assert for CPG decompression error
- libcrmcluster: avoid redundant log for invalid CPG messages
- libcrmcluster: initialize from in pcmk__cpg_message_data()
- scheduler: avoid memory leak in bundles
- libcib: Enable TLS certs for remote CIB operations.
- libs: Log if a TLS certificate is close to expiration.

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=407
2025-02-06 10:54:26 +00:00
cd23f4d819 Accepting request 1228711 from network:ha-clustering:Factory
- Update to version 2.1.9+20241107.c3b66b02d0:
- CTS: Fix cts-lab --list. (gh#ClusterLabs/pacemaker#3723)

- Update to version 2.1.9+20241105.e043e6816a:
- executor: avoid use-after-free upon shutdown (bsc#1232613, gh#ClusterLabs/pacemaker#3719)

- Update to version 2.1.9+20241031.49aab99839 (Pacemaker-2.1.9):
- includes: Bump CRM_FEATURE_SET for iso8601 formatted output.
- schemas: Add an XML schema for iso8601 output.
- tools: Convert iso8601 to formatted output.

- Update to version 2.1.8+20241021.40d69ff424 (Pacemaker-2.1.9-rc3):
- tools: restore crmadmin default timeout to 30 seconds (bsc#1217259, bsc#1228781, jsc#PED-8311, gh#ClusterLabs/pacemaker#3703)
- libcrmcommon: any negative interval is an error
- agents: always allow attribute agent to show metadata
- agents: use RESOURCENAME in attribute agent metadata
- agents: use configured run directory in attribute agent
- controld: leave xml-src attribute empty when no DC selected #2902 (bsc#1217259, bsc#1228781, jsc#PED-8311, gh#ClusterLabs/pacemaker#3702)

- Update to version 2.1.8+20241015.33f3052b89 (Pacemaker-2.1.9-rc2):
- pacemakerd: combine subdaemon start-up logs
- libcrmcommon: avoid potential overflow when adding seconds
- libcib: Perform server-side remote CIB reads asynchronously.
- libcib: Perform client-side remote CIB reads asynchronously.
- tools: crm_resource returns error on failed schema upgrade
- libcrmcommon: Don't assert on failure to write errors. (gh#ClusterLabs/pacemaker#3684)

- Update to version 2.1.8+20241003.95cef6b307 (Pacemaker-2.1.9-rc1):
- NLS: update translations for current code base
- scheduler: Fixed memory leak when searching for unfencing devices. (gh#ClusterLabs/pacemaker#3678) (forwarded request 1228709 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1228711
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=160
2024-12-08 10:36:12 +00:00
d854adba09 - Update to version 2.1.9+20241107.c3b66b02d0:
- CTS: Fix cts-lab --list. (gh#ClusterLabs/pacemaker#3723)

- Update to version 2.1.9+20241105.e043e6816a:
- executor: avoid use-after-free upon shutdown (bsc#1232613, gh#ClusterLabs/pacemaker#3719)

- Update to version 2.1.9+20241031.49aab99839 (Pacemaker-2.1.9):
- includes: Bump CRM_FEATURE_SET for iso8601 formatted output.
- schemas: Add an XML schema for iso8601 output.
- tools: Convert iso8601 to formatted output.

- Update to version 2.1.8+20241021.40d69ff424 (Pacemaker-2.1.9-rc3):
- tools: restore crmadmin default timeout to 30 seconds (bsc#1217259, bsc#1228781, jsc#PED-8311, gh#ClusterLabs/pacemaker#3703)
- libcrmcommon: any negative interval is an error
- agents: always allow attribute agent to show metadata
- agents: use RESOURCENAME in attribute agent metadata
- agents: use configured run directory in attribute agent
- controld: leave xml-src attribute empty when no DC selected #2902 (bsc#1217259, bsc#1228781, jsc#PED-8311, gh#ClusterLabs/pacemaker#3702)

- Update to version 2.1.8+20241015.33f3052b89 (Pacemaker-2.1.9-rc2):
- pacemakerd: combine subdaemon start-up logs
- libcrmcommon: avoid potential overflow when adding seconds
- libcib: Perform server-side remote CIB reads asynchronously.
- libcib: Perform client-side remote CIB reads asynchronously.
- tools: crm_resource returns error on failed schema upgrade
- libcrmcommon: Don't assert on failure to write errors. (gh#ClusterLabs/pacemaker#3684)

- Update to version 2.1.8+20241003.95cef6b307 (Pacemaker-2.1.9-rc1):
- NLS: update translations for current code base
- scheduler: Fixed memory leak when searching for unfencing devices. (gh#ClusterLabs/pacemaker#3678)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=405
2024-12-06 08:32:13 +00:00
a56de30f51 Accepting request 1204955 from network:ha-clustering:Factory
- Update to version 2.1.8+20240808.3980678f03 (Pacemaker-2.1.8):
- scheduler: correct format arguments
- libpacemaker: Don't apply colocation twice for promotion priority
- libpacemaker: Apply promotion priority to cloned group instance (forwarded request 1204954 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1204955
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=159
2024-10-02 19:32:47 +00:00
85ce16ce4a - Update to version 2.1.8+20240808.3980678f03 (Pacemaker-2.1.8):
- scheduler: correct format arguments
- libpacemaker: Don't apply colocation twice for promotion priority
- libpacemaker: Apply promotion priority to cloned group instance

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=403
2024-10-01 15:06:25 +00:00
3f7ae2dd50 Accepting request 1187168 from network:ha-clustering:Factory
- Update to version 2.1.7+20240711.239cba384:
- various: Don't set cluster-layer node ID as XML ID
- tools: crm_node -i must initialize nodeid before passing pointer (gh#ClusterLabs/pacemaker#3574)

- Update to version 2.1.7+20240709.f04c3b02c:
- tools: CIB clients retry signon upon an EAGAIN error (gh#ClusterLabs/pacemaker#3567, bsc#1224183)
- libcib: new function cib__signon_attempts() (gh#ClusterLabs/pacemaker#3567, bsc#1224183)

- Update to version 2.1.7+20240708.347e83d87:
- crm_verify: Improve checking of fencing level IDs

- Update to version 2.1.7+20240703.f73f033d5 (Pacemaker-2.1.8-rc3):
- sysconfig: deprecate PCMK_dh_min_bits environment variable

- Update to version 2.1.7+20240701.8af8b59e2:
- libcrmcluster: use local hostname for node name if not configured in corosync (gh#ClusterLabs/pacemaker#3551)

- Update to version 2.1.7+20240701.b4e61209c:
- tools: Don't double-free XML in crm_verify after schema update

- Update to version 2.1.7+20240701.a1003bbf1:
- cts-cli: update expected output for crm_verify to distinguish configuration warnings and errors (gh#ClusterLabs/pacemaker#3543)
- tools: crm_verify distinguishes configuration warnings and errors (gh#ClusterLabs/pacemaker#3543)

- Update to version 2.1.7+20240624.5d44a760b:
- libcrmcommon: don't try to add to full string in pcmk__time_format_hr()
- libcrmcommon: handle formatting errors in pcmk__time_format_hr()
- scheduler: consider group locations when member is explicit colocation dependent
- tools: Don't skip formatting if running crm_simulate interactively. (forwarded request 1187166 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1187168
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=158
2024-07-15 17:45:43 +00:00
a8282f485b Accepting request 1179895 from network:ha-clustering:Factory
- Update to version 2.1.7+20240530.09c4d6d2e:
- libstonithd: free escaped metadata descriptions with g_free() (bsc#1224869, gh#ClusterLabs/pacemaker#3480)
- libstonithd: avoid use-after-free when retrieving metadata of Linux-HA fence agents (bsc#1224869, gh#ClusterLabs/pacemaker#3480)

- Update to version 2.1.7+20240529.c7e11c771:
- libcrmcommon: support PCMK_panic_action="off" or "sync-off"
- libcrmcommon: avoid possible buffer overflow in pcmk__time_format_hr()
- libcrmcommon: avoid possible buffer overflow in parse_date()

- Update to version 2.1.7+20240515.39ef08240 (Pacemaker-2.1.8-rc1):
- ChangeLog: update for 2.1.8-rc1 release

- Update to version 2.1.7+20240514.9d0f30818:
- scheduler: avoid memory leaks when updating action names
- libcrmcommon: fix readable interval
- tools: make crm_simulate output for bad input more understandable
- libcrmcommon: Avoid leaking gnutls session
- libcrmcluster: Fix a typo in an info message.
- executor: Avoid memory leak in get_schema_files()
- tools: Use crm_exit() consistently
- executor: Spawn remoted pid 1 before allocating dynamic memory
- libcib: Fix memory leak in cib_client_fetch_schemas()
- libpacemaker: Fix mem leak in pcmk__acl_evaled_render()
- libcrmcommon: avoid memory leaks when loading and freeing schemas
- libcib: avoid memory leak in async calls
- scheduler,tools: compare resource history IDs case-sensitively
- executor: avoid pacemaker-remoted crash
- libcrmcommon: Fix memory leak in pcmk__build_schema_xml_node()
- libcrmcommon: Fix memory leak in ipc_proxy_dispatch()
- fencer: Fix memory leak in handle_local_reply_and_notify()

OBS-URL: https://build.opensuse.org/request/show/1179895
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=157
2024-06-11 16:27:04 +00:00
99a4fb8492 Accepting request 1178467 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.7+20240530.09c4d6d2e:
- libstonithd: free escaped metadata descriptions with g_free() (bsc#1224869, gh#ClusterLabs/pacemaker#3480)
- libstonithd: avoid use-after-free when retrieving metadata of Linux-HA fence agents (bsc#1224869, gh#ClusterLabs/pacemaker#3480)

- Update to version 2.1.7+20240529.c7e11c771:
- libcrmcommon: support PCMK_panic_action="off" or "sync-off"
- libcrmcommon: avoid possible buffer overflow in pcmk__time_format_hr()
- libcrmcommon: avoid possible buffer overflow in parse_date()

- Update to version 2.1.7+20240515.39ef08240 (Pacemaker-2.1.8-rc1):
- ChangeLog: update for 2.1.8-rc1 release

- Update to version 2.1.7+20240514.9d0f30818:
- scheduler: avoid memory leaks when updating action names
- libcrmcommon: fix readable interval
- tools: make crm_simulate output for bad input more understandable
- libcrmcommon: Avoid leaking gnutls session
- libcrmcluster: Fix a typo in an info message.
- executor: Avoid memory leak in get_schema_files()
- tools: Use crm_exit() consistently
- executor: Spawn remoted pid 1 before allocating dynamic memory
- libcib: Fix memory leak in cib_client_fetch_schemas()
- libpacemaker: Fix mem leak in pcmk__acl_evaled_render()
- libcrmcommon: avoid memory leaks when loading and freeing schemas
- libcib: avoid memory leak in async calls
- scheduler,tools: compare resource history IDs case-sensitively
- executor: avoid pacemaker-remoted crash
- libcrmcommon: Fix memory leak in pcmk__build_schema_xml_node()
- libcrmcommon: Fix memory leak in ipc_proxy_dispatch()
- fencer: Fix memory leak in handle_local_reply_and_notify()

OBS-URL: https://build.opensuse.org/request/show/1178467
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=399
2024-06-04 08:47:30 +00:00
8327fcdb6f Accepting request 1168817 from network:ha-clustering:Factory
- Update to version 2.1.7+20240411.81041cf0b:
- libcrmcommon: Avoid use-after-free in mark_xml_changes()
- libcrmcommon: Mark parents dirty in pcmk__mark_xml_created()

- Update to version 2.1.7+20240410.ae4b38ab5:
- scheduler: deprecate Nagios and Upstart resources even if built with --enable-compat-2.0 (gh#ClusterLabs/pacemaker#3417)

- Update to version 2.1.7+20240410.74b7a09c5:
- tools: New crm_resource --list-options=primitive option (gh#ClusterLabs/pacemaker#3399)
- libcrmcommon: Use PCMK_VALUE_VERSION as option type (gh#ClusterLabs/pacemaker#3399)
- libcrmcommon: Use PCMK_VALUE_TIMEOUT as option type (gh#ClusterLabs/pacemaker#3399)
- libcrmcommon: Use PCMK_VALUE_SCORE as option type (gh#ClusterLabs/pacemaker#3399)
- libcrmcommon: Use PCMK_VALUE_NONNEGATIVE_INTEGER as opt type (gh#ClusterLabs/pacemaker#3399)
- libcrmcommon: Use PCMK_VALUE_DURATION as option type (gh#ClusterLabs/pacemaker#3399)
- schemas: Allow more types in options API schema
- fencer: Deprecate metadata CLI option (gh#ClusterLabs/pacemaker#3399)
- crm_resource: New --list-options=fencing option (gh#ClusterLabs/pacemaker#3399)
- schemas: Allow options in crm_resource output
- scheduler: warn if multiple top-level rules are used

- Update to version 2.1.7+20240408.78e71e024:
- scheduler: correctly log resource IDs of the deprecated classes (gh#ClusterLabs/pacemaker#3415)

- Update to version 2.1.7+20240404.4eedfe810:
- libcib: Don't incorrectly expand "++" and "+=" in XML attr values (gh#ClusterLabs/pacemaker#3413)
- cts-cli: Update for pcmk__inject_failcount() setting integer value (gh#ClusterLabs/pacemaker#3413)
- libpacemaker: pcmk__inject_failcount should set an integer value (gh#ClusterLabs/pacemaker#3413)
- scheduler: improve message for empty location rules
- scheduler: improve error checking in pcmk__new_location()
- schemas: restructure rule schema for planned incompatible changes

OBS-URL: https://build.opensuse.org/request/show/1168817
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=156
2024-04-18 20:10:03 +00:00
a21eaa7394 Accepting request 1168521 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.7+20240411.81041cf0b:
- libcrmcommon: Avoid use-after-free in mark_xml_changes()
- libcrmcommon: Mark parents dirty in pcmk__mark_xml_created()

- Update to version 2.1.7+20240410.ae4b38ab5:
- scheduler: deprecate Nagios and Upstart resources even if built with --enable-compat-2.0 (gh#ClusterLabs/pacemaker#3417)

- Update to version 2.1.7+20240410.74b7a09c5:
- tools: New crm_resource --list-options=primitive option (gh#ClusterLabs/pacemaker#3399)
- libcrmcommon: Use PCMK_VALUE_VERSION as option type (gh#ClusterLabs/pacemaker#3399)
- libcrmcommon: Use PCMK_VALUE_TIMEOUT as option type (gh#ClusterLabs/pacemaker#3399)
- libcrmcommon: Use PCMK_VALUE_SCORE as option type (gh#ClusterLabs/pacemaker#3399)
- libcrmcommon: Use PCMK_VALUE_NONNEGATIVE_INTEGER as opt type (gh#ClusterLabs/pacemaker#3399)
- libcrmcommon: Use PCMK_VALUE_DURATION as option type (gh#ClusterLabs/pacemaker#3399)
- schemas: Allow more types in options API schema
- fencer: Deprecate metadata CLI option (gh#ClusterLabs/pacemaker#3399)
- crm_resource: New --list-options=fencing option (gh#ClusterLabs/pacemaker#3399)
- schemas: Allow options in crm_resource output
- scheduler: warn if multiple top-level rules are used

- Update to version 2.1.7+20240408.78e71e024:
- scheduler: correctly log resource IDs of the deprecated classes (gh#ClusterLabs/pacemaker#3415)

- Update to version 2.1.7+20240404.4eedfe810:
- libcib: Don't incorrectly expand "++" and "+=" in XML attr values (gh#ClusterLabs/pacemaker#3413)
- cts-cli: Update for pcmk__inject_failcount() setting integer value (gh#ClusterLabs/pacemaker#3413)
- libpacemaker: pcmk__inject_failcount should set an integer value (gh#ClusterLabs/pacemaker#3413)
- scheduler: improve message for empty location rules
- scheduler: improve error checking in pcmk__new_location()
- schemas: restructure rule schema for planned incompatible changes

OBS-URL: https://build.opensuse.org/request/show/1168521
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=397
2024-04-17 11:15:10 +00:00
b348f0494e Accepting request 1158031 from network:ha-clustering:Factory
- Update to version 2.1.7+20240304.d18a497eb:
- libcrmcommon: use uint32_t for 32-bit magic numbers (gh#ClusterLabs/pacemaker#3381)

- Update to version 2.1.7+20240304.d7bf4680c:
- libcrmcommon: Use free_xml in html_free_priv.
- libcrmcommon:  Free error strings in html/xml outputters.
- libcrmcommon: Free text/curses private list data.
- tools: Fix argument validation for crm_attribute update.
- pacemaker-fenced: improve pcmk_host_list help
- libcrmcommon, fencer: Fix some option defaults
- tools: crm_attribute --list-options --all
- scheduler: Deprecate metadata CLI option
- controller: Deprecate metadata CLI option
- based: Deprecate metadata CLI option
- libcrmcommon: Bump CRM_FEATURE_SET for cluster option listing
- tools: New crm_attribute --list-options=TYPE option
- schemas: Update for crm_attribute --list-options
- schemas: New options API schema
- schemas: New OCF RA version 1.1 schema
- tools: deprecate --text-fancy command-line option

- remove dependency on /usr/bin/python3 using
  %python3_fix_shebang_path macro, [bsc#1212476] (forwarded request 1158030 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1158031
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=155
2024-03-15 19:28:03 +00:00
18fc72748e Accepting request 1158030 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.7+20240304.d18a497eb:
- libcrmcommon: use uint32_t for 32-bit magic numbers (gh#ClusterLabs/pacemaker#3381)

- Update to version 2.1.7+20240304.d7bf4680c:
- libcrmcommon: Use free_xml in html_free_priv.
- libcrmcommon:  Free error strings in html/xml outputters.
- libcrmcommon: Free text/curses private list data.
- tools: Fix argument validation for crm_attribute update.
- pacemaker-fenced: improve pcmk_host_list help
- libcrmcommon, fencer: Fix some option defaults
- tools: crm_attribute --list-options --all
- scheduler: Deprecate metadata CLI option
- controller: Deprecate metadata CLI option
- based: Deprecate metadata CLI option
- libcrmcommon: Bump CRM_FEATURE_SET for cluster option listing
- tools: New crm_attribute --list-options=TYPE option
- schemas: Update for crm_attribute --list-options
- schemas: New options API schema
- schemas: New OCF RA version 1.1 schema
- tools: deprecate --text-fancy command-line option

- remove dependency on /usr/bin/python3 using
  %python3_fix_shebang_path macro, [bsc#1212476]

OBS-URL: https://build.opensuse.org/request/show/1158030
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=395
2024-03-14 15:36:18 +00:00
0aa952ddbd Accepting request 1155992 from home:yan_gao:branches:network:ha-clustering:Factory
OBS-URL: https://build.opensuse.org/request/show/1155992
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=394
2024-03-07 14:43:18 +00:00
121797cc17 Accepting request 1153913 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.7+20240226.bff14cd3f:
- libcrmservice: avoid async zombie children by resending ignored SIGCHLD (bsc#1216972, gh#ClusterLabs/pacemaker#3374)
- fencer: fix pcmk_delay_max description (gh#ClusterLabs/pacemaker#3373)

OBS-URL: https://build.opensuse.org/request/show/1153913
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=393
2024-03-01 11:23:34 +00:00
f813a15ec2 Accepting request 1148355 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.7+20240220.d4f389e48:
- libcrmcommon: avoid file descriptor leak in IPC client with async connection (bsc#1219323, gh#ClusterLabs/pacemaker#3351)

- Update to version 2.1.7+20240219.a586196f1:
- libcrmservice: Revert single quotes to double quotes in metadata
- libcrmcommon: Always output request= in XML output. (gh#ClusterLabs/pacemaker#3362)
- scheduler: improve date specification argument validation
- libcrmcommon: Properly handle UTF-8 characters when escaping XML
- libcrmcommon: Don't include "<null>" as an attribute value
- tools: Drop newline from crm_rule errors
- libcrmcommon: Escape XML text content when adding it
- libcrmcommon: Escape XML text content when dumping XML as string
- libcrmcommon: crm_xml_escape() shouldn't stop on Unicode characters (gh#ClusterLabs/pacemaker#3323)
- libcrmcommon: Always use XML substitutions
- tools: crm_simulate output should match its schema
- Rebase:
  * bug-728579_pacemaker-stonith-dev-id.patch

OBS-URL: https://build.opensuse.org/request/show/1148355
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=392
2024-02-20 21:49:26 +00:00
271ab1da64 Accepting request 1146108 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.7+20240130.4f595be2b:
- tools: crm_attribute emits garbage for --node localhost or auto (gh#ClusterLabs/pacemaker#3339)
- scheduler: drop support for rules based on #role attribute
- CIB: deprecate support for rkt in bundles
- daemons: use ENOMEM for pcmk__new_client() failure
- daemons: return ECONNREFUSED to new clients at shutdown
- libpacemaker: Fix a parameter to the cluster-status message.
- tools: Fix memory leak in crm_mon with HTML output (gh#ClusterLabs/pacemaker#3332)

- Update to version 2.1.7+20240122.d342672cb:
- pacemaker-attrd: improve some messages for debugging
- pacemaker-attrd: sync utilization attributes to peers correctly (gh#ClusterLabs/pacemaker#3333)
- pacemaker-attrd: properly validate attribute set type (gh#ClusterLabs/pacemaker#3333)
- cib_file: improve error message when schema file is missing
- libcrmcommon, Pacemaker Explained: improve descriptions of cluster options

- Update to version 2.1.7+20240118.9ae4bea49:
- tools: crm_mon segfaults when fencer connection is lost (bsc#1219220, gh#ClusterLabs/pacemaker#3331)

- Update to version 2.1.7+20240117.570909537:
- pacemaker-attrd: make sure we don't try to log NULL
- libpe_rules: Warn on invalid value-source in expressions
- libpe_rules, libpacemaker: Warn on invalid boolean-op
- CIB: Deprecate resource-discovery-enabled node attribute
- NLS: update translations for current code base
- libcib: Do not check CIB feature set for files in cib_perform_op.
- scheduler: Check the CIB feature set in cluster_status.
- based: Fix CIB version values
- attrd: write Pacemaker Remote node attributes even if not in cache (gh#ClusterLabs/pacemaker#3304)
- based: Add man page for pacemaker-based

OBS-URL: https://build.opensuse.org/request/show/1146108
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=391
2024-02-12 09:18:10 +00:00
52b46bddef Accepting request 1137032 from network:ha-clustering:Factory
- libcrmcommon: wait for reply from appropriate controller commands (bsc#1218312, rh#2225631, rh#2221084) (forwarded request 1137030 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1137032
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=154
2024-01-05 20:41:49 +00:00
31b6a0411c Accepting request 1137030 from home:yan_gao:branches:network:ha-clustering:Factory
- libcrmcommon: wait for reply from appropriate controller commands (bsc#1218312, rh#2225631, rh#2221084)

OBS-URL: https://build.opensuse.org/request/show/1137030
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=389
2024-01-05 10:53:44 +00:00
ec51479fd0 Accepting request 1135459 from network:ha-clustering:Factory
- Update to version 2.1.7+20231219.0f7f88312 (Pacemaker-2.1.7):
- attrd: Regression in transient attr deletions (gh#ClusterLabs/pacemaker#3283)

- Update to version 2.1.6+20231207.80f8a320e (Pacemaker-2.1.7-rc3):
- agents: handle dampening parameter consistently and correctly

- libcrmcommon: wait for reply from appropriate controller commands (rh#2225631, rh#2221084) (forwarded request 1135458 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1135459
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=153
2023-12-28 21:55:17 +00:00
9a93896fed Accepting request 1135458 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.7+20231219.0f7f88312 (Pacemaker-2.1.7):
- attrd: Regression in transient attr deletions (gh#ClusterLabs/pacemaker#3283)

- Update to version 2.1.6+20231207.80f8a320e (Pacemaker-2.1.7-rc3):
- agents: handle dampening parameter consistently and correctly

- libcrmcommon: wait for reply from appropriate controller commands (rh#2225631, rh#2221084)

OBS-URL: https://build.opensuse.org/request/show/1135458
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=387
2023-12-28 09:45:33 +00:00
fd98592b3f Accepting request 1131356 from network:ha-clustering:Factory
- Update to version 2.1.6+20231205.0f6fbd59f:
- scheduler: log reason for recheck time updates
- scheduler: update recheck time for node-pending-timeout

- Update to version 2.1.6+20231204.e1a1bd808:
- tools: Fix a regression in tool XML output. (clbz#5529)

- Update to version 2.1.6+20231122.7534cc50a (Pacemaker-2.1.7-rc2):
- rpm: require minimum libxml2 version of 2.6.0
- libcrmcommon: Write crm_verify detailed messages to XML
- libcrmcommon: Use const for xmlCtxtGetLastError() (CLBZ#5530)
- libcrmcommon: Drop deprecated libxml2 symbols (CLBZ#5530)
- sysconfig: Use CRM_DAEMON_USER and CRM_DAEMON_GROUP
- sysconfig: Fix defaults for dh_min_bits/dh_max_bits
- sysconfig: Document PCMK_stderr
- pacemakerd: Mark PCMK_shutdown_delay as deprecated
- sysconfig: Document PCMK_cluster_type
- sysconfig: Document PCMK_remote_pid1
- sysconfig: Document PCMK_node_action_limit
- sysconfig: Mark PCMK_cib_timeout as deprecated
- controld/schedullerd: Change the default value of node-pending-timeout to 0.
- controld: Adding default value for node-pending-timeout.
- crm_resource: make --wait wait for pending actions in CIB

- Update to version 2.1.6+20231031.d0ef74d64 (Pacemaker-2.1.7-rc1):
- attrd: revert faulty T138 fix
- controller: bail if CIB modify fails within transaction
- scheduler: don't show pending nodes as having "<3.15.1" feature set

- Update to version 2.1.6+20231030.66cc0f083: (forwarded request 1131354 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1131356
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=152
2023-12-07 18:09:16 +00:00
48db58056e Accepting request 1131354 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.6+20231205.0f6fbd59f:
- scheduler: log reason for recheck time updates
- scheduler: update recheck time for node-pending-timeout

- Update to version 2.1.6+20231204.e1a1bd808:
- tools: Fix a regression in tool XML output. (clbz#5529)

- Update to version 2.1.6+20231122.7534cc50a (Pacemaker-2.1.7-rc2):
- rpm: require minimum libxml2 version of 2.6.0
- libcrmcommon: Write crm_verify detailed messages to XML
- libcrmcommon: Use const for xmlCtxtGetLastError() (CLBZ#5530)
- libcrmcommon: Drop deprecated libxml2 symbols (CLBZ#5530)
- sysconfig: Use CRM_DAEMON_USER and CRM_DAEMON_GROUP
- sysconfig: Fix defaults for dh_min_bits/dh_max_bits
- sysconfig: Document PCMK_stderr
- pacemakerd: Mark PCMK_shutdown_delay as deprecated
- sysconfig: Document PCMK_cluster_type
- sysconfig: Document PCMK_remote_pid1
- sysconfig: Document PCMK_node_action_limit
- sysconfig: Mark PCMK_cib_timeout as deprecated
- controld/schedullerd: Change the default value of node-pending-timeout to 0.
- controld: Adding default value for node-pending-timeout.
- crm_resource: make --wait wait for pending actions in CIB

- Update to version 2.1.6+20231031.d0ef74d64 (Pacemaker-2.1.7-rc1):
- attrd: revert faulty T138 fix
- controller: bail if CIB modify fails within transaction
- scheduler: don't show pending nodes as having "<3.15.1" feature set

- Update to version 2.1.6+20231030.66cc0f083:

OBS-URL: https://build.opensuse.org/request/show/1131354
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=385
2023-12-06 12:30:32 +00:00
ef8699bb3b Accepting request 1093809 from network:ha-clustering:Factory
- rpm: build with --with-sbd-sync-default="true" only for sle_version >= 150400 (bsc#1180966)
- rpm: build with --enable-legacy-links only for suse_version < 1600
- rpm: build with --enable-compat-2.0 only for suse_version < 1600 (jsc#PED-106, jsc#PED-294)
- rpm: build with --with-concurrent-fencing-default=true only for sle_version >= 150400
- rpm: build with --with-resource-stickiness-default=1 only for sle_version >= 150400
- rpm: build with --with-nagios=true only for suse_version < 1600 (jsc#PED-3877, jsc#PED-4446)
- agents: create symlink ocf:pacemaker:NodeUtilization only for suse_version < 1600 in favor of ocf:heartbeat:NodeUtilization (bsc#1070347)

- Update to version 2.1.6+20230524.6fdc9deea (Pacemaker-2.1.6):
- scheduler: ensure earlier group member starts happen after later member stops

- Update to version 2.1.5+20230502.802a72226 (Pacemaker-2.1.6-rc2):
- rpm: avoid bare wildcards under shared directories in spec
- scheduler: consider mandatory colocations before optional

- Update to version 2.1.5+20230501.832463d94:
- daemons: pacemakerd -S should wait for shutdown before returning (bsc#1210857)

- Update to version 2.1.5+20230501.b049bbeea:
- scheduler: deprecate support for Nagios resources (jsc#PED-3877, jsc#PED-4446)
- scheduler: deprecate "moon" in date_spec elements in rules
- daemons: Preserve transient attrs when possible
- daemons: Sync remote connection info with new controllers.
- daemons: Record the node hosting a remote connection resource.
- daemons: Add node hosting connection resource to state XML.
- daemons: Broadcast remote node state changes to all controllers
- daemons: Add daemon uptime to execd XML replies.

- Update to version 2.1.5+20230424.6127934e3:
- fencer: fencing timeout sent to peer takes no delay into account (bsc#1210074) (forwarded request 1093808 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1093809
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=151
2023-06-21 20:36:56 +00:00
3d429d5100 Accepting request 1093808 from home:yan_gao:branches:network:ha-clustering:Factory
- rpm: build with --with-sbd-sync-default="true" only for sle_version >= 150400 (bsc#1180966)
- rpm: build with --enable-legacy-links only for suse_version < 1600
- rpm: build with --enable-compat-2.0 only for suse_version < 1600 (jsc#PED-106, jsc#PED-294)
- rpm: build with --with-concurrent-fencing-default=true only for sle_version >= 150400
- rpm: build with --with-resource-stickiness-default=1 only for sle_version >= 150400
- rpm: build with --with-nagios=true only for suse_version < 1600 (jsc#PED-3877, jsc#PED-4446)
- agents: create symlink ocf:pacemaker:NodeUtilization only for suse_version < 1600 in favor of ocf:heartbeat:NodeUtilization (bsc#1070347)

- Update to version 2.1.6+20230524.6fdc9deea (Pacemaker-2.1.6):
- scheduler: ensure earlier group member starts happen after later member stops

- Update to version 2.1.5+20230502.802a72226 (Pacemaker-2.1.6-rc2):
- rpm: avoid bare wildcards under shared directories in spec
- scheduler: consider mandatory colocations before optional

- Update to version 2.1.5+20230501.832463d94:
- daemons: pacemakerd -S should wait for shutdown before returning (bsc#1210857)

- Update to version 2.1.5+20230501.b049bbeea:
- scheduler: deprecate support for Nagios resources (jsc#PED-3877, jsc#PED-4446)
- scheduler: deprecate "moon" in date_spec elements in rules
- daemons: Preserve transient attrs when possible
- daemons: Sync remote connection info with new controllers.
- daemons: Record the node hosting a remote connection resource.
- daemons: Add node hosting connection resource to state XML.
- daemons: Broadcast remote node state changes to all controllers
- daemons: Add daemon uptime to execd XML replies.

- Update to version 2.1.5+20230424.6127934e3:
- fencer: fencing timeout sent to peer takes no delay into account (bsc#1210074)

OBS-URL: https://build.opensuse.org/request/show/1093808
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=383
2023-06-19 17:24:46 +00:00
61fef5415c Accepting request 1074950 from network:ha-clustering:Factory
- Update to version 2.1.5+20230320.22590c566:
- libcrmcommon: allow crm_attribute to try OCF_RESOURCE_INSTANCE environment variable if -p is specified with an empty string (bsc#1209586)
- libcrmcommon, libpe_status: New enabled meta attr for alerts
- scheduler: message now applies to all nodes
- libcrmcommon: avoid libqb assertion
- tools: Formatted output in crm_shadow
- schemas: New diff and any-element schemas
- schemas: New crm_shadow and instruction schemas (forwarded request 1074949 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1074950
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=150
2023-03-29 21:26:05 +00:00
e675733f61 Accepting request 1074949 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.5+20230320.22590c566:
- libcrmcommon: allow crm_attribute to try OCF_RESOURCE_INSTANCE environment variable if -p is specified with an empty string (bsc#1209586)
- libcrmcommon, libpe_status: New enabled meta attr for alerts
- scheduler: message now applies to all nodes
- libcrmcommon: avoid libqb assertion
- tools: Formatted output in crm_shadow
- schemas: New diff and any-element schemas
- schemas: New crm_shadow and instruction schemas

OBS-URL: https://build.opensuse.org/request/show/1074949
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=381
2023-03-28 09:54:12 +00:00
d082e5202c D pacemaker-2.1.5+20230309.a4b0ea1b5.tar.xz
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=380
2023-03-28 09:25:28 +00:00
bad0c56170 M project.diff
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=379
2023-03-28 09:05:53 +00:00
8a35b58d76 Accepting request 1073530 from network:ha-clustering:Factory
- Update to version 2.1.5+20230309.a4b0ea1b5:
- controller: compare recordable actions case-sensitively
- libcrmcommon: Don't parse "-INFINITY" as a list of cmdline options (CLBZ#5509)
- tools: crm_shadow --commit now works with CIB_file
- scheduler: expired results shouldn't affect state
- scheduler: avoid remap log if not remapped
- scheduler: always treat degraded results as success
- watchdog-fencing: correctly derive timeout with topology
- watchdog-fencing: terminate dangling timer before watchdog-waiting
- scheduler: ensure resource history entries have an XML ID
- crm_resource: Add the --element option for --get-parameter
- libcrmcommon: Fix problems with pcmk__output_and_clear_error.
- libcrmcommon: Fix memleak in pcmk__output_xml_add_node_copy()
- Rebase:
  * bug-806256_pacemaker-log-level-notice.patch
  * pacemaker-cts-StartCmd.patch

- Update to version 2.1.5+20230220.c4f6c191a:
- libcrmcommon: Fix handling node=NULL in pcmk__attrd_api_query.
- fencer: Avoid double source remove of op_timer_total (rh#2166967)
- Rebase:
  * bug-806256_pacemaker-log-level-notice.patch

- Update to version 2.1.5+20230216.ed8bc68bc:
- scheduler: count only containers' active nodes for bundles

- Update to version 2.1.5+20230208.231b58a40:
- cts: Add a basic cts-attrd program.
- daemons: Modify a couple log messages for testing.
- daemons: Add a -l argument to pacemaker-attrd. (forwarded request 1073529 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1073530
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=149
2023-03-24 14:18:18 +00:00
da2d545cff Accepting request 1073690 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.5+20230314.692147cd3:
- tools: Don't teardown on unsuccessful crm_shadow --delete
- tools: Don't print teardown message for crm_shadow --commit
- libcib: Don't unset env var in cib_new_no_shadow()
- scheduler: avoid displaying failed operations as pending (bsc#1206263)
- Revert "Fix: libpacemaker: ensure any pending recurring monitor gets updated if it fails" (bsc#1206263)
- cts-regression: reflect any test failures again with the return code
- alerts: make alert_snmp.sh.sample compatible with SNMPv3
- tool: update crm_mon synopsis (bsc#1208868)

OBS-URL: https://build.opensuse.org/request/show/1073690
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=378
2023-03-22 06:59:20 +00:00
1523c5f7bd Accepting request 1073529 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.5+20230309.a4b0ea1b5:
- controller: compare recordable actions case-sensitively
- libcrmcommon: Don't parse "-INFINITY" as a list of cmdline options (CLBZ#5509)
- tools: crm_shadow --commit now works with CIB_file
- scheduler: expired results shouldn't affect state
- scheduler: avoid remap log if not remapped
- scheduler: always treat degraded results as success
- watchdog-fencing: correctly derive timeout with topology
- watchdog-fencing: terminate dangling timer before watchdog-waiting
- scheduler: ensure resource history entries have an XML ID
- crm_resource: Add the --element option for --get-parameter
- libcrmcommon: Fix problems with pcmk__output_and_clear_error.
- libcrmcommon: Fix memleak in pcmk__output_xml_add_node_copy()
- Rebase:
  * bug-806256_pacemaker-log-level-notice.patch
  * pacemaker-cts-StartCmd.patch

- Update to version 2.1.5+20230220.c4f6c191a:
- libcrmcommon: Fix handling node=NULL in pcmk__attrd_api_query.
- fencer: Avoid double source remove of op_timer_total (rh#2166967)
- Rebase:
  * bug-806256_pacemaker-log-level-notice.patch

- Update to version 2.1.5+20230216.ed8bc68bc:
- scheduler: count only containers' active nodes for bundles

- Update to version 2.1.5+20230208.231b58a40:
- cts: Add a basic cts-attrd program.
- daemons: Modify a couple log messages for testing.
- daemons: Add a -l argument to pacemaker-attrd.

OBS-URL: https://build.opensuse.org/request/show/1073529
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=377
2023-03-21 11:29:06 +00:00
762eaf2186 Accepting request 1062633 from network:ha-clustering:Factory
(forwarded request 1062632 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1062633
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=148
2023-02-03 21:04:41 +00:00
295c18cfc1 Accepting request 1062632 from home:yan_gao:branches:network:ha-clustering:Factory
OBS-URL: https://build.opensuse.org/request/show/1062632
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=375
2023-02-02 12:36:48 +00:00
3f260ceed3 Accepting request 1061237 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.5+20230125.95bb4788a:
- libpacemaker: avoid assertion failure if a node_state entry doesn't have an uname yet (bsc#1207319)
- libpacemaker: unify bailing out in pcmk__inject_node() (bsc#1207319)

- Update to version 2.1.5+20230124.a29e52df9:
- executor: fix regression in remote node shutdown
- scheduler: avoid memory leak when finding compatible instance

- Update to version 2.1.5+20230123.f414133a7:
- libcrmcommon: avoid infinite regression when logging v1 patchsets
- controller: clear last failure from CIB even if executor state unavailable
- scheduler: downgrade message about instance where it shouldn't be
- controller: use %u with g_hash_table_size()
- fenced: use enum fenced_target_by consistently
- scheduler: update Chinese translation

- Update to version 2.1.5+20230117.dd503ddbb:
- libcrmcommon: bump feature set for crm_attribute --pattern with -v/-D and permanent attributes
- resource agents: add depth="0" to validate-all metadata

- Update to version 2.1.5+20230111.39e62b78e:
- rpm: Add a python3-pacemaker subpackage.
- python: Add a private pacemaker._cts module.
- python: Add the pacemaker.buildoptions module.
- python: Add the pacemaker.exitstatus module.
- python: Add the very beginnings of a pacemaker python library.

- Update to version 2.1.5+20230110.292d6bf6b:
- libpe_status: clarify more pointer arguments
- libcrmcommon: Improve prefix spacing in XML logging functions

OBS-URL: https://build.opensuse.org/request/show/1061237
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=374
2023-01-26 15:14:14 +00:00
0f517e9474 Accepting request 1055789 from network:ha-clustering:Factory
- Update to version 2.1.5+20221212.b4db7685a:
- cts-scheduler: update test for preventing inactive instances from starting if probe is unrunnable on any nodes (bsc#1206263)
- scheduler: prevent inactive instances from starting if probe is unrunnable on any nodes  (bsc#1206263)
- libpacemaker: ensure any pending recurring monitor gets updated if it fails (bsc#1206263)
- cts-scheduler: update test for preventing a leftover pending monitor from causing unexpected stop of other instances (bsc#1206263)
- scheduler: prevent a leftover pending monitor from causing unexpected stop of other instances (bsc#1206263)
- cts-scheduler: add test for preventing a leftover pending monitor from causing unexpected stop of other instances (bsc#1206263)

- Update to version 2.1.5+20221212.074e9c860:
- tools: Support setting transient utilization attrs from crm_attribute.
- scheduler: Unpack transient utilization attributes.
- daemons: Add support for transient utilization attributes.
- libcrmcommon: Add a block attr to an IPC update request.
- tools: Add a -z option to attrd_updater.

- Update to version 2.1.5+20221208.cd0f91f51:
- libcrmcommon: Warn if deprecated command line formats are used.
- controller: Don't nack joining node due to old CIB
- based: Successful CIB schema upgrade should always force a write
- based: Don't write to disk if CIB replace failed
- tools: Fix trivial memory leak in cibadmin
- based: Fix double free() in pacemaker-based.c
- libpe_status: avoid memory leak on regular expression error
- controller: Avoid election storm due to incompatible CIB
- libpacemaker: don't regfree() if regcomp() failed
- libpe_status: don't try to use compiled expression if regcomp() failed
- libcrmcommon: don't regfree() if regcomp() failed
- controller: Avoid error if a join request is received after fencing
- controller: Don't double-increment failcount for simulated failures
- daemons, tools: Unregister formats before exiting (forwarded request 1055788 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1055789
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=147
2023-01-05 14:00:05 +00:00
43a9979cf4 Accepting request 1055788 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.5+20221212.b4db7685a:
- cts-scheduler: update test for preventing inactive instances from starting if probe is unrunnable on any nodes (bsc#1206263)
- scheduler: prevent inactive instances from starting if probe is unrunnable on any nodes  (bsc#1206263)
- libpacemaker: ensure any pending recurring monitor gets updated if it fails (bsc#1206263)
- cts-scheduler: update test for preventing a leftover pending monitor from causing unexpected stop of other instances (bsc#1206263)
- scheduler: prevent a leftover pending monitor from causing unexpected stop of other instances (bsc#1206263)
- cts-scheduler: add test for preventing a leftover pending monitor from causing unexpected stop of other instances (bsc#1206263)

- Update to version 2.1.5+20221212.074e9c860:
- tools: Support setting transient utilization attrs from crm_attribute.
- scheduler: Unpack transient utilization attributes.
- daemons: Add support for transient utilization attributes.
- libcrmcommon: Add a block attr to an IPC update request.
- tools: Add a -z option to attrd_updater.

- Update to version 2.1.5+20221208.cd0f91f51:
- libcrmcommon: Warn if deprecated command line formats are used.
- controller: Don't nack joining node due to old CIB
- based: Successful CIB schema upgrade should always force a write
- based: Don't write to disk if CIB replace failed
- tools: Fix trivial memory leak in cibadmin
- based: Fix double free() in pacemaker-based.c
- libpe_status: avoid memory leak on regular expression error
- controller: Avoid election storm due to incompatible CIB
- libpacemaker: don't regfree() if regcomp() failed
- libpe_status: don't try to use compiled expression if regcomp() failed
- libcrmcommon: don't regfree() if regcomp() failed
- controller: Avoid error if a join request is received after fencing
- controller: Don't double-increment failcount for simulated failures
- daemons, tools: Unregister formats before exiting

OBS-URL: https://build.opensuse.org/request/show/1055788
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=372
2023-01-04 12:38:55 +00:00
1d78c2d7d2 Accepting request 1042378 from network:ha-clustering:Factory
+Conflicts:      sbd < 1.5.1 (forwarded request 1042377 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/1042378
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=146
2022-12-13 17:54:52 +00:00
b261278664 Accepting request 1042377 from home:yan_gao:branches:network:ha-clustering:Factory
+Conflicts:      sbd < 1.5.1

OBS-URL: https://build.opensuse.org/request/show/1042377
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=370
2022-12-12 13:26:55 +00:00
5093f2c7d6 Accepting request 1042324 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.5+20221208.a3f44794f (Pacemaker-2.1.5):
- libs: Check for NULL in various functions.
- daemons: Check for NULL in attrd_create_attribute.

- Update to version 2.1.4+20221122.631339ca5 (Pacemaker-2.1.5-rc3):
- libcrmcommon: Wait for ACKs from the attrd clear failure command.
- daemons: Fix expanding ++ and += in multi-update IPC messages.
- daemons: Add host attr to the children of multi-update IPC messages.
- daemons: Copy all attrs from parent to child in multi-update IPC.

- Update to version 2.1.4+20221115.d3699a621 (Pacemaker-2.1.5-rc2):
- tools: quote timestamp in operation history output (bsc#1205279, bsc#1204581)
- tools: Fix setting utilization attrs with crm_attribute.
- cts-cli: add test for text output of crm_resource --list-operations/-O (bsc#1205279, bsc#1204581)
- daemons: Set an attribute on the child of a multi-attr message.
- scheduler: consider roles when blocking colocation dependents
- scheduler: when blocking starts, block children's starts as well

- Update to version 2.1.4+20221108.ba419204a:
- tools: crm_resource --constraints now accepts --force
- tools: crm_resource --constraints --recursive
- tools: fix syntax on resetting options in crm_resource (bsc#1198409)

- Update to version 2.1.4+20221031.0b3656e85:
- scheduler: prioritize group colocations properly
- scheduler: ignore empty groups in pcmk__add_colocated_node_scores()
- scheduler: properly consider effect of "with group" colocations
- scheduler: ensure group methods handle empty groups
- scheduler: improve error handling when unpacking resources

OBS-URL: https://build.opensuse.org/request/show/1042324
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=369
2022-12-12 11:12:25 +00:00
a318e3a0cf Accepting request 1006410 from network:ha-clustering:Factory
OBS-URL: https://build.opensuse.org/request/show/1006410
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=145
2022-10-01 15:41:50 +00:00
771e6231f9 Accepting request 1006408 from home:suntorytimed:branches:network:ha-clustering:Factory
- Rename libraries in accordance to the packaging guidelines to
  solve potential migration issue on SLE 15 SP5 (bsc#1203744)

OBS-URL: https://build.opensuse.org/request/show/1006408
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=367
2022-09-27 13:11:14 +00:00
1c5e040754 Accepting request 1003891 from home:yan_gao:branches:network:ha-clustering:Factory
OBS-URL: https://build.opensuse.org/request/show/1003891
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=366
2022-09-15 14:36:13 +00:00
4e75253ba0 Accepting request 1003876 from home:yan_gao:branches:network:ha-clustering:Factory
+Conflicts:      libpacemaker-devel < 2.1.3
+Obsoletes:      libpacemaker-devel < 2.1.3

OBS-URL: https://build.opensuse.org/request/show/1003876
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=365
2022-09-15 14:20:09 +00:00
90464c3136 Accepting request 985605 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/985605
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=144
2022-06-29 14:01:00 +00:00
c90c76fc7a Accepting request 984319 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.4+20220615.dc6eb4362 (Pacemaker-2.1.4)

- Update to version 2.1.3+20220608.d7fce3868:
- libstonithd: pull exit reason directly from history replies
- fencer: assume unknown status from older fencers' history replies
- resources: add SystemHealth parameter to its meta-data
- resources: remove no-longer-relevant DTD reference from meta-data
- resources: typo in HealthSMART meta-data

- Update to version 2.1.3+20220603.ea9bebf6c (Pacemaker-2.1.4-rc1):
- fencer: avoid use-after-free with self-fencing and topology
- fencer: get target-by-attribute working again
- libcrmcommon: fix a wrong separator in the .warning CSS declaration
- fencer: avoid memory leaks when processing topology requests
- Fix print spec for unsigned int count
- fencing: delegate shouldn't matter when checking equivalent fencing

- Update to version 2.1.3+20220601.da2fd79c8 (Pacemaker-2.1.3)

OBS-URL: https://build.opensuse.org/request/show/984319
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=363
2022-06-22 06:28:05 +00:00
ab2ea1c07a Accepting request 979418 from network:ha-clustering:Factory
- Use the project upstream name for the -devel subpackage
  (rename libpacemaker-devel to pacemaker-devel).
- Drop libpacemaker3-cluster separation, since it double-ships
  a file that is already in libpacemaker3
- Rename libpacemaker3 to pacmekaer-libs following packages like
  xrootd-libs et al so it does not get picked on by rpmlint
  [boo#1191752].

- Update to version 2.1.2+20220526.b387f8972:
- libcrmcommon: avoid memory leak if IPC server fails to run
- nls: format of XML-escaped string

- Update to version 2.1.2+20220518.dff7c3a72 (Pacemaker-2.1.3-rc2):
- schemas: Use fence-event-2.15.rng (rh#2086230)
- scheduler: don't support versioned instance attributes in operations
- schemas: allow Promoted/Unpromoted in crm_resource output

- Update to version 2.1.2+20220511.0bf080da3:
- tools: Set options.command when "attrd_updater -Y" is used.

- Update to version 2.1.2+20220427.c01a90fd2:
- tools: Hook up the verbosity flag in crm_attribute.
- tools: Honor CIB_file when doing node name lookups in crm_attribute.
- tools: Handle a remote node's name differing from its hostname.
- libcrmcommon: Fix a bug in processing multiple IPC messages.
- libcrmcommon: Add EAGAIN as a return code from crm_ipc_read.
- libcrmcommon: Handle IPC ACKs from proxied connections too.
- fenced: Correctly log the total fencing timeout.
- scheduler: make multiple-active="stop_unexpected" actually work
- libcib: Check for NULL before calling g_ascii_strdown.

OBS-URL: https://build.opensuse.org/request/show/979418
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=143
2022-05-30 10:42:33 +00:00
0613c0bb4d Accepting request 979417 from home:yan_gao:branches:network:ha-clustering:Factory
- Use the project upstream name for the -devel subpackage
  (rename libpacemaker-devel to pacemaker-devel).
- Drop libpacemaker3-cluster separation, since it double-ships
  a file that is already in libpacemaker3
- Rename libpacemaker3 to pacmekaer-libs following packages like
  xrootd-libs et al so it does not get picked on by rpmlint
  [boo#1191752].

- Update to version 2.1.2+20220526.b387f8972:
- libcrmcommon: avoid memory leak if IPC server fails to run
- nls: format of XML-escaped string

- Update to version 2.1.2+20220518.dff7c3a72 (Pacemaker-2.1.3-rc2):
- schemas: Use fence-event-2.15.rng (rh#2086230)
- scheduler: don't support versioned instance attributes in operations
- schemas: allow Promoted/Unpromoted in crm_resource output

- Update to version 2.1.2+20220511.0bf080da3:
- tools: Set options.command when "attrd_updater -Y" is used.

- Update to version 2.1.2+20220427.c01a90fd2:
- tools: Hook up the verbosity flag in crm_attribute.
- tools: Honor CIB_file when doing node name lookups in crm_attribute.
- tools: Handle a remote node's name differing from its hostname.
- libcrmcommon: Fix a bug in processing multiple IPC messages.
- libcrmcommon: Add EAGAIN as a return code from crm_ipc_read.
- libcrmcommon: Handle IPC ACKs from proxied connections too.
- fenced: Correctly log the total fencing timeout.
- scheduler: make multiple-active="stop_unexpected" actually work
- libcib: Check for NULL before calling g_ascii_strdown.

OBS-URL: https://build.opensuse.org/request/show/979417
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=361
2022-05-27 05:40:32 +00:00
55d590a521 Accepting request 966816 from network:ha-clustering:Factory
- Create libltdl/config before autoreconf to fix an incompatibility
  with autoconf 2.71

- Update to version 2.1.2+20220331.1ad8bbddd:
- tools: Fix the -v option to attrd_updater.

- Update to version 2.1.2+20220329.efdcb0bbf:
- resources: Add an OCF_RESKEY_dampen parameter to HealthSMART.
- resources: Mark HealthSMART parameters as reloadable.
- resources: Also fix HealthSMART_monitor.
- resources: Fix a bug in init_smart in HealthSMART.
- resources: Fix the stop action in HealthSMART.
- resources: Add an OCF_RESKEY_smartctl parameter to HealthSMART.
- resources: update HealthSMART agent for OCF 1.1

- Update to version 2.1.2+20220328.24d87d0b2:
- tools: Do not allow certain operations on clone instances.
- tools: Fix one method of restarting a cloned group.
- tools: Fix restarting clone instances in crm_resource.
- tools: If crm_resource is given an invalid node, error.
- tools: Fix one way to restart a cloned primitive.
- tools: Fix restarting implicit bundled resources without a host.
- tools: Fix double free errors in crm_resource.
- tools: Compare host names case insensitively...

- Update to version 2.1.2+20220328.2dd22a9d7:
- tools: Update a couple option help strings in attrd_updater.
- Convert attrd_updater to use glib for cmdline handling.

- Update to version 2.1.2+20220322.5129e5ca5:

OBS-URL: https://build.opensuse.org/request/show/966816
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=142
2022-04-06 19:51:04 +00:00
65fdb8e9d3 Accepting request 966809 from home:yan_gao:branches:network:ha-clustering:Factory
- Create libltdl/config before autoreconf to fix an incompatibility
  with autoconf 2.71

- Update to version 2.1.2+20220331.1ad8bbddd:
- tools: Fix the -v option to attrd_updater.

- Update to version 2.1.2+20220329.efdcb0bbf:
- resources: Add an OCF_RESKEY_dampen parameter to HealthSMART.
- resources: Mark HealthSMART parameters as reloadable.
- resources: Also fix HealthSMART_monitor.
- resources: Fix a bug in init_smart in HealthSMART.
- resources: Fix the stop action in HealthSMART.
- resources: Add an OCF_RESKEY_smartctl parameter to HealthSMART.
- resources: update HealthSMART agent for OCF 1.1

- Update to version 2.1.2+20220328.24d87d0b2:
- tools: Do not allow certain operations on clone instances.
- tools: Fix one method of restarting a cloned group.
- tools: Fix restarting clone instances in crm_resource.
- tools: If crm_resource is given an invalid node, error.
- tools: Fix one way to restart a cloned primitive.
- tools: Fix restarting implicit bundled resources without a host.
- tools: Fix double free errors in crm_resource.
- tools: Compare host names case insensitively...

- Update to version 2.1.2+20220328.2dd22a9d7:
- tools: Update a couple option help strings in attrd_updater.
- Convert attrd_updater to use glib for cmdline handling.

- Update to version 2.1.2+20220322.5129e5ca5:

OBS-URL: https://build.opensuse.org/request/show/966809
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=359
2022-04-04 11:54:42 +00:00
7f8c57271b Adapt git url
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=358
2022-03-31 13:59:00 +00:00
824044eba2 OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=357 2022-03-23 10:50:53 +00:00
60472dd485 Accepting request 955066 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/955066
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=141
2022-02-16 23:30:14 +00:00
bac5bcc13a Accepting request 952937 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.2+20220126.16c1bab10:
- controller: correctly match "node down" events
- controller: improve meta-data warnings
- scheduler: assert on memory allocation error
- pacemakerd: improve messages for subdaemon handling

- Update to version 2.1.2+20220126.57e783b4b:
- libstonithd: avoid controld shutdown hanging
- pacemakerd: have signal-handler take care of lost processes
- scheduler: avoid memory leak when displaying clones
- Rebase:
  * bug-806256_pacemaker-log-level-notice.patch

- Update to version 2.1.2+20220120.3f0398825:
- scheduler: implement utilization for bundles
- fencer: reset op result before grabbing new one (rh#1470834)
- schemas: update fence-event API schema for recent change (rh#1470834)
- fencing: display exit reasons with failed fencing events (rh#1470834)
- fencing: return exit reason with fencing history (rh#1470834)
- fencer: track full result in fencing history (rh#1470834)

- Update to version 2.1.2+20220119.2c937a4c0:
- ipc_client: use libqb async API for connect
- pacemakerd: keep tracking pacemakerd for liveness
- pacemakerd: tweak systemd unit respawn settings

- Update to version 2.1.2+20220119.eec504705:
- libcrmservice: improve exit reason for timeouts (rh#1470834)
- fencing: improve exit reason for fencing timeouts (rh#1470834)
- controller: improve exit reason for internal timeouts (rh#1470834)

OBS-URL: https://build.opensuse.org/request/show/952937
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=356
2022-02-09 12:32:34 +00:00
bdc86f6bb7 Accepting request 942221 from 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) (forwarded request 942220 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/942221
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=140
2021-12-24 19:22:59 +00:00
bfc9fbf386 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
2021-12-23 10:19:25 +00:00
3bc9bfa9d4 Accepting request 919749 from network:ha-clustering:Factory
* bsc#1186693-clean-attrd-attributes-when-remote-node-is-up.patch 
  * bsc#1180618-0001-Fix-crmd-update-crm_peer_cache.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 
  * 0001-Fix-iso8601-prevent-sec-overrun-before-adding-up-as-.patch 
  * bsc#1181744-0004-Refactor-fencer-optimize-merging-of-fencing-history-.patch 
  * bsc#1181744-0003-Refactor-fencing-new-function-stonith_op_state_pendi.patch 
  * bsc#1181744-0002-Fix-fencer-update-outdated-pending-operations-accord.patch 
  * bsc#1181744-0001-Fix-fencer-broadcast-returned-fencing-operations-to-.patch 
  * 0001-Mid-execd-Skips-merging-of-canceled-fencing-monitors.patch 
  * 0001-Fix-tools-get-cibsecret-stash-working-again.patch 
  * 0001-Fix-fencing-remove-any-devices-that-are-not-installe.patch 
  * rh#1907726-0001-Fix-liblrmd-Limit-node-name-addition-to-proxied-attr.patch 
  * bsc#1173668-0001-Fix-attrd-prevent-leftover-attributes-of-shutdown-no.patch 
  * bsc#1178865-0001-Fix-crmadmin-printing-DC-quietly-if-needed.patch 
- Drop obsolete bug-792124_pacemaker-stonith-monitor-log.patch
  * pacemaker-daemon-symlinks.patch (forwarded request 919748 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/919749
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=139
2021-09-20 21:32:18 +00:00
469f399362 Accepting request 919748 from home:yan_gao:branches:network:ha-clustering:Factory
* bsc#1186693-clean-attrd-attributes-when-remote-node-is-up.patch 
  * bsc#1180618-0001-Fix-crmd-update-crm_peer_cache.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 
  * 0001-Fix-iso8601-prevent-sec-overrun-before-adding-up-as-.patch 
  * bsc#1181744-0004-Refactor-fencer-optimize-merging-of-fencing-history-.patch 
  * bsc#1181744-0003-Refactor-fencing-new-function-stonith_op_state_pendi.patch 
  * bsc#1181744-0002-Fix-fencer-update-outdated-pending-operations-accord.patch 
  * bsc#1181744-0001-Fix-fencer-broadcast-returned-fencing-operations-to-.patch 
  * 0001-Mid-execd-Skips-merging-of-canceled-fencing-monitors.patch 
  * 0001-Fix-tools-get-cibsecret-stash-working-again.patch 
  * 0001-Fix-fencing-remove-any-devices-that-are-not-installe.patch 
  * rh#1907726-0001-Fix-liblrmd-Limit-node-name-addition-to-proxied-attr.patch 
  * bsc#1173668-0001-Fix-attrd-prevent-leftover-attributes-of-shutdown-no.patch 
  * bsc#1178865-0001-Fix-crmadmin-printing-DC-quietly-if-needed.patch 
- Drop obsolete bug-792124_pacemaker-stonith-monitor-log.patch
  * pacemaker-daemon-symlinks.patch

OBS-URL: https://build.opensuse.org/request/show/919748
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=350
2021-09-17 13:18:04 +00:00
a4b20bd58b Accepting request 919502 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.1.0+20210816.c6a4f6e6c (Pacemaker-2.1.1-rc3) :
- 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)
  

- Update to version 2.1.0+20210806.a64ad221a (Pacemaker-2.1.1-rc2):
- pacemakerd: show correct error message if can't request shutdown
- scheduler: Output the clone header if there are no instances.
- scheduler: Sort brief output of resources.
- scheduler: Fix display of active resources on offline nodes.
- tools: avoid memory leaks in crm_mon
- tools: avoid (insignificant) memory leaks

- Update to version 2.1.0+20210727.9e3a841a3 (Pacemaker-2.1.1-rc1):
- scheduler: Fix XML output of cloned groups.
- scheduler: Condense group and clone status in output.
- scheduler: Only output the clone header if necessary.
- scheduler: Mark partially active groups in output.
- scheduler: Tweak resource filtering for groups.
- libcrmcommon: Also allow string arguments that start with a dash.
- tools: Audit command line options.

- Update to version 2.1.0+20210721.0bf0e8547:
- scheduler: respect runnable argument when creating pseudo op
- scheduler: pe_order_implies_first should matter if 'then' is required
- scheduler: don't make optional constraints with group members mandatory
- scheduler: avoid invalid transition when group member unmanaged (clbz#5423)

- Update to version 2.1.0+20210720.202b37962:

OBS-URL: https://build.opensuse.org/request/show/919502
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=349
2021-09-16 10:47:19 +00:00
badfcb481d Accepting request 884034 from network:ha-clustering:Factory
- Update to version 2.0.5+20210310.83e765df6:
- controller: re-joined node gets the host names of non-DC nodes (bsc#1180618)

- Update to version 2.0.5+20210309.90b3e455b:
- Allow the none format in other command line tools.
- scheduler,tools: stop using last-run in CIB status

- 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)

- Update to version 2.0.5+20210302.f537b60c2:
- fenced: retry getting metadata until we get it
- require glib 2.42.0 or later

- Update to version 2.0.5+20210224.63d2fa7c2:
- pacemakerd: downgrade corosync connection loss messages
- libcrmcommon: be consistent with IPC server names in messages
- CIB: deprecate support for can_fail action meta-attribute
- CIB: deprecate remove-after-stop cluster property
- pacemakerd,tools: use high-resolution sleep in a couple of places
- pacemakerd: use high-resolution sleep functions if available
- configure: drop support for --with-acl option
- rpm: update for new legacy links default
- configure: add --with-concurrent-fencing-default option
- scheduler: allow 2.0 compatibility mode for certain output
- include: Bump CRM_FEATURE_SET to 3.7.2.
- tools: Convert crm_verify to use formatted output.
- tools: Use glib for command line handling in crm_verify.
- iso8601: prevent sec overrun before adding up as long long
- crmadmin: tweaks (forwarded request 884033 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/884034
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=138
2021-04-12 10:33:50 +00:00
f7b893c2dd Accepting request 884033 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.0.5+20210310.83e765df6:
- controller: re-joined node gets the host names of non-DC nodes (bsc#1180618)

- Update to version 2.0.5+20210309.90b3e455b:
- Allow the none format in other command line tools.
- scheduler,tools: stop using last-run in CIB status

- 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)

- Update to version 2.0.5+20210302.f537b60c2:
- fenced: retry getting metadata until we get it
- require glib 2.42.0 or later

- Update to version 2.0.5+20210224.63d2fa7c2:
- pacemakerd: downgrade corosync connection loss messages
- libcrmcommon: be consistent with IPC server names in messages
- CIB: deprecate support for can_fail action meta-attribute
- CIB: deprecate remove-after-stop cluster property
- pacemakerd,tools: use high-resolution sleep in a couple of places
- pacemakerd: use high-resolution sleep functions if available
- configure: drop support for --with-acl option
- rpm: update for new legacy links default
- configure: add --with-concurrent-fencing-default option
- scheduler: allow 2.0 compatibility mode for certain output
- include: Bump CRM_FEATURE_SET to 3.7.2.
- tools: Convert crm_verify to use formatted output.
- tools: Use glib for command line handling in crm_verify.
- iso8601: prevent sec overrun before adding up as long long
- crmadmin: tweaks

OBS-URL: https://build.opensuse.org/request/show/884033
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=347
2021-04-09 11:05:33 +00:00
65a642c15e Accepting request 868330 from network:ha-clustering:Factory
- pacemakerd: downgrade the warning about SBD_SYNC_RESOURCE_STARTUP to notice (bsc#1180966)
  * bsc#1180966-0001-Log-pacemakerd-downgrade-the-warning-about-SBD_SYNC_.patch

- Update to version 2.0.5+20210104.8ae19fdf9:
- attrd: prevent leftover attributes of shutdown node in cib (bsc#1173668)

- Update to version 2.0.5+20201218.c67665496:
- books: enable Sphinx build
- books: remove Publican
- xml: Update XML schema for crm_resource changes.
- libpacemaker: Also flatten XML location constraint output.
- libpacemaker: Various small fixes to location-list.
- libpacemaker: Fix printing out location constraints.
- libpacemaker: Correct loop detection in rscs_colocated_with_list.
- libpacemaker: Flatten XML output for colocations.
- libpacemaker: Pass the correct resource to recursive calls.
- tools: Don't display generic lists for colocations and constraints.
- libpacemaker: Change the colocation list headings.
- libpacemaker: Don't show an empty locations list.
- libcrmcluster: properly check CPG payload size
- libcrmcluster: correctly return error for invalid payload size
- libcrmcommon: set errno properly on IPC connection failure
- scheduler: Don't output a resource header with no list.
- libcib: Cleanup at signoff.Fix(CLBZ#5457)
- scheduler: add class back to multiple recovery message
- fencer: standardize fence device references in log messages
- fencer: improve wording of various messages
- fencer: correct order of arguments to a message
- fencer: log operation IDs more consistently
- fencer: log operation state as readable string rather than integer enum value (forwarded request 868329 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/868330
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=137
2021-02-04 19:22:21 +00:00
c43bb90be9 Accepting request 868329 from home:yan_gao:branches:network:ha-clustering:Factory
- pacemakerd: downgrade the warning about SBD_SYNC_RESOURCE_STARTUP to notice (bsc#1180966)
  * bsc#1180966-0001-Log-pacemakerd-downgrade-the-warning-about-SBD_SYNC_.patch

- Update to version 2.0.5+20210104.8ae19fdf9:
- attrd: prevent leftover attributes of shutdown node in cib (bsc#1173668)

- Update to version 2.0.5+20201218.c67665496:
- books: enable Sphinx build
- books: remove Publican
- xml: Update XML schema for crm_resource changes.
- libpacemaker: Also flatten XML location constraint output.
- libpacemaker: Various small fixes to location-list.
- libpacemaker: Fix printing out location constraints.
- libpacemaker: Correct loop detection in rscs_colocated_with_list.
- libpacemaker: Flatten XML output for colocations.
- libpacemaker: Pass the correct resource to recursive calls.
- tools: Don't display generic lists for colocations and constraints.
- libpacemaker: Change the colocation list headings.
- libpacemaker: Don't show an empty locations list.
- libcrmcluster: properly check CPG payload size
- libcrmcluster: correctly return error for invalid payload size
- libcrmcommon: set errno properly on IPC connection failure
- scheduler: Don't output a resource header with no list.
- libcib: Cleanup at signoff.Fix(CLBZ#5457)
- scheduler: add class back to multiple recovery message
- fencer: standardize fence device references in log messages
- fencer: improve wording of various messages
- fencer: correct order of arguments to a message
- fencer: log operation IDs more consistently
- fencer: log operation state as readable string rather than integer enum value

OBS-URL: https://build.opensuse.org/request/show/868329
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=345
2021-02-01 10:34:27 +00:00
c1fa5dbb6c Accepting request 853534 from network:ha-clustering:Factory
- Update to version 2.0.5+20201202.ba59be712 (Pacemaker-2.0.5):
- xml: Revert to correct schema for alerts-3.5
- tools: match calloc() with free() in crm_resource
- tools: "Connectivity is lost" may not be displayed even if the ping communication is lost.

- Update to version 2.0.4+20201116.ae2c04b54:
- tools: make cibsecret use bash
- fencer: allow peer configuration requests

- Update to version 2.0.4+20201027.31aa4f551:
- pacemakerd: handle shutdown requests better
- daemons,libcrmcommon: send status code with client acks
- fencer: restrict certain IPC requests to privileged users (CVE-2020-25654, bsc#1177916)
- pacemakerd: ignore shutdown requests from unprivileged users (CVE-2020-25654, bsc#1177916)
- pacemakerd: check client for NULL before using it
- executor: restrict certain IPC requests to Pacemaker daemons (CVE-2020-25654, bsc#1177916)
- executor: return appropriate error code when no remote support
- executor: mark controller connections to pacemaker-remoted as privileged
- executor: show CRM_OP_REGISTER rc in debug message

- Update to version 2.0.4+20201022.354625c62:
- tools: revert some changes in crm_resource NULL checks
- xml: Mark new crm_mon attributes as optional.
- scheduler: fix build when DEFAULT_CONCURRENT_FENCING_TRUE is set

- Update to version 2.0.4+20201019.878658661:
- cib: create reply when needed for diff
- cib: only build reply when needed

- Update to version 2.0.4+20201014.b0ef36d82: (forwarded request 853533 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/853534
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=136
2020-12-09 21:11:16 +00:00
32e626790c Accepting request 853533 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.0.5+20201202.ba59be712 (Pacemaker-2.0.5):
- xml: Revert to correct schema for alerts-3.5
- tools: match calloc() with free() in crm_resource
- tools: "Connectivity is lost" may not be displayed even if the ping communication is lost.

- Update to version 2.0.4+20201116.ae2c04b54:
- tools: make cibsecret use bash
- fencer: allow peer configuration requests

- Update to version 2.0.4+20201027.31aa4f551:
- pacemakerd: handle shutdown requests better
- daemons,libcrmcommon: send status code with client acks
- fencer: restrict certain IPC requests to privileged users (CVE-2020-25654, bsc#1177916)
- pacemakerd: ignore shutdown requests from unprivileged users (CVE-2020-25654, bsc#1177916)
- pacemakerd: check client for NULL before using it
- executor: restrict certain IPC requests to Pacemaker daemons (CVE-2020-25654, bsc#1177916)
- executor: return appropriate error code when no remote support
- executor: mark controller connections to pacemaker-remoted as privileged
- executor: show CRM_OP_REGISTER rc in debug message

- Update to version 2.0.4+20201022.354625c62:
- tools: revert some changes in crm_resource NULL checks
- xml: Mark new crm_mon attributes as optional.
- scheduler: fix build when DEFAULT_CONCURRENT_FENCING_TRUE is set

- Update to version 2.0.4+20201019.878658661:
- cib: create reply when needed for diff
- cib: only build reply when needed

- Update to version 2.0.4+20201014.b0ef36d82:

OBS-URL: https://build.opensuse.org/request/show/853533
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=343
2020-12-07 09:07:23 +00:00
cac2ce9cc7 Accepting request 842721 from network:ha-clustering:Factory
- Update to version 2.0.4+20200702.813fdbfdc:
- libcrmcommon: deprecate create_hello_message() as public API (bsc#1170346, rh#1796824)
- pacemakerd: properly conditionalize corosync calls (bsc#1170346, rh#1796824)
- pacemakerd: use existing handle for corosync shutdown (bsc#1170346, rh#1796824)
- pacemakerd: improve messages (bsc#1170346, rh#1796824)
- pacemakerd: functionize removing core file limit (bsc#1170346, rh#1796824)
- pacemakerd: remove unneeded IPC and CPG commands (bsc#1170346, rh#1796824)
- tools: crm_node -l and -p now work from Pacemaker Remote nodes (bsc#1170346, rh#1796824)
- functionize numeric comparisons of strings (bsc#1170346, rh#1796824)
- controller: add new IPC API command for getting node list (bsc#1170346, rh#1796824)

- Update to version 2.0.4+20200701.556cef416:
- tools: convert crmadmin to use new controller IPC model (bsc#1170346, rh#1796824)
- tools: remove dead code from crm_node (bsc#1170346, rh#1796824)
- tools: convert crm_node to use new controller IPC model (bsc#1170346, rh#1796824)
- tools: convert crm_resource to use new controller IPC model (bsc#1170346, rh#1796824)
- libcrmcommon: add C API for controller IPC (bsc#1170346, rh#1796824)
- libcrmcommon: new model for daemon IPC API (bsc#1170346, rh#1796824)

- Update to version 2.0.4+20200630.107af1896:
- tools, libs: Use pcmk__str_any_of and pcmk__str_all_of.
- libcrmcommon: Add pcmk__str_any_of and pcmk__str_none_of.

- Update to version 2.0.4+20200624.67a6a9b31:
- lib, tools: Correct types given to PCMK__OUTPUT_ARGS.

- Update to version 2.0.4+20200623.e36fe309d:
- sysconfig: remove outdated reference to wildcards in PCMK_trace_files
- rpm: use https in package URL
- resources: don't check host-specific conditions in attribute validate (forwarded request 842719 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/842721
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=135
2020-10-23 10:20:06 +00:00
2d8169c00b Accepting request 842719 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.0.4+20200702.813fdbfdc:
- libcrmcommon: deprecate create_hello_message() as public API (bsc#1170346, rh#1796824)
- pacemakerd: properly conditionalize corosync calls (bsc#1170346, rh#1796824)
- pacemakerd: use existing handle for corosync shutdown (bsc#1170346, rh#1796824)
- pacemakerd: improve messages (bsc#1170346, rh#1796824)
- pacemakerd: functionize removing core file limit (bsc#1170346, rh#1796824)
- pacemakerd: remove unneeded IPC and CPG commands (bsc#1170346, rh#1796824)
- tools: crm_node -l and -p now work from Pacemaker Remote nodes (bsc#1170346, rh#1796824)
- functionize numeric comparisons of strings (bsc#1170346, rh#1796824)
- controller: add new IPC API command for getting node list (bsc#1170346, rh#1796824)

- Update to version 2.0.4+20200701.556cef416:
- tools: convert crmadmin to use new controller IPC model (bsc#1170346, rh#1796824)
- tools: remove dead code from crm_node (bsc#1170346, rh#1796824)
- tools: convert crm_node to use new controller IPC model (bsc#1170346, rh#1796824)
- tools: convert crm_resource to use new controller IPC model (bsc#1170346, rh#1796824)
- libcrmcommon: add C API for controller IPC (bsc#1170346, rh#1796824)
- libcrmcommon: new model for daemon IPC API (bsc#1170346, rh#1796824)

- Update to version 2.0.4+20200630.107af1896:
- tools, libs: Use pcmk__str_any_of and pcmk__str_all_of.
- libcrmcommon: Add pcmk__str_any_of and pcmk__str_none_of.

- Update to version 2.0.4+20200624.67a6a9b31:
- lib, tools: Correct types given to PCMK__OUTPUT_ARGS.

- Update to version 2.0.4+20200623.e36fe309d:
- sysconfig: remove outdated reference to wildcards in PCMK_trace_files
- rpm: use https in package URL
- resources: don't check host-specific conditions in attribute validate

OBS-URL: https://build.opensuse.org/request/show/842719
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=341
2020-10-20 08:55:36 +00:00
bcf0de4f49 Accepting request 819985 from network:ha-clustering:Factory
- Fixes for %_libexecdir changing to /usr/libexec

- Update to version pacemaker-2.0.4+20200616.2deceaa3a (Pacemaker-2.0.4):
- cibsecret: don't use pssh -q option unless supported
- tools: verify newly created CIB connection is not NULL
- tools: check resource separately from managing parameter in cibsecret
- tools: improve cibsecret help

- Update to version 2.0.3+20200608.44045c027:
- scheduler: Add the node name back to bundle instances.

- Update to version 2.0.3+20200605.0db37d66f:
- rpm: add spec option for enabling CIB secrets
- build: avoid resource-agents as build dependency when cibsecrets are enabled

- Update to version 2.0.3+20200603.4ff9c412f:
- based: use crm_exit to free qb-logging

- Update to version 2.0.3+20200602.f7f36e8a8:
- libpe_status: Modify filtering of inactive resources.

- Update to version 2.0.3+20200527.e67fb5c73:
- rpm: put user-configurable items at top of spec
- tools: free IPC memory after closing connection
- resources: attribute name parameter doesn't have to be unique

- Update to version 2.0.3+20200516.b06fc662e:
- crm_ticket: avoid unnecessary issues with dynamic allocation
- crm_resource: avoid unnecessary issus with dynamic allocation
- crm_mon: NULL output-pointer when buffer is freed (forwarded request 819984 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/819985
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=134
2020-07-14 05:43:07 +00:00
02bf41c8c8 Accepting request 819984 from home:yan_gao:branches:network:ha-clustering:Factory
- Fixes for %_libexecdir changing to /usr/libexec

- Update to version pacemaker-2.0.4+20200616.2deceaa3a (Pacemaker-2.0.4):
- cibsecret: don't use pssh -q option unless supported
- tools: verify newly created CIB connection is not NULL
- tools: check resource separately from managing parameter in cibsecret
- tools: improve cibsecret help

- Update to version 2.0.3+20200608.44045c027:
- scheduler: Add the node name back to bundle instances.

- Update to version 2.0.3+20200605.0db37d66f:
- rpm: add spec option for enabling CIB secrets
- build: avoid resource-agents as build dependency when cibsecrets are enabled

- Update to version 2.0.3+20200603.4ff9c412f:
- based: use crm_exit to free qb-logging

- Update to version 2.0.3+20200602.f7f36e8a8:
- libpe_status: Modify filtering of inactive resources.

- Update to version 2.0.3+20200527.e67fb5c73:
- rpm: put user-configurable items at top of spec
- tools: free IPC memory after closing connection
- resources: attribute name parameter doesn't have to be unique

- Update to version 2.0.3+20200516.b06fc662e:
- crm_ticket: avoid unnecessary issues with dynamic allocation
- crm_resource: avoid unnecessary issus with dynamic allocation
- crm_mon: NULL output-pointer when buffer is freed

OBS-URL: https://build.opensuse.org/request/show/819984
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=339
2020-07-10 12:16:26 +00:00
bef73d067c Accepting request 802832 from network:ha-clustering:Factory
- Update to version 2.0.3+20200511.2b248d828:
- tools: get stonith_admin --list-targets working again (forwarded request 802831 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/802832
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=133
2020-05-12 20:28:48 +00:00
f721689677 Accepting request 802831 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.0.3+20200511.2b248d828:
- tools: get stonith_admin --list-targets working again

OBS-URL: https://build.opensuse.org/request/show/802831
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=337
2020-05-12 06:47:59 +00:00
6a08a84d3e Accepting request 802783 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.0.3+20200511.e7d7b1aa5:
- libpe_status: Apply node filtering to clone resource lists.
- tools: Remove an extra space in crm_mon filtered output.
- libpe_status: Don't output unnecessary resource headers.
- libpe_status: Handle filtering of inactive resources.
- tools: Print inactive resources by default with crm_mon xml output.

OBS-URL: https://build.opensuse.org/request/show/802783
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=336
2020-05-11 21:39:34 +00:00
0b9719c4e5 Accepting request 802745 from home:yan_gao:branches:network:ha-clustering:Factory
- libcrmcommon: lower message on reading proc file to info
  * 0001-Log-libcrmcommon-lower-message-on-reading-proc-file-.patch

- Update to version 2.0.3+20200511.a9e085d8c:
- fencer: avoid possible use-of-NULL when parsing metadata (bsc#1171372)
- libstonithd: make the assert message from stonith__device_parameter_flags() more clear (bsc#1171372)

- Update to version 2.0.3+20200507.c8529193e:
- libstonithd: respect `pcmk_host_argument=none` on `validate` (bsc#1171372)
- libstonithd: add `port` or `plug` parameter according to metadata on `validate` if no `pcmk_host_argument` specified (bsc#1171372)
- Pacemaker Explained: update the default value and the description of `pcmk_host_argument` (bsc#1171372)
- fencer: add `port` or `plug` parameter according to metadata for RHCS-style fence-agents (bsc#1171372)
- libstonithd: add function to check supported parameters according to the metadata of a fence agent (bsc#1171372)

- Update to version 2.0.3+20200506.a212e4fa3:
- fenced: Remove relayed stonith operation.(Fix:CLBZ#5401)
- controller: properly detect remote node info requests
- cotrold: Notify tengine of completion of CRM_OP_LRM_DELETE.(Fix:CLBZ:#5424)

- Update to version 2.0.3+20200429.029571144:
- stonith_admin: --delay is an optional option for --fence/--unfence/--reboot commands (ECO-1611, SLE-12239, SLE-12240)
- controller: avoid possible use-of-NULL on logging fencing message (ECO-1611, SLE-12239, SLE-12240)

- Update to version 2.0.3+20200428.f0a4d08c9:
- cib: populate cib_nodes when 'cibadmin -R -scope=configuration'

- Update to version 2.0.3+20200423.01b9bbdbe:
- cts: add `plug` parameter for fence_dummy agent (bsc#1171372)
- libstonithd: `plug` parameter of RHCS-style fence-agents is shown as non-required in the metadata (bsc#1171372)
- libstonithd: `action` parameter of RHCS-style fence-agents is shown as non-required in the metadata (bsc#1171372)

OBS-URL: https://build.opensuse.org/request/show/802745
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=335
2020-05-11 16:32:16 +00:00
f7a9750277 Accepting request 769084 from network:ha-clustering:Factory
- Update to version 2.0.3+20200128.df6c286d9:
- scheduler: ensure attenuated scores still have some effect
- scheduler: ignore colocation constraints with 0 score

- Update to version 2.0.3+20200127.cdf84f849:
- libpe_status: Remove extra colons from operations output.
- libpe_status: correctly check for implicit resource ID collision
- libpe_status: Use the same message for headers and history.
- get ready for implicit -fno-common with upcoming GCC 10 (bsc#1160410)
- Rebase:
  * bug-728579_pacemaker-stonith-dev-id.patch

- Update to version 2.0.3+20200116.92a6f7e97:
- controller: bump feature set for shutdown-lock
- scheduler: clear resource history when appropriate
- tools: for down nodes, crm_resource --refresh should clear CIB only
- controller: allow CRM_OP_LRM_DELETE to clear CIB only
- tools: crm_resource resource checks should show shutdown locks
- scheduler: display when a resource is shutdown-locked to a node
- controller: don't clear shutdown locks when node rejoins
- controller: mark shutdown-locked resources in resource history
- scheduler: respect shutdown locks when placing inactive resources
- scheduler: respect shutdown locks when placing active resources
- scheduler: add shutdown lock cluster options
- tools: improve error checking for crm_resource cleanup/fail commands
- tools: improve crm_resource "why" messages
- controller: improve messages when deleting CIB resource history

- Update to version 2.0.3+20200116.ea5b06fae:
- rectify thinko possibly behind spurious "process will not die" msg (forwarded request 769083 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/769084
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=132
2020-02-03 10:10:52 +00:00
c08b03c923 Accepting request 769083 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.0.3+20200128.df6c286d9:
- scheduler: ensure attenuated scores still have some effect
- scheduler: ignore colocation constraints with 0 score

- Update to version 2.0.3+20200127.cdf84f849:
- libpe_status: Remove extra colons from operations output.
- libpe_status: correctly check for implicit resource ID collision
- libpe_status: Use the same message for headers and history.
- get ready for implicit -fno-common with upcoming GCC 10 (bsc#1160410)
- Rebase:
  * bug-728579_pacemaker-stonith-dev-id.patch

- Update to version 2.0.3+20200116.92a6f7e97:
- controller: bump feature set for shutdown-lock
- scheduler: clear resource history when appropriate
- tools: for down nodes, crm_resource --refresh should clear CIB only
- controller: allow CRM_OP_LRM_DELETE to clear CIB only
- tools: crm_resource resource checks should show shutdown locks
- scheduler: display when a resource is shutdown-locked to a node
- controller: don't clear shutdown locks when node rejoins
- controller: mark shutdown-locked resources in resource history
- scheduler: respect shutdown locks when placing inactive resources
- scheduler: respect shutdown locks when placing active resources
- scheduler: add shutdown lock cluster options
- tools: improve error checking for crm_resource cleanup/fail commands
- tools: improve crm_resource "why" messages
- controller: improve messages when deleting CIB resource history

- Update to version 2.0.3+20200116.ea5b06fae:
- rectify thinko possibly behind spurious "process will not die" msg

OBS-URL: https://build.opensuse.org/request/show/769083
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=333
2020-01-31 15:54:26 +00:00
e321968a6d Accepting request 746349 from network:ha-clustering:Factory
- Update to version 2.0.2+20191106.eef56dcd6:
- libcrmcommon: Make sure to free the --output-as description.
- libcrmcommon: Rename formatted output cmdline options.
- libcrmcommon: Group all output options together.

- Update to version 2.0.2+20191031.1d695899e:
- scheduler: clarify message about when watchdog will be used
- scheduler: properly detect whether guest node is fenceable
- scheduler: initialize unfencing digests to null
- scheduler: improve graph synapse logging

- Update to version 2.0.2+20191023.7a12ccbe4:
- tools: Explain TIMESPEC in crm_mon help output.
- tools: crm_mon --interval should understand more formats.
- libcrmservice: don't close descriptors above current limit
- rpm: pacemaker-cts requires pacemaker
- tools: restore ability to show groups in crm_mon console mode
- tools: Deprecated old-style output options in crm_mon.
- cts-scheduler: test "year-2038" only runs for 64bit systems
- fencer: clarify more messages
- tools: don't ignore cib_new() errors in crm_mon
- tools: avoid memory leak in crm_mon when displaying nodes
- libpe_status: avoid memory leak when outputting resources
- libcrmcommon: avoid memory leak when IPC compression fails
- Security: introduce restrictive usage libxslt's security framework
- libcrmservice: try not to spam close() file descriptors
- tools: Support "crm_mon --as-html=&lt;filename&gt;".
- tools: Don't output nodes if they don't have failures.
- tools: Update checks around crm_mon --daemonize.
- libpe_status: Use CSS to style messages. (forwarded request 746348 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/746349
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=131
2019-11-11 12:00:22 +00:00
a37d6b83b1 Accepting request 746348 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.0.2+20191106.eef56dcd6:
- libcrmcommon: Make sure to free the --output-as description.
- libcrmcommon: Rename formatted output cmdline options.
- libcrmcommon: Group all output options together.

- Update to version 2.0.2+20191031.1d695899e:
- scheduler: clarify message about when watchdog will be used
- scheduler: properly detect whether guest node is fenceable
- scheduler: initialize unfencing digests to null
- scheduler: improve graph synapse logging

- Update to version 2.0.2+20191023.7a12ccbe4:
- tools: Explain TIMESPEC in crm_mon help output.
- tools: crm_mon --interval should understand more formats.
- libcrmservice: don't close descriptors above current limit
- rpm: pacemaker-cts requires pacemaker
- tools: restore ability to show groups in crm_mon console mode
- tools: Deprecated old-style output options in crm_mon.
- cts-scheduler: test "year-2038" only runs for 64bit systems
- fencer: clarify more messages
- tools: don't ignore cib_new() errors in crm_mon
- tools: avoid memory leak in crm_mon when displaying nodes
- libpe_status: avoid memory leak when outputting resources
- libcrmcommon: avoid memory leak when IPC compression fails
- Security: introduce restrictive usage libxslt's security framework
- libcrmservice: try not to spam close() file descriptors
- tools: Support "crm_mon --as-html=<filename>".
- tools: Don't output nodes if they don't have failures.
- tools: Update checks around crm_mon --daemonize.
- libpe_status: Use CSS to style messages.

OBS-URL: https://build.opensuse.org/request/show/746348
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=331
2019-11-07 16:09:29 +00:00
c71cfa89c6 Accepting request 723794 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/723794
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=130
2019-08-19 18:57:31 +00:00
154c80f970 Accepting request 721844 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 2.0.2+20190801.122c32115:
- libcib: install cib_types.h
- tools: Use glib for cmdline handling in crm_mon.
- libcrmcommon: Handle no digits in crm_int_helper.
- libcrmcommon: Allow glib cmdline parsing without formatted output.
- extra: calculate #health_disk correctly in SysInfo
- extra: handle run-as-user properly in ClusterMon
- extra: advertise promote and demote in Stateful meta-data
- extra: formally deprecate the ocf:pacemaker:pingd agent
- extra: quote shell variables in agent code where appropriate
- extra: use ":=" where appropriate in agent code

- Update to version 2.0.2+20190725.4b4fea3eb:
- Rebase:
  * bug-977201_pacemaker-controld-self-fencing.patch
- libcrmcommon:  Restore getopt behavior in stonith_admin.
- controller: document the cluster-name cluster property
- controller: allow configurable reaction to local node fencing
- pacemakerd: make daemon exit detection messages more consistent
- executor: stonith probes should fail only if previously registered
- libstonithd: handle API creation errors better
- spec: avoid long-broken (in a pristine tree state) "make all"
- controller: panic local host if notified of own fencing
- controller: clear "required" bit when disconnecting scheduler
- libcrmcommon: Remove -q from global cmdline options.
- tools: Allow HTML output in stonith_admin.
- libstonithd: Add HTML support to fencing messages.
- st_client: Reword stonith_event_text.
- controld: Use XML output to check for pending status.
- pengine: formatted output for html

OBS-URL: https://build.opensuse.org/request/show/721844
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=329
2019-08-08 16:13:22 +00:00
3fc6e0ce2a Accepting request 700144 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.0.1+20190430.8e851b084:
- controller: avoid memory leak when duplicate monitor is scheduled
- libcrmcommon: return proper code if testing pid is denied (bsc#1131353, bsc#1131356)

- Update to version 2.0.1+20190424.a365fc58d:
- libcrmcommon: avoid use-of-NULL when checking whether process is active (bsc#1131353, bsc#1131356)
- daemons: make start-up log messages consistent across all daemons
- executor: downgrade disappeared remote client message to notice
- remote: include channel name in IPC proxy failure message
- fencing: clarify device search messages
- libcrmcluster: improve CPG membership messages
- tools: Use formatted output in stonith_admin.
- libstonithd: Add custom formatting to fencing types.
- libcrmcommon: Add formatted output.
- xml: Add a schema for API results.

- Update to version 2.0.1+20190417.13d370ca9:
- controld: fix possible NULL pointer dereference (bsc#1131353, bsc#1131356)
- pacemakerd vs. IPC/procfs confused deputy authenticity issue (CVE-2018-16877, bsc#1131356) (CVE-2018-16878, bsc#1131353)
- libservices: fix use-after-free wrt. alert handling (CVE-2019-3885, bsc#1131357)
- executor: systemd starts should return UNKNOWN_ERROR instead of NOT_RUNNING
- pacemaker-remoted: improve proxy accept failure message
- executor: consider stonith resource stopped only if stop succeeded
- executor: improve stonith operation rc and status mapping
- executor: reschedule recurring stonith monitor if not connected
- executor: put recurring stonith failsafe stop in correct place

OBS-URL: https://build.opensuse.org/request/show/700144
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=328
2019-05-02 12:53:30 +00:00
4e0768c35b Accepting request 693680 from network:ha-clustering:Factory
- Rebase:
  bug-728579_pacemaker-stonith-dev-id.patch
- Revert "use common service interface for fence-agents and RAs" (bsc#1132123)
  * 0002-Revert-use-common-service-interface-for-fence-agents.patch
- Revert "service-lib: avoid call-pattern leading to use-after-free"
  * 0001-Revert-Fix-service-lib-avoid-call-pattern-leading-to.patch

- Update to version 2.0.1+20190408.1b68da8e8:
- scheduler: avoid error log in harmless situation
- libcrmcommon: use INT_MIN/INT_MAX instead of -1 for out-of-range integers
- service-lib: avoid call-pattern leading to use-after-free
- libp-i: Renamed to libpacemaker.

- crmd: delete resource from lrmd when appropriate (bsc#1117381) (forwarded request 693679 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/693680
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=129
2019-04-15 09:51:25 +00:00
ae2abe019b Accepting request 693679 from home:yan_gao:branches:network:ha-clustering:Factory
- Rebase:
  bug-728579_pacemaker-stonith-dev-id.patch
- Revert "use common service interface for fence-agents and RAs" (bsc#1132123)
  * 0002-Revert-use-common-service-interface-for-fence-agents.patch
- Revert "service-lib: avoid call-pattern leading to use-after-free"
  * 0001-Revert-Fix-service-lib-avoid-call-pattern-leading-to.patch

- Update to version 2.0.1+20190408.1b68da8e8:
- scheduler: avoid error log in harmless situation
- libcrmcommon: use INT_MIN/INT_MAX instead of -1 for out-of-range integers
- service-lib: avoid call-pattern leading to use-after-free
- libp-i: Renamed to libpacemaker.

- crmd: delete resource from lrmd when appropriate (bsc#1117381)

OBS-URL: https://build.opensuse.org/request/show/693679
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=326
2019-04-12 09:15:14 +00:00
06af287022 Accepting request 691761 from network:ha-clustering:Factory
Let's get this in first, as it's just ready and important fixes are in :F

OBS-URL: https://build.opensuse.org/request/show/691761
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=128
2019-04-05 09:55:46 +00:00
5adb82fa5f Accepting request 691609 from home:jengelh:branches:network:ha-clustering:Factory
- Drop %if..%endif guards around %packages which does not
  affect the build result.

OBS-URL: https://build.opensuse.org/request/show/691609
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=324
2019-04-05 09:23:39 +00:00
68aa3f89d0 Accepting request 691523 from home:yan_gao:branches:network:ha-clustering:Factory
- spec: no need to explicitly require the virtual dependency on libqb

- Rebase:
  * bug-728579_pacemaker-stonith-dev-id.patch
- Update to version 2.0.1+20190402.e091f4f0c:
- scheduler: one group stop shouldn't make another required
- libcrmcommon: compare_version: drop superfluous heap allocation
- libfencing: enumerate installed RHCS-style agents alpha-sorted
- xml diff'ing: prevent 'id' attribute reordering in "diff-removed"
- libcrmcommon: downplay "Creating RNG parser context" as debug prio
- controller: improve failed recurring action messages
- controller: improve lost action logs
- use common service interface for fence-agents and RAs
- libcrmcommon: allow whitespace in name/value pairs
- libcrmcommon: pcmk_nvpair_t should handle NULL values

- Update to version 2.0.1+20190312.059e2e26b:
- spec: move stonith_admin to -cli where it belongs
- tools: Add crm_rule.

- Update to version 2.0.1+20190311.e91ee92e5:
- libfencing: Change return type on stonith_agent_exists.
- scheduler: cl#5301 - respect order constraints when relevant resources are being probed (bsc#1117934, bsc#1128374)

- Update to version 2.0.1+20190304.1ac166cd3:
- build: Update pkgconfig files for libpe.
- libp-i: Add a pkgconfig file for libp-i.
- libs: Rename libpengine to libpacemaker-internal.
- tools: Add new validate options to crm_resource.
- Add HealthIOWait provider which checks hosts's IOWait

OBS-URL: https://build.opensuse.org/request/show/691523
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=323
2019-04-04 13:06:34 +00:00
1f3138bcc2 Accepting request 682489 from network:ha-clustering:Factory
revert to Pacemaker-2.0.1 (forwarded request 682488 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/682489
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=127
2019-03-12 08:47:25 +00:00
fecab2cc19 Accepting request 682488 from home:yan_gao:branches:network:ha-clustering:Factory
revert to Pacemaker-2.0.1

OBS-URL: https://build.opensuse.org/request/show/682488
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=321
2019-03-07 14:28:23 +00:00
31842683d4 Accepting request 682416 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 2.0.1+20190304.1ac166cd3:
- build: Update pkgconfig files for libpe.
- libp-i: Add a pkgconfig file for libp-i.
- libs: Rename libpengine to libpacemaker-internal.
- tools: Add new validate options to crm_resource.
- Add HealthIOWait provider which checks hosts's IOWait
- tools: crm_resource --clear should print out what it does

- Update to version 2.0.1+20190304.9e909a5bd (Pacemaker-2.0.1):
- libcrmcommon: complete interrupted live migrations correctly

- Update to version 2.0.0+20190225.22ee9a769:
- scheduler: skip all native constraints for unmanaged resources
- scheduler: sort nodes when creating constraints

- Update to version 2.0.0+20190130.57cc9c14b:
- 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

OBS-URL: https://build.opensuse.org/request/show/682416
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=320
2019-03-07 11:17:05 +00:00
a1a209e781 Accepting request 669072 from network:ha-clustering:Factory
- Update to version 2.0.0+20190125.788ee2c49:
- attrd: clear election dampening when the writer leaves
- libcrmcluster: *really* write only one election storm black box
- attrd: log previous writer *before* clearing it

- Update to version 2.0.0+20190124.c3c9c6e66:
- scheduler: don't order non-DC shutdowns before DC fencing
- scheduler: improve fence action ordering
- scheduler: don't disable waiting for DC fencing
- libcrmservice: cancel DBus call when cancelling systemd/upstart actions
- libcrmservice: null-terminate string *before* printing it
- libcrmservice: improve logs when cleaning up an operation
- spec: add hint about sbd compatibility

- Update to version 2.0.0+20190122.3f993c74f:
- crm_mon: remove duplicity of fence-action-state in xml-output
- cts: temporarily disable any enabled cluster serivces when running remote tests
- cts: service counts as enabled only if it's explicitly enabled

- Update to version 2.0.0+20190111.750c5bd01:
- cts-exec: still run the tests for the other resource classes even without python systemd bindings (bsc#1121808)

- fenced: Handle fencing requested with nodeid by utilizing the membership cache of known nodes (bsc#1094208, bsc#1107270, bsc#974108)
- controld: able to manually confirm unseen nodes are down (bsc#1094208, bsc#1107270)
- crm_mon: rhbz#1461964 - add fence history features (bsc#968055) (forwarded request 669071 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/669072
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=126
2019-02-13 09:15:35 +00:00
6a20c06ab1 Accepting request 669071 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 2.0.0+20190125.788ee2c49:
- attrd: clear election dampening when the writer leaves
- libcrmcluster: *really* write only one election storm black box
- attrd: log previous writer *before* clearing it

- Update to version 2.0.0+20190124.c3c9c6e66:
- scheduler: don't order non-DC shutdowns before DC fencing
- scheduler: improve fence action ordering
- scheduler: don't disable waiting for DC fencing
- libcrmservice: cancel DBus call when cancelling systemd/upstart actions
- libcrmservice: null-terminate string *before* printing it
- libcrmservice: improve logs when cleaning up an operation
- spec: add hint about sbd compatibility

- Update to version 2.0.0+20190122.3f993c74f:
- crm_mon: remove duplicity of fence-action-state in xml-output
- cts: temporarily disable any enabled cluster serivces when running remote tests
- cts: service counts as enabled only if it's explicitly enabled

- Update to version 2.0.0+20190111.750c5bd01:
- cts-exec: still run the tests for the other resource classes even without python systemd bindings (bsc#1121808)

- fenced: Handle fencing requested with nodeid by utilizing the membership cache of known nodes (bsc#1094208, bsc#1107270, bsc#974108)
- controld: able to manually confirm unseen nodes are down (bsc#1094208, bsc#1107270)
- crm_mon: rhbz#1461964 - add fence history features (bsc#968055)

OBS-URL: https://build.opensuse.org/request/show/669071
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=318
2019-01-28 12:45:39 +00:00
dcc998cd87 Accepting request 664716 from network:ha-clustering:Factory
- Update to version 2.0.0+20190111.f07d766f3:
- controller: directly acknowledge unrecordable operation results
- resources: clean serialized file on SIGTERM in Dummy
- libcrmcommon: downgrade empty output logging to trace level (forwarded request 664714 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/664716
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=125
2019-01-21 09:08:12 +00:00
88aa69efe2 Accepting request 664714 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 2.0.0+20190111.f07d766f3:
- controller: directly acknowledge unrecordable operation results
- resources: clean serialized file on SIGTERM in Dummy
- libcrmcommon: downgrade empty output logging to trace level

OBS-URL: https://build.opensuse.org/request/show/664714
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=316
2019-01-11 16:13:18 +00:00
2f113ab216 Accepting request 664694 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 2.0.0+20190110.7bbbeb6f6:
- tools: Clear all prefer constraints when performing a move
- tools: Fix moving a resource with a lifetime constraint
- attrd: check for alert changes after CIB is replaced
- attrd: start new election if writer is lost
- attrd: handle shutdown more cleanly
- attrd: don't start a new election when receiving a client update
- attrd: clear lost updates
- attrd: don't delay re-attempted writes unless original failed
- attrd: connect to the CIB before connecting the cluster

- Update to version 2.0.0+20190103.5b36d4e10:
- scheduler: downgrade clone pre-allocation message
- libpe_status: downgrade remote node fence-before-clear message
- libpe_status: improve trace messages when finding actions
- libpe_status: avoid use-after-free when logging at trace level
- libpe_status: avoid double free of stop_needed list
- tools: stonith_admin -I doesn't require an agent
- pacemakerd,libcrmcommon: don't touch kernel.sysrq
- fencing: use next device's name where intended
- tools: Implement crm_resource --expired.
- CTS: ignore monitor failures when testing remote node fencing
- CTS: lower remote connection failure detection time
- attrd: Ignoring delayed updating of attributes when integrating disjointed clusters without stonith.
- pacemakerd: only one active process check needed
- cts: use bash in the pacemaker-cts-dummyd
- cts: clear constraints on cluster nodes (bsc#1121272)
- cts: resume any possibly frozen pacemaker_remoted when cleaning up the test (bsc#1121272)
- cts: simulate failure of pacemaker_remoted by freezing it with SIGSTOP (bsc#1121272)
- scheduler: order resource moves after connection starts

OBS-URL: https://build.opensuse.org/request/show/664694
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=315
2019-01-11 15:19:42 +00:00
3e6f1b1caa Accepting request 647634 from network:ha-clustering:Factory
- Update to version 2.0.0+20181108.62ffcafbc:
- fenced: trigger device-update on resource-defaults changed
- fenced: adhere meta-attributes when triggering device-update

- Update to version 2.0.0+20181105.fb362c0c9:
- scheduler: formally deprecate score in rsc_order
- pacemaker-remote: skip remote_config_check for guest-nodes

- Update to version 2.0.0+20181101.a21fd0099:
- rhbz#1644076 - Ensure the bundle stop/demote notifications are directed to the correct host
- libcrmservice: override removal failure is not a problem
- libcrmcommon,execd: pass remaining timeout to drain function
- tools: log user-specified time correctly in crm_simulate
- libcrmcluster: log microseconds sensibly
- libcrmservice: order systemd resources relative to pacemaker_remote
- scheduler: order guest pseudo-fencing properly after clean-up
- scheduler: avoid unnecessary recovery of cleaned guest nodes
- scheduler: improve bundle address fixing messages
- attrd: record tentative writer only if election not already lost
- attrd: skip election check if peer election op had error
- attrd: disregard lost nodes' election votes
- attrd: improve election messages
- attrd: initialize election before broadcasting protocol
- controller: remove node's vote as soon as it is inactive
- controller: don't register DC input twice
- controller: don't stop election timer for nonexistent election
- controller: improve election messages
- libcrmcluster: don't write more than one election storm black box
- libcrmcluster: only count no-vote if an election is in progress
- libcrmcluster: validate election cluster messages better (forwarded request 647633 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/647634
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=124
2018-11-12 08:33:54 +00:00
4785439f82 Accepting request 647633 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 2.0.0+20181108.62ffcafbc:
- fenced: trigger device-update on resource-defaults changed
- fenced: adhere meta-attributes when triggering device-update

- Update to version 2.0.0+20181105.fb362c0c9:
- scheduler: formally deprecate score in rsc_order
- pacemaker-remote: skip remote_config_check for guest-nodes

- Update to version 2.0.0+20181101.a21fd0099:
- rhbz#1644076 - Ensure the bundle stop/demote notifications are directed to the correct host
- libcrmservice: override removal failure is not a problem
- libcrmcommon,execd: pass remaining timeout to drain function
- tools: log user-specified time correctly in crm_simulate
- libcrmcluster: log microseconds sensibly
- libcrmservice: order systemd resources relative to pacemaker_remote
- scheduler: order guest pseudo-fencing properly after clean-up
- scheduler: avoid unnecessary recovery of cleaned guest nodes
- scheduler: improve bundle address fixing messages
- attrd: record tentative writer only if election not already lost
- attrd: skip election check if peer election op had error
- attrd: disregard lost nodes' election votes
- attrd: improve election messages
- attrd: initialize election before broadcasting protocol
- controller: remove node's vote as soon as it is inactive
- controller: don't register DC input twice
- controller: don't stop election timer for nonexistent election
- controller: improve election messages
- libcrmcluster: don't write more than one election storm black box
- libcrmcluster: only count no-vote if an election is in progress
- libcrmcluster: validate election cluster messages better

OBS-URL: https://build.opensuse.org/request/show/647633
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=313
2018-11-09 16:44:36 +00:00
bcdffa1e76 Accepting request 640083 from network:ha-clustering:Factory
- fenced: Handle fencing requested with nodeid by utilizing the membership cache of known nodes (bsc#1094208)
  * bsc-1094208-Refactor-fenced-Handle-fencing-requested-with-nodeid.patch
- controld: able to manually confirm unseen nodes are down (bsc#1094208)
  * bsc-1094208-Fix-controld-able-to-manually-confirm-unseen-nodes-a.patch

- Update to version 2.0.0+20180927.b67d8d0de:
- logrotate: set a maximum size for logs
- tools: ensure crm_resource --force-* commands get stderr messages
- libcrmcommon: properly check whether resource supports parameters
- tools: "return" from crm_mon after calling functions that don't
- alerts: send all MIB OIDs with all SNMP alerts
- resource-agents: add "s"-suffix where missing in metadata
- libcommon: do not write to /proc/sys/kernel/sysrq when unneeded
- 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 (forwarded request 640081 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/640083
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=123
2018-10-11 09:46:31 +00:00
f4fa43815b Accepting request 640081 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- fenced: Handle fencing requested with nodeid by utilizing the membership cache of known nodes (bsc#1094208)
  * bsc-1094208-Refactor-fenced-Handle-fencing-requested-with-nodeid.patch
- controld: able to manually confirm unseen nodes are down (bsc#1094208)
  * bsc-1094208-Fix-controld-able-to-manually-confirm-unseen-nodes-a.patch

- Update to version 2.0.0+20180927.b67d8d0de:
- logrotate: set a maximum size for logs
- tools: ensure crm_resource --force-* commands get stderr messages
- libcrmcommon: properly check whether resource supports parameters
- tools: "return" from crm_mon after calling functions that don't
- alerts: send all MIB OIDs with all SNMP alerts
- resource-agents: add "s"-suffix where missing in metadata
- libcommon: do not write to /proc/sys/kernel/sysrq when unneeded
- 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

OBS-URL: https://build.opensuse.org/request/show/640081
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=311
2018-10-05 13:20:59 +00:00
38f9d41d4d Accepting request 635562 from network:ha-clustering:Factory
OBS-URL: https://build.opensuse.org/request/show/635562
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=122
2018-09-16 16:30:43 +00:00
1a3ece89e8 Accepting request 635561 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 2.0.0+20180911.b7803d27c:
- libcrmcommon: allow configurable bounds for DH prime length
- CIB,executor: improve remote server-side messages
- CIB: give more detail when TLS handshake fails
- libcrmcommon: get DH prime bit length from GnuTLS API
- libcrmcommon: improve TLS session initialization failure handling
- CIB: raise exit escalation timer to 10s
- cts,tools: make static analysis happy
- crm_mon: no sense in having --as-xml in daemon-mode
- attrd: Adding the ignore_delay parameter to reduce the number of scans of the attribute hash table.
- crm_mon: rhbz#1625231 - disable fence-history in file-mode

- Update to version 2.0.0+20180831.e41c7d6d6:
- XML: schemas.c: ensure proper upgrade-enter fallback & guard strdup arg
- controller: trigger join after both peer and join notifications
- controller: handle shutdown completion only when needed
- libcrmcluster: reset "when lost" when a peer becomes a member
- libcrmcluster: improve CPG membership messages
- controller: improve membership messages
- stonith-history: keep history recorded within boundaries
- tools: crm_resource -C should wait for all replies
- libcrmcommon: explicitly include stdint.h in util.h (bsc#1108303)
- attrd: improve log messages
- attrd: delay re-attempted writes
- crm_mon: in case of html-output avoid missleading output
- tools: make crm_resource messages tool-agnostic
- scheduler: show promotable clones as "(promotable)" rather than "Master/Slave"
- tools: make crm_resource --lifetime specify rule with local time zone
- crm_mon: rhbz1419548: show standby-node with active resources
- crm_mon: rhbz#1486869 - common language on connection-errors

OBS-URL: https://build.opensuse.org/request/show/635561
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=309
2018-09-13 14:56:07 +00:00
3b82644eac Accepting request 625814 from network:ha-clustering:Factory
OBS-URL: https://build.opensuse.org/request/show/625814
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=121
2018-08-02 12:50:43 +00:00
f282465d02 Accepting request 625813 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 2.0.0+20180726.3d81c89b8:
- Shutdown corosync after a fatal error
- tools: ipmiservicelogd FTBFS on ppc64le
- tools: notifyServicelogEvent FTBFS on ppc64le
- tools: detect CIB directory correctly
- tools: avoid memory leak when crm_resource checks resource
- controller: avoid any chance of use-of-NULL when doing LRM op
- resources: controld doesn't need to check for corosync 1 plugin
- resources: use correct variable name in Stateful
- cts-scheduler: restore ability to pass arguments to single test run
- resources: use ocf_is_true in SysInfo
- spec: drop superfluous dependency of -libs-devel on -cts
- tools: update URL in crm_simulate help
- crm_mon: rhbz#1461964 - add fence history features

- Update to version 2.0.0+20180706.8cf3fe749 (Pacemaker-2.0.0):
- tools: Multiple -V increase debug level (#1526)
- scheduler: clarify multiple-anonymous-instances message
- scheduler: avoid use-after-free when on-fail=block
- controller: add node name to meta-data call environment
- controller: filter certain synthesized failures from CIB
- controller: filter certain action timeouts from CIB
- controller: don't record pending notifies in CIB
- executor: cancel recurring monitors if fence device registration is lost
- controller: avoid memory leak if start-up fails
- XML: schemas.c: fix possible memleak + less magic with numeric constants
- tools: stonith_admin -h/-H options are queries
- libstonithd: avoid memory leak when getting meta-data
- XML: resources-3.1.rng: relaxed schema after tight upgrade enforcement
- XML: schemas.c: take severities of XSLT messages into account properly

OBS-URL: https://build.opensuse.org/request/show/625813
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=307
2018-07-27 15:42:24 +00:00
7dcf0b7fc7 Accepting request 603197 from network:ha-clustering:Factory
- Update to version 1.1.18+20180430.b12c320f5:
  * XML: upgrade-2.10.xsl: fix "mark space" issue (bsc#1091661) (forwarded request 603196 from yan_gao)

OBS-URL: https://build.opensuse.org/request/show/603197
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=120
2018-05-06 12:57:39 +00:00
207d21cec3 Accepting request 603196 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 1.1.18+20180430.b12c320f5:
  * XML: upgrade-2.10.xsl: fix "mark space" issue (bsc#1091661)

OBS-URL: https://build.opensuse.org/request/show/603196
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=305
2018-05-02 17:11:03 +00:00
95ea093b12 Accepting request 602487 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 1.1.18+20180427.a34ccd926:
- crmd: avoid double free after ACL rejection of resource delete
- lib: Changed to lowercase comparison.
- all: correct misspellings
- controld: remove deprecated configdir parameter
- controld: deprecate and ignore configdir parameter
- controld: consistently indent with spaces instead of tabs
- libcrmcommon: don't record pending notify actions as completed
- crmd: improve messages when a node is unexpectedly lost
- cib: improve shutdown messages
- cts-regression: allow specifying to run multiple tests again (bsc#1091360)

- Update to version 1.1.18+20180417.24df451b5:
- alerts: Delete redundant code.
- liblrmd: cast time_t to long long when printing
- cts: separate dummy systemd service into separate files
  * Drop obsolete fate-323526_pacemaker-tests-shebang-python3.patch
- crm_diff: rhbz#1561617 - Ignore attribute placement when comparing in 'cib' mode
- spec: remove reference to long-gone file
- spec: mark -cts & -doc packages as noarch
- spec: fix malformed conditional macros for systemd-less cases
- alerts: Change timestamp of Alert of snmp.

- Update to version 1.1.18+20180411.2f77f4922:
- libcrmcommon: free signal triggers when cleaning up mainloop
- libcrmcommon: fix memory leak in schema workaround
- fencing: avoid memory leaks when freeing remote operation
- fencing: free dynamic memory at stonithd shutdown
- crmd: delete resource from lrmd when appropriate
- Test: rhbz#1565187 - Ensure failures that cause fencing are not removed until after fencing completes

OBS-URL: https://build.opensuse.org/request/show/602487
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=304
2018-04-30 10:26:02 +00:00
190bf70d08 Accepting request 594935 from network:ha-clustering:Factory
OBS-URL: https://build.opensuse.org/request/show/594935
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=119
2018-04-17 09:10:14 +00:00
158655be13 Accepting request 594934 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 1.1.18+20180406.633845120:
- libcrmcommon: add a byte to pid file holder
- attrd,cib,libcrmcommon: avoid %z
- crmd: avoid memory leak when synthesizing operation result
- tools: avoid memory leak on invalid resource
- crmd: log rc code as extended information
- cib: avoid file descriptor leak on temporary file creation
- pengine: avoid redundant test
- libcrmcommon: handle compression failures properly
- libcrmcommon: improve empty string check
- various: improve NULL checks
- libcrmcommon: improve patch xpath searches
- libcrmcommon,tools: use format strings appropriate to variables
- libcrmcommon: use correct argument type for duration
- libcrmcluster: avoid potential use-of-NULL
- libcrmcommon,libstonithd: avoid resource leaks
- tools: get sensor lun in ipmiservicelogd before using it
- schema upgrade: temporary fix to avoid crash on newly present text

- Update to version 1.1.18+20180406.ce623681e:
- fencing: convert fence_legacy to python
- fencing: fix typos in messages

- Update to version 1.1.18+20180406.18fe1cc2b:
- 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
- cts-pengine: add regression test for notifications for unrunnable actions
- cts-pengine: update regression tests for notification changes
- rhbz#1545449 - Do not perform notifications for events we know wont be executed

OBS-URL: https://build.opensuse.org/request/show/594934
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=302
2018-04-09 15:40:11 +00:00
6354cec894 Accepting request 588117 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 1.1.18+20180313.2c83c6872:
- cts-pengine: add regression test for changing bundle replica count
- libpe_status: handle unique bundle children correctly

- Update to version 1.1.18+20180312.31c732adc:
- spec: make shadow dependency explicit
- spec: drop requirements for bison and flex

- Update to version 1.1.18+20180309.e51687162:
- crmd,liblrmd,libcrmcommon: improve remote node disconnection logs
- libcrmcommon: add function to get text equivalent of client type
- crmd: always write faked failures to CIB whenever possible
- liblrmd: add function to create resource info structure
- crmd: functionize setting fake operation status
- crmd: always assert when operation can't be created
- crmd: avoid core dump if remote connection doesn't exist
- crmd: improve lrmd failure handling
- crmd: return rich error codes from get_lrm_resource()
- crmd: match only executed down events
- crmd: functionize pieces of do_lrm_invoke()
- crmd: don't abort for v2 diff LRM refresh if actions pending
- crmd: validate CIB diffs better

- Update to version 1.1.18+20180305.9cd0f6cb8:
- libcrmcommon: avoid memory leak when schema transform not found
- tools: warn if crm_resource --wait called in mixed-version cluster
- Install /etc/pacemaker directory for storing authkey file (bsc#1082883)

- Update to version 1.1.18+20180226.f788652cf:
- crmd: log transition ID when aborting

OBS-URL: https://build.opensuse.org/request/show/588117
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=301
2018-03-17 08:57:27 +00:00
86ca6f1573 Accepting request 579247 from network:ha-clustering:Factory
OBS-URL: https://build.opensuse.org/request/show/579247
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=118
2018-02-25 11:16:24 +00:00
1e5709750c Accepting request 579246 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Build: Ship cibsecret by pacemaker instead of cluster-glue (bsc#1082456)
  * Drop obsolete pacemaker-cibsecret-tool-temp-disabled.patch

- Update to version 1.1.18+20180216.ae50b7f5d:
- various: improve string allocation
- XML: upgrade-2.10.xsl: re(drop) rsc_colocation/@score-attribute{,-mangle}
- XML: upgrade-*.xsl: bump the validate-with field from within stylesheet
- XML: upgrade-*.xsl: omit XML declaration
- upgrade-*.xsl: don't be picky about comments, PIs, etc.

- Update to version 1.1.18+20180213.965befd59:
- libcrmcommon: use /tmp when creating temporary XML file
- tools: crm_master should always work on node attribute
- tools: crm_resource --cleanup couldn't match clone instances
- tools: crm_resource --refresh should ignore --operation and --interval
- crmd: quorum gain should always cause new transition
- rhbz#1527072 - Correctly observe colocation constraints with bundles in the Master role
- Bug rhbz#1519812 - Prevent notify actions from causing --wait to hang
- libpe_status: recover after failed demote when appropriate
- lrmd: always use most recent remote proxy
- libpe_status: limit resource type check to primitives
- PE: correct mispelled constant
- PE: Ensure stop operations occur after stopped remote connections have been brought up
- PE: Remote connection resources are safe to to require only quorum
- PE: Only allowed nodes need to be considered when ordering resource startup after _all_ recovery
- PE: Ordering bundle child stops/demotes after container fencing causes graph loops
- PE: Passing boolean instead of a pointer

OBS-URL: https://build.opensuse.org/request/show/579246
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=299
2018-02-23 05:13:07 +00:00
a5f623c9fd Accepting request 575206 from network:ha-clustering:Factory
OBS-URL: https://build.opensuse.org/request/show/575206
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=117
2018-02-13 09:27:53 +00:00
11c0194ec0 Accepting request 575205 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 1.1.18+20180209.7acb22379:
- use proper way to make output files executable
- spec: move lrmd_test to cli package
- spec: make log directories owned by cli package
- spec: move all test data into cts package
- pengine: move regression test to cts as cts-pengine
- lrmd: move regression test to cts as cts-lrmd
- fencing: move regression test to cts as cts-stonithd
- tools: move CLI regression test to cts as cts-cli
- rename top-level testing files and move to cts directory
- tools: drop crmadmin -i and -d options (fate#324508)

- Update to version 1.1.18+20180208.f6a261987:
- Feature: crmd: modify feature set handling

- Update to version 1.1.18+20180205.b44c57e35:
- pengine,doc,tools: rename "master score" to "promotion score" (fate#324508)
- libpe_status: rename bundle 'masters' to 'promoted-max' (fate#323415)
- pengine,libpe_status: rename master-{max,node-max} to promoted-* (fate#324508)
- various: merge clone resource type and master/slave resource type (fate#324508)
- attrd,pacemakerd,libcrmcommon: make "Exiting" last message
- don't use corosync logging settings (fate#324508)
- crmd,libpe_rules: drop support for notification-agent/recipient
- tools: improve crm_failcount exit code usage

- Update to version 1.1.18+20180129.c801ab11e:
- allow configuring specific python intepreter version (fate#323526)
  * Drop obsolete fate-323526_pacemaker-pacemaker-configure-AM_PATH_PYTHON-python3.patch
- use auto-configured python executable in python shebangs (fate#323526)
  * Update fate-323526_pacemaker-tests-shebang-python3.patch

OBS-URL: https://build.opensuse.org/request/show/575205
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=297
2018-02-10 12:26:11 +00:00
96c77b9561 Accepting request 567834 from network:ha-clustering:Factory
- Update to version 1.1.18+20180119.9146c3c20:
- crmd: Avoid double-removal of glib event source on stopping

- Update to version 1.1.18+20180118.9c3f7a49c:
- libcrmcommon: put exit/return handling in own source/header files
- Build: bump build dependencies
- Rebase:
  * pacemaker-Wno-format-signedness.patch

- configure: Check for python3 with AM_PATH_PYTHON (fate#323526)
  * fate-323526_pacemaker-pacemaker-configure-AM_PATH_PYTHON-python3.patch

- Update to version 1.1.18+20180112.bd7115b8c:
- tools: improve help text
- libpe_status: deprecate restart-type and role_after_failure

- Update to version 1.1.18+20180109.57d48a1b1:
- libcluster,libcrmcommon: improve BZ2 error messages
- all: use consistent exit status codes
- libcrmcommon,tools: improve XML write error handling
- stonithd,libcrmcommon: auto-calculate stonith-watchdog-timeout when requested (fate#324508)
- logrotate: switch user when rotating logs

- cts: Operate pacemaker service on startup to prevent triggering StopWhenUnneeded of corosync service
  * pacemaker-cts-StartCmd.patch

OBS-URL: https://build.opensuse.org/request/show/567834
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=116
2018-01-21 14:48:36 +00:00
4ad958ac27 Accepting request 567833 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 1.1.18+20180119.9146c3c20:
- crmd: Avoid double-removal of glib event source on stopping

OBS-URL: https://build.opensuse.org/request/show/567833
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=295
2018-01-20 03:20:38 +00:00
449d3efab3 Accepting request 567534 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Build: bump build dependencies

OBS-URL: https://build.opensuse.org/request/show/567534
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=294
2018-01-19 01:07:11 +00:00
23af75a1b7 Accepting request 567532 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 1.1.18+20180118.9c3f7a49c:
- libcrmcommon: put exit/return handling in own source/header files
- bump build dependencies
- Rebase:
  * pacemaker-Wno-format-signedness.patch

- configure: Check for python3 with AM_PATH_PYTHON (fate#323526)
  * fate-323526_pacemaker-pacemaker-configure-AM_PATH_PYTHON-python3.patch

- Update to version 1.1.18+20180112.bd7115b8c:
- tools: improve help text
- libpe_status: deprecate restart-type and role_after_failure

- Update to version 1.1.18+20180109.57d48a1b1:
- libcluster,libcrmcommon: improve BZ2 error messages
- all: use consistent exit status codes
- libcrmcommon,tools: improve XML write error handling
- stonithd,libcrmcommon: auto-calculate stonith-watchdog-timeout when requested (fate#324508)
- logrotate: switch user when rotating logs

- cts: Operate pacemaker service on startup to prevent triggering StopWhenUnneeded of corosync service
  * pacemaker-cts-StartCmd.patch

OBS-URL: https://build.opensuse.org/request/show/567532
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=293
2018-01-19 01:01:32 +00:00
034f6431ef Accepting request 562044 from network:ha-clustering:Factory
OBS-URL: https://build.opensuse.org/request/show/562044
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=115
2018-01-16 08:24:50 +00:00
d7ed967e78 Accepting request 562043 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 1.1.18+20180104.7ba28d854:
- tools: improve crm_standby option handling
- tools: improve crm_standby help and error messages
- tools: improve crm_master option handling
- tools: improve crm_master help and error messages
- tools: remove deprecated stonith_admin option (fate#324508)
- tools: remove deprecated crm_verify option (fate#324508)
- tools: remove deprecated crm_attribute --node-uuid option (fate#324508)
- tools: avoid using deprecated options
- tools: remove deprecated crm_resource options (fate#324508)
- libpe_status: use consistent monitor for implicit remotes
- all: overhaul log locations (fate#324508)

- spec: Switch dependencies from python to python3 (fate#323526)
- tests: Switch shebang from /usr/bin/python to /usr/bin/python3 (fate#323526)
  * fate-323526_pacemaker-tests-shebang-python3.patch

OBS-URL: https://build.opensuse.org/request/show/562043
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=291
2018-01-05 20:55:11 +00:00
a1866854e6 Accepting request 561127 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 1.1.18+20180101.494eacba4:
- migrate cts to python3 (fate#323526)

OBS-URL: https://build.opensuse.org/request/show/561127
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=290
2018-01-02 13:44:19 +00:00
6612142cc1 Accepting request 559650 from network:ha-clustering:Factory
- Update to version 1.1.18+20171221.c91a650ec:
- libcrmcommon: drop special handling of pre-1.1.7 failed recurring op history
- libcrmcommon: drop special handling of pre-1.1.4 migration history entries
- crmd: drop support for DCs that don't support throttling
- cib,libcrmcommon: drop support for PCMK_legacy variable

- libcrmcluster: use crm_strdup_printf() instead of calloc()
- attrd: avoid small memory leak at start-up
- systemd unit files: restore DBus dependency
- libcrmservice: avoid memory leak on DBus error
- pengine: validate more function arguments
- Upstream version cs: 098d557cc495944e1b6ebd9d05b819d6da74825e

- libpe_status: drop support for "requires" operation meta-attribute (fate#324508)
- tools: crm_resource --cleanup with no resource specified (bsc#1071503)
- tools: crm_resource --cleanup (bsc#1071503)
- crmd,libpe_status: drop support for legacy option aliases (fate#324508)
- libstonithd,libpe_status: drop support for pcmk_poweroff_action (fate#324508)
- libstonithd,libpe_status: drop support for pcmk_arg_map (fate#324508)
- libstonithd,libpe_status: drop support for pcmk_*_cmd (fate#324508)
- libpe_status,libpe_rules: drop support for default-action-timeout (fate#324508)
- libpe_status: use correct default timeout for probes
- libpe_status: drop support for operation meta-attributes in instance_attributes (fate#324508)
- libpe_status: fix precedence of operation meta-attributes
- libpe_status,libpe_rules: remove support for is-managed-default (fate#324508)
- libpe_status,libpe_rules: drop support for default-resource-stickiness (fate#324508)
- crmd: drop support for LRMD_MAX_CHILDREN environment variable (fate#324508)
- tools: remove crm_mon SMTP support (fate#324508)
- tools: remove crm_mon SNMP support (fate#324508)
- lrmd: remove deprecated -r/--dummy command-line option (fate#324508)

OBS-URL: https://build.opensuse.org/request/show/559650
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=114
2017-12-30 23:44:08 +00:00
84cb26cebc Accepting request 559649 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- libcrmcommon: drop special handling of pre-1.1.4 migration history entries
- crmd: drop support for DCs that don't support throttling
- cib,libcrmcommon: drop support for PCMK_legacy variable

OBS-URL: https://build.opensuse.org/request/show/559649
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=288
2017-12-23 21:13:42 +00:00
e14ffaa950 Accepting request 559624 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Update to version 1.1.18+20171221.c91a650ec:
- cib,libcrmcommon: drop support for PCMK_legacy variable
- crmd: drop support for DCs that don't support throttling
- libcrmcommon: drop special handling of pre-1.1.4 migration history entries
- libcrmcommon: drop special handling of pre-1.1.7 failed recurring op history

- libcrmcluster: use crm_strdup_printf() instead of calloc()
- attrd: avoid small memory leak at start-up
- systemd unit files: restore DBus dependency
- libcrmservice: avoid memory leak on DBus error
- pengine: validate more function arguments
- Upstream version cs: 098d557cc495944e1b6ebd9d05b819d6da74825e

- libpe_status: drop support for "requires" operation meta-attribute (fate#324508)
- tools: crm_resource --cleanup with no resource specified (bsc#1071503)
- tools: crm_resource --cleanup (bsc#1071503)
- crmd,libpe_status: drop support for legacy option aliases (fate#324508)
- libstonithd,libpe_status: drop support for pcmk_poweroff_action (fate#324508)
- libstonithd,libpe_status: drop support for pcmk_arg_map (fate#324508)
- libstonithd,libpe_status: drop support for pcmk_*_cmd (fate#324508)
- libpe_status,libpe_rules: drop support for default-action-timeout (fate#324508)
- libpe_status: use correct default timeout for probes
- libpe_status: drop support for operation meta-attributes in instance_attributes (fate#324508)
- libpe_status: fix precedence of operation meta-attributes
- libpe_status,libpe_rules: remove support for is-managed-default (fate#324508)
- libpe_status,libpe_rules: drop support for default-resource-stickiness (fate#324508)
- crmd: drop support for LRMD_MAX_CHILDREN environment variable (fate#324508)
- tools: remove crm_mon SMTP support (fate#324508)
- tools: remove crm_mon SNMP support (fate#324508)
- lrmd: remove deprecated -r/--dummy command-line option (fate#324508)

OBS-URL: https://build.opensuse.org/request/show/559624
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=287
2017-12-23 15:19:10 +00:00
8d5e931afd Accepting request 547105 from network:ha-clustering:Factory
- attrd: ensure node name is broadcast at start-up (CLBZ#5330)
- Upstream version cs: 407ded8de381543e71c5b94b3ade296fcfd2c828

- libpe_status: remove support for default-resource-failure-stickiness
- libpe_status: remove support for resource-failure-stickiness
- various: remove support for pre-Pacemaker-1.0 CIB XML
- libpe_status,tools: remove support for legacy ticket state entries
- various: remove isolation wrapper support
- systemd unit files: enable TasksMax=infinity (bsc#1028138, bsc#1066710)
  * Drop obsolete bug-1028138_pacemaker-pacemaker.service-TasksMax.patch
- Upstream version cs: 53a3fe14b15b087bbde9ccb524d11d0a413cc6e9

- RA: NodeUtilization RA is now shipped by resource-agents package (bsc#1070347)
  * Drop bug-1015842_pacemaker-NodeUtilization-RA.patch

- crmd: default record-pending to TRUE
- tools: enable new crm_resource --cleanup/--refresh behavior
- Upstream version cs: f36ad364748880815bf00151c516a1f2deae2fed

- Replace references to /var/adm/fillup-templates with new 
  %_fillupdir macro (boo#1069468)

- Update to version 1.1.18
- libpe_status: always use default key location with bundles
- attrd,stonithd: more efficient regular expression parsing
- libpe_status: avoid potential NULL dereference
- tools: use proper variable in message from crm_resource -g
- tools: use uber-parent for crm_resource -a/-A
- tools: use g_main_loop_is_running() properly
- libpe_status: monitors are rescheduled, not reloaded

OBS-URL: https://build.opensuse.org/request/show/547105
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=113
2017-12-03 09:11:29 +00:00
3d7ddbabc1 Accepting request 547103 from home:yan_gao:branches:network:ha-clustering:Factory:Test
-- crmd,tools: assume atomic attrd is present

OBS-URL: https://build.opensuse.org/request/show/547103
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=285
2017-12-01 13:36:19 +00:00
04dbcfd2da Accepting request 547101 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- attrd: ensure node name is broadcast at start-up (CLBZ#5330)
- crmd,tools: assume atomic attrd is present
- Upstream version cs: 407ded8de381543e71c5b94b3ade296fcfd2c828

- libpe_status: remove support for default-resource-failure-stickiness
- libpe_status: remove support for resource-failure-stickiness
- various: remove support for pre-Pacemaker-1.0 CIB XML
- libpe_status,tools: remove support for legacy ticket state entries
- various: remove isolation wrapper support
- systemd unit files: enable TasksMax=infinity (bsc#1028138, bsc#1066710)
  * Drop obsolete bug-1028138_pacemaker-pacemaker.service-TasksMax.patch
- Upstream version cs: 53a3fe14b15b087bbde9ccb524d11d0a413cc6e9

OBS-URL: https://build.opensuse.org/request/show/547101
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=284
2017-12-01 13:31:51 +00:00
fba20e9729 Accepting request 546637 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- pengine: don't probe offline or unclean guest nodes (fate#324441)
- PE: Implement probing of container remote nodes (fate#324441)

OBS-URL: https://build.opensuse.org/request/show/546637
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=283
2017-11-30 09:45:18 +00:00
e1ecfd7422 Accepting request 546526 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Upstream version cs: f36ad364748880815bf00151c516a1f2deae2fed
  * Update bug-1028138_pacemaker-pacemaker.service-TasksMax.patch

OBS-URL: https://build.opensuse.org/request/show/546526
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=282
2017-11-29 19:24:33 +00:00
d97a0788d8 Accepting request 546503 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- RA: NodeUtilization RA is now shipped by resource-agents package (bsc#1070347)

OBS-URL: https://build.opensuse.org/request/show/546503
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=281
2017-11-29 17:34:37 +00:00
9714edda00 Accepting request 546501 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Replace references to /var/adm/fillup-templates with new 
  %_fillupdir macro (boo#1069468)

OBS-URL: https://build.opensuse.org/request/show/546501
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=280
2017-11-29 17:29:11 +00:00
5498ebebbb Accepting request 546490 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- NodeUtilization RA is now shipped by resource-agents package (bsc#1070347)
  * Drop bug-1015842_pacemaker-NodeUtilization-RA.patch

- libpe_status: remove support for default-resource-failure-stickiness
- libpe_status: remove support for resource-failure-stickiness
- various: remove support for pre-Pacemaker-1.0 CIB XML
- libpe_status,tools: remove support for legacy ticket state entries
- various: remove isolation wrapper support
- systemd unit files: enable TasksMax=infinity (bsc#1028138, bsc#1066710)
  * Drop obsolete bug-1028138_pacemaker-pacemaker.service-TasksMax.patch
- crmd: default record-pending to TRUE
- tools: enable new crm_resource --cleanup/--refresh behavior
- Upstream version cs: 53a3fe14b15b087bbde9ccb524d11d0a413cc6e9

- Update to version 1.1.18
- libpe_status: always use default key location with bundles
- attrd,stonithd: more efficient regular expression parsing
- libpe_status: avoid potential NULL dereference
- tools: use proper variable in message from crm_resource -g
- tools: use uber-parent for crm_resource -a/-A
- tools: use g_main_loop_is_running() properly
- libpe_status: monitors are rescheduled, not reloaded
- crmd: determine restart/private digests correctly
- systemd: add TasksMax comment to pacemaker_remote unit (bsc#1028138, bsc#1066710)
- tools: make regression test insensitive to line number changes
- pengine,tools,libpe_status: avoid unnecessary use of pe_find_current
- pacemaker.service: Recommend not to limit tasks (bsc#1028138, bsc#1066710)
- tools: set the correct OCF_RESOURCE_INSTANCE env when crm_resource --force-* executes RA
- typo: overriden -> overridden
- portability: the difference of time_t values is given by difftime()

OBS-URL: https://build.opensuse.org/request/show/546490
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=279
2017-11-29 16:52:08 +00:00
2141b8cdc5 Accepting request 536285 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/536285
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=112
2017-10-25 15:45:23 +00:00
c51d4e2a58 Accepting request 536284 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- libpe_status: avoid use-after-free (again)
- lrmd: don't reject protocol 1.0 clients (bsc#1009076)
- tools: print descriptive messages for OCF exit code
- tools: differentiate trace log level for RAs
- tools: show RAs debug logs only when verbose mode for crm_resource --force-*
- tools: suppress an invalid error message for crm_resource --force-* options
- pengine: don't schedule reload and restart in same transition
- libcrmservice: list systemd agents alphabetically
- libcrmcommon: add function to sort list alphabetically
- pengine: new regression test for unrecoverable remote connection
- libcrmservice: avoid infinite loop on bad DBus reply
- libcrmservice: list systemd unit files, not only active units
- libpe_status: print container type in lowercase when outputting XML
- tools: re-enable crm_resource --lifetime option (CLBZ#5251, bsc#950128)
- libcrmcluster: improve error checking when updating node name
- tools: fix crm_resource --why output when resource and node are specified
- libcrmservice: parse LSB long description correctly
- libcrmservice: follow LSB standard for header block more strictly
- libcommon: Erase old exit_reason
- Upstream version cs: 36d2962a8613322fc43d727d95720d61a47d0138

- spec: Prevent overwriting existing sysconfig files by conditionally running %fillup_only (bsc#1022807, bsc#980341)
- remote: Allow cluster and remote LRM API versions to diverge (bsc#1009076)
- lrmd: prevent double free after unregistering stonith device for monitoring (bsc#1035822)
- crmd: Ack pending operations that were cancelled due to rsc deletion (bsc#1035822)

OBS-URL: https://build.opensuse.org/request/show/536284
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=277
2017-10-24 11:05:27 +00:00
712afd08a2 Accepting request 533950 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/533950
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=111
2017-10-23 14:37:13 +00:00
c0a63edb2b Accepting request 533947 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- crm_mon: error-exit child if execl should return
- crmd: avoid memory leak when caching meta-data
- tools: ensure crm_resource data set is initialized
- libcib: ensure xpath result isn't empty
- tools: missing break statement in attrd_updater
- libcrmcommon: check sscanf() result when parsing schema version
- tools: check sscanf return value when parsing failed op list
- tools: treat bundles with replicas like clones when restarting
- tools: allow crm_resource to be called without arguments
- tools: update regression test for recent message changes
- tools: improve crm_resource --show-metadata error messages (CLBZ#5287)
- libcrmcommon: add functions for using agent specifications
- tools: improve crm_resource help (CLBZ#5251, bsc#950128)
- libcrmcommon: improve cluster option parsing
- Upstream version cs: 27b631162104d90e944cbc107c2d46e983f94ca7

- spec: Disable deprecated crm_mon SNMP/ESMTP support (configure alerts instead)

- pengine: add tests for no-quorum-policy=suicide
- libpe_status: properly detect when nodes should suicide
- libpe_status: always log startup-fencing value
- libpe_status: generalize ability to log warning only once
- pengine: reset loss-policy from fence to stop if no fencing
- pengine: avoid use-of-NULL when unpacking tickets
- tools: ensure crm_resource works if no command is specified
- libpe_status: validate no-quorum-policy=suicide correctly
- tools: use-after-free in crm_diff
- RA: ClusterMon - Correctly handle "update" parameter
- attrd: "peer peer loss" -> "peer loss"
- Tools:Refactored Crm_resource to have proper assignments for require_*

OBS-URL: https://build.opensuse.org/request/show/533947
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=275
2017-10-13 13:52:10 +00:00
b43991a1ca Accepting request 532213 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/532213
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=110
2017-10-13 12:04:17 +00:00
f92e6d1c91 Accepting request 532208 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Log: Reduce verbosity of developer logging
- PE: We most definitely need to probe connection resources
- PE: Ensure the bundle nodes get set with the correct discovery mode
- PE: Implement probing of container remote nodes
- attrd: Tweak log messages for clarity
- crm_resource: Do not send history erasure commands for nodes where this is none
- PE: Resources in bundles should also respect failcounts
- PE: Do not send notifications to unclean bundles
- PE: Prevent graph loops when fencing the host out from underneath a bundle
- Tools: Allow bundle resources to read/write master scores based on the same logic as attrd (cf34f4c)
- PE: bundle: Send an additional host list when container-attribute-target=host
- PE: Correctly interpret colocation with bundles
- PE/attrd: Allow bundle resources to read/write attributes based on the physical host rather than the container name
- Upstream version cs: 4328c6a65424d1caf9785107664ec1b7fc824664

- Rebase:
  * bug-728579_pacemaker-stonith-dev-id.patch
- Fix: -Wformat-truncation=2: prevent format truncation
- snprintf: use correct signedness in print format specifiers
- snprintf: use sizeof(X) as size + prevent off-by-ones
- crmd,libcrmcommon,libcluster,tools: handle PID as string properly
- tools: use right size for string buffer in fake_transition.c
- crm_resource: fix a memleak
- pengine: sprintf -> snprintf
- libcrmcommon: fix possible infloop in buffer_print
- crm_snprintf_offset like parts: fix off-by-ones
- attrd: improve update messages
- stonithd,lrmd,pengine: spelling/formatting corrections
- build: install ifspeed resource agent
- libcrmservices: avoid assert for HB resource with no parameters

OBS-URL: https://build.opensuse.org/request/show/532208
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=273
2017-10-06 13:22:51 +00:00
68eff2f20b Accepting request 513590 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- logging: ensure blackbox gets generated on arithmetic error
- crm_mon: overcome crm_system_name no longer influenced with argv
- crm_mon: make CGI bail out on suspicious arguments
- crm_mon: make CGI bail out properly and w/o help screen
- crm_mon: canonical casing of Content-Type CGI header field
- libcrmcommon: handle schema versions properly
- attrd: don't reconnect to lrmd if already connected
- PE: Ensure nested container connections run on the same host
- crmd: send alerts via lrmd
- lrmd: execute alerts as cluster daemon user
- libservices: add ability to specify user to run an action
- libcrmcommon: improve user lookup messages
- extra: correct ClusterMon metadata
- attrd: avoid memory leak when disconnecting from lrmd
- attrd,tools: avoid memory leaks from use of crm_itoa()
- attrd: be consistent about attr/host logging
- attrd: delay lrmd connect until needed
- attrd: add timestamp to alert just when needed
- attrd: improve log messages
- libcrmcommon,libpe_rules: avoid crash when alerts section has comments
- libcrmcommon: add API call for next named XML child
- liblrmd: only set environment variables with a value
- attrd,liblrmd: handle adding env var at head of list
- lrmd: drain alerts at shutdown
- attrd,lrmd: generate alert sequence number in lrmd
- liblrmd: better trace message when creating command
- stonith-ng: avoid double-free of pending-ops in free_device
- crmd: log correct feature set revision
- PE: update start-failure-is-fatal help
- cib: avoid unnecessary memory allocation

OBS-URL: https://build.opensuse.org/request/show/513590
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=272
2017-07-31 15:14:51 +00:00
c0e48b2a38 Accepting request 502740 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/502740
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=109
2017-06-16 08:53:33 +00:00
0bcf290c7b Accepting request 500798 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- pengine,libpe_status: revisit fencing messages
- PE: Improve logging of node fencing and shutdown
- PE: Fence unrecoverable remote nodes with no resources
- libpe_status: propagate multiple-active=block for bundles
- libpe_status: set parent for bundle components
- attrd: broadcast local overrides of sync'ed attributes
- crmd: attribute write-out not needed with atomic attrd
- PE: Prevent use-after-free when creating bundle constraints
- PE: Ensure remote nodes are fenced when the connection cannot be recovered
- PE: Improved fencing logging
- PE: Assume resources on remote nodes do not need to be restarted until absolutely necessary
- PE: Correctly compare a point with NULL instead of FALSE
- libpe_status: correctly flag remote connection resources
- pengine: improve internal bundle constraints
- pengine: re-phrase trace log for internal constraints
- libpe_status: set #kind to "container" for bundle nodes
- pengine,libpengine: avoid potential use-of-NULL
- pengine: avoid use-of-NULL in bundle without primitive
- libpengine: don't double score when adding first allowed node
- pengine: improve detection of invalid constraints
- PE: Prevent use-of-NULL when expanding containers
- PE: Partially restore 62ed004 to ensure remote connections are available before attempting resource recovery
- stonith-ng: Trigger on constraints added to cib (bsc#1042374)
- Upstream version cs: e47bd5bc77a3d1b38589b3716f5112ed39329e7b

OBS-URL: https://build.opensuse.org/request/show/500798
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=270
2017-06-02 21:23:22 +00:00
6da2a65643 Accepting request 497357 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/497357
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=108
2017-06-01 14:28:53 +00:00
7dd4d2eb2f Accepting request 494984 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- RA: NodeUtilization - Use xl if available (bsc#1015842)
  * Drop obsolete:
    ** bug-1015842_pacemaker-NodeUtilization-RA-1.patch
    ** bug-1015842_pacemaker-NodeUtilization-RA-2.patch
    ** bug-1015842_pacemaker-NodeUtilization-RA-3.patch
  * Add bug-1015842_pacemaker-NodeUtilization-RA.patch
- Drop obsolete pacemaker-lrmd.h-include-libxml.patch
- lrmd,pengine: remove versioned parameters from documentation and tests
- lrmd,pengine: don't support versioned attributes by default
- Containers: Relax docker/remote colocation constraint when appropriate
- Containers: Ensure remote resources are only allocated to full cluster nodes
- lrmd: Ensure verbosity options are handled after crm_log_init()
- pengine: unmanage guest-container puts guest in maintenance
- pengine: unique ids for meta-attributes of guest-connection
- pengine: update regression tests for probes of guest-connections
- pengine: have guest-node connection-resources probed
- crmd: clean up throttle memory on exit
- libcib: avoid use-after-free when deleting CIB connection
- systemd unit files: add dependency on resource-agents-deps
- pengine: Allow use of resource params and meta-params in location rules
- libcrmcommon: avoid evicting IPC client if messages spike briefly
- libcrmcommon: don't delay next flush by more than 5 seconds
- libcib: downgrade ACL status message to trace
- crmd: don't destroy election structure twice
- crmd: avoid use-after-free when disconnecting from CIB
- libcib: functionize destroying op callback table
- crmd,libcrmcommon: update throttle when CPUs are hot-plugged
- crmd: remove I/O load checks
- libcrmcommon: add function to get number of CPU cores
- crmd: functionize checking throttle thresholds

OBS-URL: https://build.opensuse.org/request/show/494984
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=268
2017-05-15 16:27:22 +00:00
8f5a75fb03 Accepting request 483190 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/483190
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=107
2017-04-11 10:39:38 +00:00
503a7d6df1 Accepting request 483189 from home:yan_gao:branches:network:ha-clustering:Factory:Test
* Drop obsolete bug-1015842_pacemaker-NodeUtilization-RA.patch
  * Add bug-1015842_pacemaker-NodeUtilization-RA-1.patch

OBS-URL: https://build.opensuse.org/request/show/483189
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=266
2017-03-28 20:22:29 +00:00
b89acbf7ca Accepting request 483185 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- libcrmcluster,crmd: log join phase as text rather than integer
- pacemaker-remote: pacemaker_remoted shutdown while unmanaged
- tools: disable agent stdout/stderr for crm_resource --validate
- tools: Add "--validate" command to crm_resource
- tools: crm_resource should set OCF_RESKEY_crm_feature_set
- tools: make crm_failcount compatible with per-operation failcounts
- tools: support clearing failure of a single operation with crm_resource -C
- crmd: support clearing failure of a single operation
- crmd: make clearing last failure more efficient
- attrd,libcrmcommon: support clearing failure of a single operation
- attrd,crmd,libraries,tools: track resource failures per-operation
- tools: support crm_failcount -q as advertised
- Upstream version cs: 77ea74d01bcb6b7100e1c7acab0e66e79aceaf8b

- NodeUtilization: Never set hv_memory to a negative value (bsc#1015842)
  * bug-1015842_pacemaker-NodeUtilization-RA-3.patch
- NodeUtilization: Fix mixed indentation, set executable bit (bsc#1015842)
  * bug-1015842_pacemaker-NodeUtilization-RA-2.patch
- RA: NodeUtilization - Use xl if available (bsc#1015842)
  * Rename to bug-1015842_pacemaker-NodeUtilization-RA-1.patch

OBS-URL: https://build.opensuse.org/request/show/483185
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=265
2017-03-28 20:04:35 +00:00
c2b3d7303f Accepting request 480821 from home:yan_gao:branches:network:ha-clustering:Factory:Test
* enable_fatal_warnings=0

OBS-URL: https://build.opensuse.org/request/show/480821
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=264
2017-03-17 11:12:03 +00:00
efc9ddc597 Accepting request 480816 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- spec: Merge the SLE and Factory versions

OBS-URL: https://build.opensuse.org/request/show/480816
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=263
2017-03-17 10:52:22 +00:00
6cc0b5f119 Accepting request 480813 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- crmd: new cluster option stonith-max-attempts with default value 10
- crmd: Change of the log level and addition of uuid.
- crmd: use new attrd op to clear fail counts
- tools: crm_resource -C should clear last-failure
- libcrmcommon: add API for new attrd clear-failure operation
- attrd: add more detail to legacy attrd messages
- attrd: add API for clearing failures
- Upstream version cs: e55d506cc390f0a0335b4ec6e365ea89da30b6b1

- pacemaker.service: Add presetting TasksMax=4915 (bsc#1028138)
  * bug-1028138_pacemaker-pacemaker.service-TasksMax.patch

OBS-URL: https://build.opensuse.org/request/show/480813
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=262
2017-03-17 10:24:07 +00:00
59e6ab0f7d Accepting request 477367 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/477367
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=106
2017-03-10 19:59:20 +00:00
559483a527 Accepting request 477365 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Build: lrmd: Include libxml/tree.h in lrmd.h
  * pacemaker-lrmd.h-include-libxml.patch

- libfencing,fencing: properly remap "action" in configuration
- libservices: ensure recurring actions table is created before using
- libservices: improve error messages when creating operation
- libservices: properly detect in-flight systemd/upstart ops when kicking
- libservices: properly cancel in-flight systemd/upstart op
- libservices: handle in-flight case first when cancelling an operation
- libservices: prevent use-after-free when freeing an operation
- libservices: ensure completed ops aren't on blocked ops list
- libcrmcommon: assert if can't generate operation key
- libcrmcommon: improve remote connection polling messages
- crmd: clear failure only for requested node
- crmd: improve message when clearing failures
- pengine,libpe_status: make failcount clearing messages more helpful
- pengine,libpe_status: don't clear same fail-count twice
- cib: properly mark variable as volatile
- libcib: avoid memory leak in query_node_uuid()
- tools: avoid NULL dereference in crm_resource debug message
- cib,libcrmcommon,lrmd: handle IP addresses better in messages
- tools: crm_attribute should prefer node name from environment
- libcrmcommon: Correctly delete XML comments according to their positions (bsc#1024037)
- libcrmcommon: Correctly compare XML comments to prevent crmd from getting into infinite election loop (bsc#1024037)
- crmd,libcrmcluster: minor log message improvements
- tools: avoid deprecated function in notifyServicelogEvent
- libcrmcommon,pengine,tools: pass local node name to resource agents
- use callback instead of sync call
- libcib: make querying node uuid more efficient
- tools: allow regular expression with crm_attribute

OBS-URL: https://build.opensuse.org/request/show/477365
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=260
2017-03-07 00:32:46 +00:00
b7469ea8da Accepting request 460895 from network:ha-clustering:Factory
- Explicitly own %{_defaultdocdir}/%{name}.

OBS-URL: https://build.opensuse.org/request/show/460895
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=105
2017-03-03 16:41:06 +00:00
de2e3d57d3 Accepting request 459726 from home:dimstar:Factory
- Explicitly own %{_defaultdocdir}/%{name}.

OBS-URL: https://build.opensuse.org/request/show/459726
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=258
2017-02-28 14:42:53 +00:00
089bdca3a9 Accepting request 439265 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/439265
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=104
2016-11-10 12:15:31 +00:00
d07a29da45 Accepting request 439264 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- sysconfig: minor tweaks (typo, wording)

OBS-URL: https://build.opensuse.org/request/show/439264
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=256
2016-11-08 17:56:43 +00:00
4e69252716 Accepting request 439181 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Revert "Build: configure: make systemd detection akin to + before Upstart one"
  * pacemaker-configure-systemd-detection.patch
- libcrmcommon: fix CVE-2016-7035 (improper IPC guarding) (bsc#1007433)
- various: issues discovered via valgrind and coverity
- attrd_updater: fix usage of HAVE_ATOMIC_ATTRD
- Upstream version cs: b6f251a13fadca0cb74702b0c007a55275c8ea09

- Rebase:
  * pacemaker-NodeUtilization-RA.patch
- extra: add resource agent for managing a node attribute
- crmd: cl#5185 - Record pending operations in the CIB before they are performed (bsc#1003565)
- ClusterMon: fix to avoid matching other process with the same PID
- mcp: improve comments for sysconfig options
- spec: require libqb >= 0.13.0
- tools: crm_standby --version/--help should work without cluster
- spec: reorganize so %pre etc. blocks are self-contained
- spec: require python >= 2.6
- spec: comment better
- libpengine: ensure child is not null before looking up value
- libpengine: only log startup-fencing warning once
- Upstream version cs: 722276c442bf023931842313bfe0dfb7d90a7c15

- pacemaker.service: do not mistakenly suggest killing fenced
- pacemaker.spec: consume "systemdunitdir" via %_unitdir
- libcrmcommon: report errors consistently when waiting for data on connection (bsc#986644)
- libservices: use DBusError API properly
- remote: Correctly calculate the remaining timeouts when receiving messages (bsc#986644)
- libfencing: report added node ID correctly
- crm_mon: Do not call setenv with null value
- pacemaker_remote: allow remote clients to timeout/reconnect

OBS-URL: https://build.opensuse.org/request/show/439181
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=255
2016-11-08 10:56:04 +00:00
d2dd863c71 Accepting request 423644 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/423644
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=103
2016-08-31 12:28:37 +00:00
e3d978ecb2 Accepting request 423643 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- cts: Restart systemd-journald with "systemctl restart systemd-journald.socket" (bsc#995365)
  * bug-995365_pacemaker-cts-restart-systemd-journald.patch

OBS-URL: https://build.opensuse.org/request/show/423643
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=253
2016-08-29 10:31:30 +00:00
24266617eb Accepting request 408673 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/408673
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=102
2016-07-21 05:53:29 +00:00
81f4e50356 Accepting request 408672 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- crmd/pengine: implement on-fail=ignore without allow-fail (bsc#981731)
- crmd/pengine: handle on-fail=ignore properly (bsc#981731)
- crmd: respect start-failure-is-fatal even for artifically injected events (bsc#981731)
- crmd: don't update fail count twice for same failure (bsc#950450, bsc#981731)
- crmd: report operation rc as advertised instead of status (bsc#981731)

OBS-URL: https://build.opensuse.org/request/show/408672
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=251
2016-07-15 10:53:47 +00:00
6cf903d8fe Accepting request 408670 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- libcrmcommon: properly handle XML comments when comparing v2 patchset diffs
- crmd: don't abort transitions for CIB comment changes
- libcrmcommon: log XML comments correctly
- libcrmcommon: remove extraneous format specifier from log message
- crm_mon: Avoid logging errors for any CIB changes that we don't care about (bsc#986931)
- crmd: When node load was reduced, crmd carries out a feasible action.
- Upstream version cs: 58fef06198fef17873d0d2e2d0cc5c7db73c5724

OBS-URL: https://build.opensuse.org/request/show/408670
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=250
2016-07-15 10:47:33 +00:00
8fe752f878 Accepting request 406455 from network:ha-clustering:Factory
- ping: Log sensible error when /tmp is full (bsc#987348)
- crm_mon: Do not log errors for the known CIB changes that should be ignored (bsc#986931)
- logging: Enable synchronous logging when blackboxes are enabled
- libpengine: print target role and blocked status in XML output
- tools: add maintenance mode and disabled/blocked resources to crm_mon XML/HTML output
- tools: break up long lines in crm_mon console output
- libservices: include socket units when listing all systemd agents
- fencing: fence_legacy - Search capable devices by querying them through "list" action for cluster-glue stonith agents (bsc#986265)
- extra: correct quoting of timestamp-format in alert-snmp-example
- pengine,tools: Display pending resource state by default when it's available (bsc#986201)
- rng: Allow rsc-pattern in locations for version 2.6
- pengine: Expand regexp references in location constraints
- pengine: Allow to set base score for progressive node health strategy
- systemd: Allow unit names ending in .socket.
- watchdog: Correction to do to change action of the system reboot by fail_fast
- Upstream version cs: 630d0d112092042b6f79c2a02bb442e82fee93ec

- Remove conditionals that are not really needed as they always kept
  the values
- Remove the cman conditional as we do not even have the dependencies
  to build with it in OBS
- Convert deps to pkgconfig style ones and remove deps that are
  not mentioned by the testsuite or the configure.ac

- Update to version 1.1.15
- crmd: mention that graceful remote shutdowns may cause connection failures (bsc#981489)
- alerts - drop 5min timeout to 30s since it is configurable now
- Bug bz#5292 - crmd: wait for alerts to finish
- libais,libcluster,libcrmcommon,liblrmd: don't use %z specifier
- alerts: ensure sample alert agents handle undefined recipient

OBS-URL: https://build.opensuse.org/request/show/406455
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=101
2016-07-12 21:44:47 +00:00
31da03a182 Accepting request 406453 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- ping: Log sensible error when /tmp is full (bsc#987348)
- crm_mon: Do not log errors for the known CIB changes that should be ignored (bsc#986931)
- logging: Enable synchronous logging when blackboxes are enabled
- libpengine: print target role and blocked status in XML output
- tools: add maintenance mode and disabled/blocked resources to crm_mon XML/HTML output
- tools: break up long lines in crm_mon console output
- libservices: include socket units when listing all systemd agents
- fencing: fence_legacy - Search capable devices by querying them through "list" action for cluster-glue stonith agents (bsc#986265)
- extra: correct quoting of timestamp-format in alert-snmp-example
- pengine,tools: Display pending resource state by default when it's available (bsc#986201)
- rng: Allow rsc-pattern in locations for version 2.6
- pengine: Expand regexp references in location constraints
- pengine: Allow to set base score for progressive node health strategy
- systemd: Allow unit names ending in .socket.
- watchdog: Correction to do to change action of the system reboot by fail_fast
- Upstream version cs: 630d0d112092042b6f79c2a02bb442e82fee93ec

- Remove conditionals that are not really needed as they always kept
  the values
- Remove the cman conditional as we do not even have the dependencies
  to build with it in OBS
- Convert deps to pkgconfig style ones and remove deps that are
  not mentioned by the testsuite or the configure.ac

- Update to version 1.1.15
- crmd: mention that graceful remote shutdowns may cause connection failures (bsc#981489)
- alerts - drop 5min timeout to 30s since it is configurable now
- Bug bz#5292 - crmd: wait for alerts to finish
- libais,libcluster,libcrmcommon,liblrmd: don't use %z specifier
- alerts: ensure sample alert agents handle undefined recipient

OBS-URL: https://build.opensuse.org/request/show/406453
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=248
2016-07-04 15:06:14 +00:00
2b3ea92213 Accepting request 401947 from home:scarabeus_iv:branches:network:ha-clustering:Factory
- Clean-up with spec-cleaner
- Drop heartbeat conditions, no heartbeat around
- Sort CMAN conditionals to be actually logical
- Run fdupes to not waste so much space
- Add logrotate to reqs of pacemaker-cli
- Cleanup rpmlintrc to contain only bare needed minimum
- Run basic sanity check in %check phase

- Drop sysvinit support we now run on sle12+ only
- Cleanup the define conditionals that are never used
- Drop profiling and coverage options it is not enabled by default
  and better to run separately

OBS-URL: https://build.opensuse.org/request/show/401947
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=247
2016-06-20 11:39:16 +00:00
1d3135f1d3 Accepting request 401722 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- libcrmcommon: really ensure crm_time_t structure is fully initialized by API calls
- extra: correct syntax error in sample alert script
- crmd: avoid timeout on older peers when cancelling a resource operation
- crmd: use proper resource agent name when caching metadata
- crmd: avoid memory leak when sending fencing alert
- liblrmd: avoid memory leak when closing or deleting lrmd connections
- extra: improve determination of successful monitors in SNMP alert script
- tools: avoid memory leak when crm_mon unpacks constraints
- pengine: avoid use-after-free with location constraint + sets + templates
- pengine: better error handling when unpacking sets in location constraints
- pengine: avoid memory leak when invalid constraint involves set
- Build: rename sample alert scripts and install them in datadir
- pengine : Correction of the record judgment of the failed information.
- Upstream version cs: dd46368eead0d756735216a4bc765466b99274fc

- alert-helpers: some fixes in pcmk_smtp_helper.sh
- libpengine: log message when stonith disabled, not enabled
- pengine: only set unfencing constraints once
- tools: don't require node to be known to crm_resource when deleting attribute
- libcrmcommon: ensure crm_time_t structure is fully initialized by API calls
- attrd: don't leak memory when returning due to malformed update request
- crmd: always free result of crm_itoa()
- xml: adapt crm_mon.rng per recent reorder of the summary elements
- Upstream version cs: 1a05449500f015414b6df68b6d4feb64b713f533

- Rebase:
  * bug-977201_pacemaker-controld-self-fencing.patch
- pengine: properly order stop actions relative to stonith
- crm_resource: don't pretend that target-role:started would prevent promotion
- crm_mon: consistently print ms resource state

OBS-URL: https://build.opensuse.org/request/show/401722
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=246
2016-06-13 15:59:58 +00:00
490785a47e Accepting request 398796 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/398796
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=100
2016-06-02 10:38:57 +00:00
76130e9731 Accepting request 398795 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- controld: Prevent unwanted self-fencing if "stateful_merge_wait" state of dlm is not available (bsc#977201)
  * bug-977201_pacemaker-controld-self-fencing.patch

- libservices: clean up non-signalfd code paths
- spec: fence_pcmk only eligible for Pacemaker+CMAN
- crmd: Acknowledge cancellation operations for remote connection resources (bsc#976865)
- controld: improve DLM check with stateful_merge_wait (bsc#977201)
- attrd, libcrmcommon: validate attrd requests better
- crmd: clear remote node transient attributes on disconnect
- Revert "Fix: attrd: Correctly implement mass removal of a node's attributes"
- crm_mon: Fix time formatting on x32
- resources: use OCF version tagging correctly
- libcommon: crm_procfs_pid_of() would always return last /proc entry checked
- crmd: correctly dig into cib-query-answer if alerts section is present timestamp-format defaults to "%H:%M:%S.%06N"
- crmd: Take start-delay into account for the timeout of the action timer (bsc#977258)
- libservices: make systemd override file world-readable to avoid log warning
- libcrmcommon: correct directory name in log message
- Log: make crmd messages more user-friendly
- Log: make messages in common quorum/fencing situations more user-friendly
- Log: make shutdown messages more user-friendly
- pengine: lf#2560/lf#2588 - Correctly set the environment variable "OCF_RESKEY_CRM_meta_timeout" when "start-delay" is configured (bsc#977258)
- Log: make operation messages more user-friendly
- Log: make startup messages more user-friendly
- services: Correctly clean up service actions for non-dbus case
- uninitialized use of nano_digits
- attrd: Update also dampens when synchronizing attributes (bsc#977846)
- Upstream version cs: 389294fd1ebefddad67fff51306f585b758ca860

OBS-URL: https://build.opensuse.org/request/show/398795
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=244
2016-05-29 21:17:56 +00:00
c914cf9975 Accepting request 393649 from home:yan_gao:branches:network:ha-clustering:Factory:Test
Revert cs_version

OBS-URL: https://build.opensuse.org/request/show/393649
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=243
2016-05-04 13:24:15 +00:00
3cc695571a Accepting request 393641 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- Rebase:
  * pacemaker-Wno-format-signedness.patch
- RA: SysInfo - Reset the node attribute "#health_disk" to "green" when there's sufficient free disk (bsc#975079)
- pengine: Organize order of actions for slave resources in anti-colocations (bsc#977800)
- attrd: Fix the synchronization of attributes (bsc#977846)
- pengine: Organize order of actions for master resources in anti-colocations (bsc#977800)
- pengine: Respect asymmetrical ordering when trying to move resources (bsc#977675)
- fencing: Record the last known names of nodes to make sure fencing requested with nodeid works (bsc#974108)
- crmd: first implementation of integrated multi-agent, multi-target alerting mechanism
- ping resource: Use fping6 for IPv6 hosts (bsc#976271)
- pengine: Consider resource failed if any of the configured monitor operations failed (bsc#972187)
- ping resource: avoid undefined func w/ OCF_FUNCTIONS=/dev/null
- spec: make Publican docs not depend on pre-existing packages
- cib/fencing: Set status callback before connecting to cluster (bsc#974108)
- xml: use spaces instead of tabs in schema files
- extra: Support of the dampen change by RA.
- Upstream version cs: 9e382568ac3cd54c222496501088ab3fc158b2e2

OBS-URL: https://build.opensuse.org/request/show/393641
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=242
2016-05-04 12:55:51 +00:00
cf6c125587 Accepting request 379413 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/379413
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=99
2016-04-07 11:27:53 +00:00
34becb93ea Accepting request 379410 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- crmd: update cluster state in CIB after fencing an unseen node
- Upstream version cs: 5a6cdd11b4f93b4d55e1b2654078018c339931d4

OBS-URL: https://build.opensuse.org/request/show/379410
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=240
2016-03-24 18:02:14 +00:00
d89652e281 Accepting request 379314 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- PE: Fix conditions for internal sanity check (bsc#971129)

OBS-URL: https://build.opensuse.org/request/show/379314
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=239
2016-03-24 15:15:24 +00:00
35efb94fdd Accepting request 379299 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- crmd: don't abort transition for expected remote node shutdown
- libtransition: potential memory leak if unpacking action fails
- Upstream version cs: 535193aa1a9a66df2fe1d86c813312b65cb3a3e4

OBS-URL: https://build.opensuse.org/request/show/379299
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=238
2016-03-24 14:33:10 +00:00
f7192a0a49 Accepting request 374163 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- attrd: crash on exit if initialization fails
- build: fix scalability regression
- attrd: Support of the dampen change by attrd.
- Upstream version cs: d076e9dbf9827f7801c89c6d635df370aeca5e90

OBS-URL: https://build.opensuse.org/request/show/374163
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=237
2016-03-17 11:12:37 +00:00
fda5ce623c Accepting request 373899 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- pengine: Suppress assert if a stateful clone is not being demoted/stopped (bsc#971129)
- attrd: If a value of dampen is a negative number, attrd outputs warn log.
- PE: Correctly handle the ordering of demote actions for failed and moving containers
- Upstream version cs: c630c537dd51ec954482b6332662d38a6fb886e8

OBS-URL: https://build.opensuse.org/request/show/373899
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=236
2016-03-16 17:09:40 +00:00
b7a8d82c2d Accepting request 368349 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- crmd,tools: Set attributes for remote nodes directly into cib if it's legacy attrd (bsc#967775)
- libcib: Correctly determine the node type (bsc#967775)
- resources: match agents' default for globally_unique to pacemaker's
- crm_mon: Help admins identify why resources are not being started or responding to commands
- PE: Memory leak
- crm_resource: Prevent segfault when --resource is not correctly supplied for --restart command
- Build: Create CRM_CORE_DIR during installation
- Upstream version cs: eb89393a82eb41ff50d041b91765ccac52e873e0

- remote: Revise a misleading message in the ocf:pacemaker:remote resource agent (bsc#946332, bsc#967383)
- remote: Correctly display the usage of the ocf:pacemaker:remote resource agent (bsc#946332, bsc#967383)
- remote: Revise a misleading message in the ocf:pacemaker:remote resource agent (bsc#946332, bsc#967383)
- remote: Correctly display the usage of the ocf:pacemaker:remote resource agent (bsc#946332, bsc#967383)
- xml: cl#5231 - Unset the deleted attributes in the resulting diffs (bsc#905641, bsc#967254)

OBS-URL: https://build.opensuse.org/request/show/368349
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=235
2016-03-08 12:51:53 +00:00
035c7cd031 Accepting request 364157 from home:yan_gao:branches:network:ha-clustering:Factory:Test
Update License in pacemaker.spec

OBS-URL: https://build.opensuse.org/request/show/364157
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=234
2016-03-02 12:14:59 +00:00
585b8113f5 Accepting request 362987 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- cpg: Ensure group name is never unset
- remote: Simplify calls to accept() and inet_ntop() by using "struct sockaddr_storage" (bsc#964183)
- remote: cl#5269 - Notify other clients of a new connection only if the handshake has completed (bsc#967388)
- remote: Correctly display the IP address of the remote client (bsc#964183)
- spec: declare also BSD license as suitable
- libservices: Add error handling for pipe() failed.
- libservices: Check resource agent is executable or not before pipe open.
- crmd: Prevent use-after-free when an unexpected remote client takes over (bsc#964183)
- pacemakerd: Correction of the stonithd process judgment of pacemakerd.
- crmd: Do not turn on stonith-watchdog-timeout automatically if SBD is detected
- remote: Correctly check for SBD configuration consistency
- resources: Fix state file metadata in Dummy, Stateful and HealthCPU resource agents
- systemd: Modified so that the cluster to stop before the rsyslog
- common: Correctly locate sbd via its pidfile
- common: Assume processes are active if we get EACCESS
- Fencing: Simplify watchdog integration
- crmd: Only poopulate stonith-watchdog-timeout if SBD is active
- remote: Ensure SBD is consistently configured on remote nodes
- remote: Allow cluster and remote LRM API versions to diverge
- cib: Do not send notifications when the dryrun flag is present
- Upstream version cs: cf67796823c4429714857411e614cfacfbc59d89

- crm_shadow: fix broken --display command
- ipc: Respect the parameter of pick_ipc_buffer() but don't let it affect the global value
- libcluster: crm_peer_uname() should return NULL if uuid is invalid
- remote: recover from remote node fencing more quickly
- crmd: update node state for migrated pacemaker_remote nodes
- crmd: update node state for stopped pacemaker_remote nodes
- crmd: update node state for started pacemaker_remote nodes
- crmd: add new message type for updating pacemaker_remote node state

OBS-URL: https://build.opensuse.org/request/show/362987
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=233
2016-02-29 14:41:59 +00:00
Stephan Kulow
89ff5d9cdc Accepting request 347443 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/347443
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=98
2015-12-13 08:36:06 +00:00
685d1cf44c Accepting request 347441 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- lrmd: Hint to child processes that using sd_notify is not required (bsc#956626)

OBS-URL: https://build.opensuse.org/request/show/347441
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=231
2015-12-04 11:59:15 +00:00
f4447a7247 Accepting request 347438 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- ping: Clarify the description of host_list parameter in ping metadata (bsc#956459)
- systemd: Prevent segfaul when logging failed operations
- systemd: The underlying systemd calls default to 90s for their timeouts
- cib: Do not terminate due to badly behaving clients
- Correctly check for recycled PIDs in crm_pid_active
- crmd: Consider only fence and shutdown transition events to be "down" events
- pengine: Support of multiple-active=block for resource groups (bsc#942491)
- crmd: use 300s timeout with notification scripts, not 300ms
- stonith_admin: add ability to target topology by pattern or attribute
- fencing,libfencing: add API support for targeting topology by pattern or attribute
- Upstream version cs: a7d6e6b56fd2779a07970df7de4e0fb0b22742d3

OBS-URL: https://build.opensuse.org/request/show/347438
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=230
2015-12-04 11:54:58 +00:00
0a5328e416 Accepting request 344882 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/344882
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=97
2015-11-17 13:21:43 +00:00
8d5fc47e48 Accepting request 344807 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- crm_report: Call "crm report" if available (bsc#950483)

OBS-URL: https://build.opensuse.org/request/show/344807
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=228
2015-11-17 11:08:54 +00:00
ae257be917 Accepting request 344024 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- fencing: crm_resource --show-metadata drops documentation strings for fencing agents (bsc#950375)
- Upstream version cs: 6f22ad7312b703289da5d24e918a78117a0825e1

- xml: Reduce severity of noisy log message (bsc#950551)

OBS-URL: https://build.opensuse.org/request/show/344024
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=227
2015-11-12 12:20:16 +00:00
58115e64c7 Accepting request 342626 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/342626
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=96
2015-11-08 13:35:35 +00:00
b380eff367 Accepting request 342624 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- CTS: add "try except" to deal with errors that raw_input gets EOFError and add "--yes" to skip interaction (bsc#953192)
- Upstream version cs: 577898dc4ac1efdb5989a996cb5f9ac60ed2eb7a

- crm_resource: Correctly clean up all children for anonymous cloned groups (bsc#950128)
- services: Directly add operations into in-flight list in the execution functions (bsc#952874)
- systemd: Return PCMK_OCF_UNKNOWN_ERROR instead of PCMK_OCF_NOT_INSTALLED for uncertain errors on LoadUnit (bsc#952884)
- systemd: Return FALSE for systemd_mask_error() if it only maps an error instead of masking one (bsc#952884)
- dbus: Correctly return the result for pcmk_dbus_find_error() no matter if there's a DBusError passed in (bsc#952884)
- services: Prevent potential use-after-free when trying to add an operation into in-flight list (bsc#952874)
- systemd: Directly return an error if the connection to System DBus is closed (bsc#952874)
- services: Correctly determine if operations are in-flight (bsc#952874)
- systemd: Reconnect to System DBus if the connection is closed (bsc#931271)
- lrmd: Finalize all pending and recurring operations when cleaning up a resource (bsc#950450)
- fencing: don't poke peers when remote node status changes
- attrd: don't try to communicate with attrd on a remote node
- libcluster,crmd: never update join info or processes for remote nodes
- cib: Increased paranoia when peer updates fail to apply in compatability mode
- crmd: do not accept remote peer data as enough for startup
- crmd: remote nodes can't be DC so never add them to stonith cleanup list
- libcluster: never autoreap from remote peer cache
- crmd: improve generation of node state
- CTS: get Reattach test working again and up-to-date (bsc#953192)
- libcommon: Ignore CDATA of metadata of the resource.
- cib: Downgrade the log message on forwarding CRM_OP_NOOP requests from INFO to DEBUG (bsc#949267)
- fencing: Return a provider for the internal fencing agent "#watchdog" instead of logging an error (bsc#949441)
  * Drop bug-949441_pacemaker-fencing-provider-internal.patch which has been merged upstream
- Upstream version cs: 7bd00f3f3010bc10d13b87e2ff501b597ea6ca03

- crmd: don't update fail count twice for same failure (bsc#950450)
- systemd: Trick systemd into not stopping our services before us during shutdown (bsc#913251)

OBS-URL: https://build.opensuse.org/request/show/342624
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=225
2015-11-06 01:36:51 +00:00
935453c363 OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=224 2015-10-19 09:41:30 +00:00
Stephan Kulow
1be95c70d5 Accepting request 337426 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/337426
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=95
2015-10-17 14:38:37 +00:00
a9896be490 - systemd: Correctly handle long running stop actions (bsc#948989)
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=221
2015-10-12 11:46:50 +00:00
5d00ae06f7 Accepting request 337268 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- fencing: Return a provider for the internal fencing agent "#watchdog" instead of logging an error (bsc#949441)
  * bug-949441_pacemaker-fencing-provider-internal.patch
- spec: Move the normal resource agents into pacemaker-cli package (bsc#947197)
- spec: Move logrotate configuration file into pacemaker-cli package (bsc#947197)
- spec: Move attrd_updater, crm_attribute and crm_master into pacemaker-cli package (bsc#947197)
- spec: Move xml schema files and PCMK-MIB.txt into pacemaker-cli package (bsc#947197)

- crm_resource: Correctly observe --force when deleting and updating attributes (bsc#948197)
- crm_resource: Correctly delete existing meta attributes regardless of their position in the heirarchy (bsc#948197)
- fencing,libfencing: use level tag consistently in internal XML
- crm_resource: Correctly update existing meta attributes regardless of their position in the heirarchy (bsc#948197)
- crmd: properly detect CIB update failures for remote nodes
- cibadmin: Prevent potential use-of-NULL in print_xml_output() (bsc#947180)
- Fencing: The device list is expected to be comma separated
- Tools: Do not send command lines to syslog
- Tools: Repair the logging of 'interesting' command-lines
- PE: resolve memory leak
- libfencing: make topology level removal compatible with latest stonithd API
- fencing: parse from correct XML location when registering/unregistering topology
- tools: improve error handling when modifying configuration
- crmd,libcrmcommon,libservices,tools: potential memory leaks (bsc#948197)
- crmd,fencing: avoid potential null dereference in string searches
- typo: OPSTIONS -> OPTIONS in crm_mon.sysconfig
- cib: Check if the configuration changes with cib_config_changed() only for v1 diffs (bsc#946224)
- liblrmd: don't print error if remote key environment variable unset
- libcib: properly handle temporary file
- libcrmcommon: better validation of environment variable value
- crmd: avoid potential null dereference
- libcib: potential user input overflow
- controld: replace bashism

OBS-URL: https://build.opensuse.org/request/show/337268
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=220
2015-10-09 11:34:40 +00:00
Stephan Kulow
109520ed5e Accepting request 331916 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/331916
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=94
2015-09-24 05:17:20 +00:00
5f75cae0be Accepting request 331915 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- remote: Revise a misleading message in the ocf:pacemaker:remote resource agent (bsc#946332)
  * bug-946332_pacemaker-resource-agent-remote-message.patch
- remote: Correctly display the usage of the ocf:pacemaker:remote resource agent (bsc#946332)
  * bug-946332_pacemaker-resource-agent-remote-usage.patch

- crm_resource: Allow the resource configuration to be modified for --force-{check,start,..} calls
- Fencing: Correctly parse 'by-attribute' fencing levels
- Fencing: Use dedicated fields for fencing level patterns and attribute matching
- pacemaker_remote: memory leak in ipc_proxy_dispatch()
- crmd: don't add node ID to proxied remote node requests for attrd
- membership: Safely autoreap nodes without code duplication
- PE: Resolve memory leak
- pacemakerd: Do not forget about nodes that leave the cluster
- corosync: Display node state and quorum data if available
- crmd: Implement reliable event notifications
- extra: Added snmp trap of type "NOTIFICATION-TYPE" to MIB and snmp helper script
- Date: Correctly set time from seconds-since-epoch
- PE: Bug cl#5247 - Imply resources running on a container are stopped when the container is stopped
- Upstream version cs: 20c2178f076ff32fdf9ba9a467c193b8dac2f9e5

- lrmd: Upgrade start/finish log tags from INFO to NOTICE (bsc#943295)
  * bug-943295_pacemaker-lrmd-log-notice.patch

OBS-URL: https://build.opensuse.org/request/show/331915
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=218
2015-09-18 11:56:45 +00:00
ce42bacbc6 Accepting request 327760 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/327760
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=93
2015-08-31 20:58:03 +00:00
51fabf70bb Accepting request 327757 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- services: Reduce severity of noisy log messages
- xml: Mark xml nodes as dirty if any children move (bsc#942382)
- pengine: The failed action of the resource that occurred in shutdown is not displayed.
- tools: memory leak in crm_resource
- crm_resource: Correctly check if a resource is unmanaged or has a target-role
- fencing: add ability to target by attribute
- crmd: Resolve memory leak in remote_proxy_cb()
- ipc: Do not constantly increase suggested size for PCMK_ipc_buffer every time we find it's insufficient (bsc#940992)
- Upstream version cs: e8888b98cd7dbdfb986c1a46bdb4b113b96e914f

OBS-URL: https://build.opensuse.org/request/show/327757
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=216
2015-08-28 14:18:30 +00:00
83a70ab48c Accepting request 323159 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/323159
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=92
2015-08-17 15:25:52 +00:00
26fa563101 Accepting request 323156 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- crm_resource: Indicate common reasons why a resource may not start after a cleanup
- pengine: Ensure fencing of the DC precedes the STONITH_DONE operation
- crm_resource: Compensate for -C and -p being called with the child resource for clones
- ipc: Fix output formats (bsc#940992)
- fencing: ensure "required"/"automatic" only apply to "on" actions
- fencing: Remove unnecessary casts (bsc#940711)
- crm_simulate: Prevent segfault on arches with 64bit time_t (bsc#940711)
- ipc: Correctly compare values for the size of ipc buffer and prevent suggesting a negative value when it's insufficient (bsc#940992)
- xml: Reduce severity of noisy log message
- crm_resource: Correctly clean up failcounts for inactive anonymous clones
- crmd: Avoid cancelling transitions when we tell nodes to shutdown
- systemd: drop legacy SysVStartPriority from service units
- crm: Set the attribute from remote node.
- Upstream version cs: 4ad07f5f464c84b80c739922bd9fd708e8d36e5a

OBS-URL: https://build.opensuse.org/request/show/323156
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=214
2015-08-14 13:48:58 +00:00
Stephan Kulow
492ccdbeb5 Accepting request 319809 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/319809
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=91
2015-08-05 04:48:54 +00:00
8ef7c96389 Accepting request 319808 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- dbus: Remove redundant ref/unref of pending call records
- stonithd: potential device list corruption
- cib: don't destroy peer cache in peer status callback
- systemd: Ensure pending structs are correctly unreferenced
- systemd: Track pending operations so they can be safely cancelled
- crmd: memory leak in CIB callbacks
- attrd: memory leak in legacy attrd's CIB callback
- attrd: memory leak in CIB callback
- libcib: allow free function for user data supplied to CIB callbacks
- xml: Prevent use-of-NULL in crm_xml_dump()
- crm_mon: Memory leaks
- Upstream version cs: 3fb7f71bf9ca2a3d6e1187fa3b74c7841d6af5a7

- pengine: properly handle blocked clone actions
- pengine: Correctly bypass fencing for resources that do not require it
- libservices: potential memory leaks when executing systemd actions
- libservices: memory leak in DBus-related log messages
- crmd: memory leaks in recurring operation history
- pengine: Addtion of the clone resource clone-min metadata option
- Upstream version cs: 3d781d3fe61504c841e3c89b2e8ccff8195d4af6

- Rebase bug-806256_pacemaker-log-level-notice.patch
- Build: Update version numbers to 1.1.13 in version.m4 and sample spec file
- fencing: Broadcast uname as soon as a peer's state has changed (bsc#938410)
- fencing: remap sequential topology reboots to all-off-then-all-on
- fencing: remap sequential topology reboots to off
- fencing: support remapping reboots when processing fencing query results
- fencing: treat remapped reboots as reboots when appropriate
- fencing: support remapping reboots in fencing query results
- crmd: check for errors when searching for CIB daemon's load file

OBS-URL: https://build.opensuse.org/request/show/319808
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=212
2015-07-31 14:02:24 +00:00
6760d382dd Accepting request 316973 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- crmd: Make resource_supports_action() really general
- crmd: Remove a duplicate invocation of snprintf()
- pengine: clear failures after reconnect_interval expires
- RA: Prevent an error message on stopping "Dummy" resource
- PE: Ignore comment blocks when unpacking the cib
- fencing: use "off" timeout when remapping "reboot" to "off"
- fencing: do not set call options twice in query
- crmd: don't synthesize op failures during shutdown
- lrmd: prevent double free after unregistering stonith device for monitoring
- libcommon: crm_ipc_get_fd() must set errno on error
- PE: Record the execution date in PE files so we can re-use it in crm_simulate
- pengine: allow guest remote nodes using containers/vms to be nested in a group resource
- pengine: Resolve memory leak in expand_notification_data()
- cib: Prevent use-after-free and return -EINVAL when attempting to delete the whole "/cib" (bsc#934609)
- cib: Prevent use-after-free when invoking "cibadmin --delete-all --xpath" (bsc#934609)
- crmd: Prevent segfault when erasing resources from disconnected remote nodes
- pengine: do not timeout remote node recurring monitor op failure until after fencing
- crmd: No need to re-process actions we've already marked as failed
- crmd: All pseduo ops must be allowed to complete
- crm_simulate: Optionally include action IDs in the dot graph
- fencing: properly decide whether a topology fencing device has been found
- fencing: properly sort peers by number of fencing devices found
- crmd: Record actions in the CIB as failed if we cannot execute them
- pengine: do not stop notify a fenced node that the rscs on the fenced node stopped
- pengine: fixes segfault in pengine when fencing remote node
- remote: do not fail operations because of a migration
- remote: handle merging duplicate recurring monitors for connection rsc
- pengine: cl#5235 - Prevent graph loops that can be introduced by "load_stopped -> migrate_to" ordering
- PE: Exclude nodes which don't match any exclusive discovery rules
- Log: improve IPC connection error messages

OBS-URL: https://build.opensuse.org/request/show/316973
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=211
2015-07-15 15:54:42 +00:00
a8270592c1 Accepting request 311419 from network:ha-clustering:Factory
1

OBS-URL: https://build.opensuse.org/request/show/311419
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=90
2015-06-11 06:21:37 +00:00
307d80523b Accepting request 311417 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- pengine: cl#5130 - Only check the capacities of the nodes that are allowed to run the resource (FATE#313105)
- cib: Correctly add "update-origin", "update-client" and "update-user" attributes for cib (bsc#931177)
- fencing : Correction of the log output of the practice node of stonith.
- Upstream version cs: a0449d443fa5c834207def5fe36a117a53c334d6

- xml: Correctly create v1 patchsets when deleting attributes (bsc#931170)
- xml: Prevent potential use-of-NULL (bsc#929960)
- Upstream version cs: 677f53216662d121a47b4c7683ec3749c614437e

- cib: No need to enforce cib digests for v2 diffs in legacy mode (bsc#929960)
- cib: Ability to upgrade cib validation schema in legacy mode (bsc#929960)
- xml: Do not dump deleted attributes (bsc#929960)
- cib: Revert d153b86 to instantly get cib synchronized in legacy mode (bsc#929960)
- cib: Enable cib legacy mode for plugin-based clusters (bsc#929960)
- Build: CRM_STATE_DIR is created dynamically when needed
- Tools: Repair expected output for ACLs
- Build: Prevent rpm packaging conflicts
- pengine: cl#5130 - Choose nodes capable of running all the colocated utilization resources (FATE#313105)
  * Drop obsolete pacemaker-colocated-utilization.patch
- Upstream version cs: 0b79da3e73fe2ced8b9602aa59d55873d857b3e7

- crmd/pengine: implement on-fail=ignore without allow-fail
- pengine: Prevent use-after-free in sort_rsc_process_order() (bsc#930368)
- crmd: Prevent the old version of DC from being fenced when it shuts down for rolling-upgrade (bsc#929955)
- xml: Fix upgrade-1.3.xsl to correctly transform ACL rules with "attribute" (bsc#929681)
- crmd/pengine: handle on-fail=ignore properly
- crmd: respect start-failure-is-fatal even for artifically injected events
- crmd: don't update fail count twice for same failure
- crmd: report operation rc as advertised instead of status
- xml: add RelaxNG schema for crm_mon XML output

OBS-URL: https://build.opensuse.org/request/show/311417
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=209
2015-06-10 09:25:55 +00:00
Stephan Kulow
20520c74e3 Accepting request 307117 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/307117
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=89
2015-05-16 05:13:19 +00:00
2ba784aaef Accepting request 305719 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- pengine: process rsc parameters during unpack (bsc#929842)
- pengine: handle setting container attribute in the correct location (bsc#929842)
- lrmd: move isolation wrappers to hidden directory (bsc#929842)
- mainloop: resolves race condition mainloop poll involving modification of ipc connections (bsc#929835)
- Upstream version cs: f47ea56b4ec23c7d8e0c129535a9b49cdbd80482

OBS-URL: https://build.opensuse.org/request/show/305719
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=207
2015-05-07 10:36:59 +00:00
e1a8517ea6 Accepting request 304816 from network:ha-clustering:Factory
- fencing: Correctly make args for fencing agents (bsc#925751)
- fence_legacy: Avoid passing 'port' to cluster-glue agents (bsc#925751)
- corosync: Bug cl#5232 - Somewhat gracefully handle nodes with invalid UUIDs
- HealthSMART: OCF_RESKEY_drives could contain multiple values
- pengine: restart master instances on instance attribute changes
- spec: move report.common and report.collector to cli package
- pengine: only kill process group on timeout when on-fail does not equal block.
- lrmd: Hint to child processes that using sd_notify is not required
- Agents: Fix the HealthSMART metadata
- make targetted reprobe for remote node work, crm_resource -C -N <remote node>
- crmd: include remote nodes when forcing cluster wide resource reprobe
- crm_mon: Support of the start from systemd of crm_mon
- Upstream version cs: 195559d47b0e9186b5d131981f6f7fee96ecad76

- fencing: cl#5134 - Support random fencing delay to avoid double fencing (FATE#317136, FATE#318381)

OBS-URL: https://build.opensuse.org/request/show/304816
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=88
2015-05-02 15:40:45 +00:00
1aeebe5971 spec: move report.common and report.collector to cli package
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=205
2015-04-30 11:59:33 +00:00
78f1c51d27 Accepting request 304812 from home:yan_gao:branches:network:ha-clustering:Factory:Test
- fencing: Correctly make args for fencing agents (bsc#925751)
- fence_legacy: Avoid passing 'port' to cluster-glue agents (bsc#925751)
- corosync: Bug cl#5232 - Somewhat gracefully handle nodes with invalid UUIDs
- HealthSMART: OCF_RESKEY_drives could contain multiple values
- pengine: restart master instances on instance attribute changes
- spec: move report.common and report.collector to cli package
- pengine: only kill process group on timeout when on-fail does not equal block.
- lrmd: Hint to child processes that using sd_notify is not required
- Agents: Fix the HealthSMART metadata
- make targetted reprobe for remote node work, crm_resource -C -N <remote node>
- crmd: include remote nodes when forcing cluster wide resource reprobe
- crm_mon: Support of the start from systemd of crm_mon
- Upstream version cs: 195559d47b0e9186b5d131981f6f7fee96ecad76

OBS-URL: https://build.opensuse.org/request/show/304812
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=204
2015-04-30 11:41:46 +00:00
73bb4532d0 - fencing: cl#5134 - Support random fencing delay to avoid double fencing (FATE#317136, FATE#318381)
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=203
2015-04-22 11:33:46 +00:00
15499fc011 Accepting request 298166 from network:ha-clustering:Factory
- Rebase:
  * pacemaker-NodeUtilization-RA.patch
- docker-wrapper: per resource logging of lrmd and remote client tool
- pengine: Avoid trailing whitespaces when printing resource state
- pengine: cl#5207 - Display "UNCLEAN" for resources running on unclean offline nodes
- docker-wrapper: add reuse option for presistent containers
- docker-wrapper: only override exit reason if docker daemon is inactive
- pengine: handle isolated resource scenario, cloned group of isolated resources
- pengine: handle cloned isolated resources in a sane way
- crm_report: More patterns for finding logs on non-DC nodes
- lrmd: Use original timestamps when reporting multi-step systemd operations
- lrmd: report original timeout when systemd operation completes
- systemd: improve unit files
- PE: Turn off legacy unpacking of resource options into the meta hashtable
- acl: Do not delay evaluation of added nodes in some situations (bsc#927828: CVE-2015-1867)
- docker-wrapper: add demote, promote, and notify actions for multistate rsc
- docker-wrapper: properly forward key value pairs during isolation
- attrd: fixes double free in attrd legacy
- lrmd: do not let isolation wrappers inherit the wrapper attribute, or it makes a loop
- pengine: pass node name of pcmk host into isolated resources
- lrmd: isolation wrappers are moved from containers to isolation OCF namepace
- pengine: Fix colocation with unmanaged resources
- stonith-ng: Correctly track node state
- stonith-ng: No reply is needed for CRM_OP_RM_NODE_CACHE
- crm_resource: Fix output format of the warning from --force-start
- crm_resource: Display the locations of all anonymous clone children when supplying the children's common ID (bsc#870339)
- cib: Correctly track node state
- Upstream version cs: 7a2e3ae6b736621933b24f4cdc9ea260021d878d

OBS-URL: https://build.opensuse.org/request/show/298166
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=87
2015-04-21 23:17:06 +00:00
2681720169 - acl: Do not delay evaluation of added nodes in some situations (bsc#927828: CVE-2015-1867)
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=201
2015-04-20 11:47:35 +00:00
af774e777a - docker-wrapper: per resource logging of lrmd and remote client tool
- pengine: Avoid trailing whitespaces when printing resource state
- pengine: cl#5207 - Display "UNCLEAN" for resources running on unclean offline nodes
- docker-wrapper: add reuse option for presistent containers
- Upstream version cs: 7a2e3ae6b736621933b24f4cdc9ea260021d878d

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=200
2015-04-13 09:00:29 +00:00
14fcf447e7 - docker-wrapper: only override exit reason if docker daemon is inactive
- pengine: handle isolated resource scenario, cloned group of isolated resources
- pengine: handle cloned isolated resources in a sane way
- Upstream version cs: 3263963bf0f5ef2ecc88e7806a59af09e017de28

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=199
2015-04-10 17:33:56 +00:00
94be1aa964 - crm_report: More patterns for finding logs on non-DC nodes
- lrmd: Use original timestamps when reporting multi-step systemd operations
- lrmd: report original timeout when systemd operation completes
- systemd: improve unit files
- Upstream version cs: 3cf5ba7c407a460f1fd9baed13c94a8a24f4d34b

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=198
2015-04-10 12:51:42 +00:00
d8538b0b14 - Rebase:
* pacemaker-NodeUtilization-RA.patch

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=197
2015-04-09 13:18:46 +00:00
6bef176308 - PE: Turn off legacy unpacking of resource options into the meta hashtable
- acl: Do not delay evaluation of added nodes in some situations
- docker-wrapper: add demote, promote, and notify actions for multistate rsc
- docker-wrapper: properly forward key value pairs during isolation
- attrd: fixes double free in attrd legacy
- lrmd: do not let isolation wrappers inherit the wrapper attribute, or it makes a loop
- pengine: pass node name of pcmk host into isolated resources
- lrmd: isolation wrappers are moved from containers to isolation OCF namepace
- pengine: Fix colocation with unmanaged resources
- stonith-ng: Correctly track node state
- stonith-ng: No reply is needed for CRM_OP_RM_NODE_CACHE
- crm_resource: Fix output format of the warning from --force-start
- crm_resource: Display the locations of all anonymous clone children when supplying the children's common ID (bsc#870339)
- cib: Correctly track node state
- Upstream version cs: 35e2d8ff0672b61a3aaba3c9bfb74d08875efb46

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=196
2015-04-09 12:31:30 +00:00
8faefc2bb1 Accepting request 294323 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/294323
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=86
2015-04-05 22:26:07 +00:00
9180cec92b Add /usr/lib/ocf/resource.d/containers into pacemaker.spec
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=194
2015-03-27 15:32:29 +00:00
b3fe1fb47a - Rebase:
* bug-806256_pacemaker-log-level-notice.patch
  * pacemaker-NodeUtilization-RA.patch
  * pacemaker-colocated-utilization.patch
- crmd: All peers need to track node shutdown requests (bsc#917625)
- crmd: Cached copies of transient attributes cease to be valid once a node leaves the membership (bsc#917625)
- crmd: Wait for all pending operations to complete before poking the policy engine
- lrmd: preserve exit reason string when isolation wrappers are in use
- docker-wrapper: properly separate docker and resource specific attributes
- docker-wrapper: set authkey file permissions and properly set container 'node name' during start
- systemd: Trick systemd into not stopping our services before us during shutdown
- mcp: Allow a configurable delay when debugging shutdown issues
- systemd: Kindly ask dbus NOT to kill the process if the dbus connection fails
- systemd: Tell systemd not to take DBus down from underneath us
- cib: Correctly set up signal handlers
- PE: Do not record duplicate copies of the failed actions
- lrmd: enable ipc proxy for docker-wrapper privileged mode
- lrmd: properly handle poke requests in lrmd client when using ipc
- spec: add docker-wrapper directory to spec file
- pengine: disable migrations for resources with isolation containers
- pengine: disable reloading of resources within isolated container wrappers
- pengine: ability to launch resources in isolated containers
- extra: docker container tech wrapper script for pcmk remote
- tools: crm_mon prints Stopped clones only if --inactive was specified
- tools: display node names more consistently in crm_mon output
- tools: Improve crm_mon output with certain option combinations
- tools: make crm_mon last updated header consistent across formats
- remote: pcmk remote client tool for use with container wrapper script
- crmd: Reset stonith failcount to recover transitioner when the node rejoins (bsc#921102)
- systemd: fix crash caused when canceling in-flight operation

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=193
2015-03-27 15:20:34 +00:00
d29887dfb2 Accepting request 291855 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/291855
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=85
2015-03-25 20:02:47 +00:00
74d6f31be3 - Upstream version cs: e32080b460f81486b85d08ec958582b3e72d858c
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=191
2015-03-13 09:50:23 +00:00
a4fa041993 - PE: Support non-actionable degraded mode for OCF
- lrmd, services: interpret LSB status codes properly

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=190
2015-03-13 09:40:09 +00:00
78ef010d5d - tools: add crm_resource --wait option
- tools: attrd_updater supports --query and --all options
- attrd: attrd supports queries
- pengine: remove unnecessary whitespace from notify environment variables
- Upstream version cs: ce0980220db05ac70f31cad9e265f356d564c4d6

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=189
2015-03-12 11:04:03 +00:00
fe78d39e9a - tools: free allocated memory correctly in crm_resource
- attrd: properly write attributes for peers once uuid is discovered
- cib: assignment where comparison intended
- attrd: only send ack for recognized operations
- attrd: make each client operation handler its own function
- tools: attrd_updater supports private attributes
- attrd supports private attributes (not written to CIB)
- pengine: Reschedule specific monitors when resource definitions have changed (bsc#914761)
- pengine: Resolve memory leaks (bsc#914761)
- Upstream version cs: 622f276c9b773b6fa05a30cb35f8688356dded19

- properly record stop args after reload
- pengine: Do not reschedule monitors that are no longer needed while resource definitions have changed (bsc#914761)
- Build: Fix building when heartbeat support is disabled
- fencing: cl#5134 - Support random fencing delay to avoid double fencing (FATE#317136)
- extra: Use crm_simulate for the showscores script
- attrd: refresh should force an immediate write-out of all attributes
- service: Leave synchronous calls to be free'd by the caller
- service: Additional pointer safety
- crmd: Add "on_node" attribute for *_last_failure_0 lrm resource operations (bsc#918839)
- crm_mon: Fill CRM_notify_node in traps with node's uname rather than node's id if possible (bsc#918839)
- pengine: ensure if B is colocated with A, B can never run without A
- cib: automatically update .sig files in file backends when clients update live CIB
- cib: file-based backends now detect whether file is live CIB
- lrmd: add back support for class heartbeat agents
- lrmd: provide fake meta data for ra class heartbeat
- crm_resource: Use-after-free when restarting a resource
- cli: Ensure subsequent unknown long options are correctly detected
- crmd: Bug rhbz#1181824 - Ensure the DC can be reliably fenced
- attrd_updater: Allow attributes to be set for other nodes

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=188
2015-03-09 15:48:31 +00:00
96d6b90bd8 Accepting request 288670 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/288670
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=84
2015-03-09 08:59:51 +00:00
fa8c282729 Accepting request 287506 from home:rguenther:branches:network:ha-clustering:Factory
- Add pacemaker-Wno-format-signedness.patch to disable
  -Wformat-signedness added by GCC 5 and enabled by -Wformat=2

OBS-URL: https://build.opensuse.org/request/show/287506
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=186
2015-02-24 12:54:28 +00:00
d805f626bd Accepting request 284462 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/284462
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=83
2015-02-11 15:31:01 +00:00
17decdc000 - pengine: Handle ordering between stateful and migratable resources (bsc#881160)
- crmd: Check "watchdog" daemon option before setting "have-watchdog" property
- crmd: Correctly add the local option that validates against schema for pengine to calculate
- Upstream version cs: 3021d731fdeba29e1136c117a62f3201785be6ea

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=184
2015-01-30 10:47:13 +00:00
dd59593339 Accepting request 282552 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/282552
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=82
2015-01-25 20:14:20 +00:00
0a5689f43a - crm_standby: update accepted options to match documentation
- cts: Fix bashisms in LSBDummy script
- Upstream version cs: 03ec61210c82471161f6cf3366e8afc30d737d67

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=182
2015-01-16 12:47:45 +00:00
f12c2c9cd9 - pengine: fixes pengine crash with orphaned remote node connection resource
- Upstream version cs: 70f472e1c08e3d977de39cf75b47b04d541eaab2

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=181
2015-01-15 17:33:59 +00:00
1d4a4ed4de - PE: Do not aggregate children in a pending state into the started/stopped/etc lists
- acl: Correctly implement the 'reference' acl directive
- Upstream version cs: c529898ac8a580ff32869fd9e715d7c086ba2a10

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=180
2015-01-15 13:46:04 +00:00
b7b89fd033 - pengine: imply stop in container node resources when host node is fenced
- Build: Fix building if ncurses doesn't provide pkg-config files
- xml: Do not change the ordering of properties when applying v1 cib diffs
- xml: Do not prune leaves from v1 cib diffs that are being created with digests
- Upstream version cs: 4109f1539a625bfa3e884d19ab2fc42d7a4daec4

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=179
2015-01-12 11:07:01 +00:00
f7fd1260f0 - xml: add 'require-all' to xml schema for constraints
- pengine: require-all feature for ordered clones
- xml: Ensure ACLs are reapplied before calculating what a replace operation changed
- cib: Ensure file-based backends treat '-o section' consistently with the native backend
- crmd: resolves memory leak in crmd.
- pacemakerd: resolves memory leak of xml structure in pacemakerd
- ipc: use server enforced buffer during ipc client send
- pengine: do not recording pending migrate_to ops for pacemaker remote
- crmd: never stop recurring monitor ops for pcmk remote during incomplete migration
- pengine: prefer migration target for remote node connections
- pengine: properly handle ordering during remote connection partial migration
- crmd: Ensure remote connection resources timeout properly during 'migrate_from' action
- crmd: gracefully handle remote node disconnects during op execution
- pengine: Fence baremetal remote when recurring monitor op fails
- crmd: Handle remote connection failures while executing ops on remote connection
- remote: Treat recv msg timeout as a disconnect
- pengine: properly recover remote-nodes when cluster-node proxy goes offline
- systemd: Correctly handle long running stop actions
- crm_resource: Include group members when calculating the next timeout
- crm_resource: Ensure --restart sets/clears meta attributes
- crm_resource: Clean up memory in --restart error paths
- Build: Use a wrapper for realloc() which calls abort when we run out of memory
- services: Prevent potential use-of-NULL
- crm_resource: Memory leak in error paths
- crmd: Mistake of the set of the variable.
- Upstream version cs: d0139e9a00c32b9bc1d7d206d6210126045b49be

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=178
2015-01-09 12:50:35 +00:00
f22e8aead1 Accepting request 266295 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/266295
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=81
2014-12-25 22:21:35 +00:00
df0af128e3 - crm_mon: Repair notification delivery when the v2 patch format is in use (bsc#909286)
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=176
2014-12-17 11:04:24 +00:00
91e2bf69df Accepting request 262602 from network:ha-clustering:Factory
- crm_node: Correctly remove nodes from the CIB by nodeid
- fencing: Allow nodes to be purged from the member cache
- xml: cl#5231 - Unset the deleted attributes in the resulting diffs (bsc#905641)
- fencing: stonith -l option for custom log
- cib: Avoid nodeid conflicts we don't care about
- Membership: Detect and resolve nodes that change their ID
- attrd: Simplify how node deletions happen
- attrd: Clean out the node cache when requested by the admin
- crm_resource: Allow resource restart operations to be node specific
- crm_resource: Implement --timeout for resource restart operations
- crm_resource: Calculate how long to wait for a restart based on the resource timeouts
- crm_resource: Implement an intelligent restart capability
- crm_failcount: Better error reporting when no resource is specified
- cib: tls sock cleanup for remote cib connections
- Upstream version cs: 7dd90226e10035340d6707d9fd2b04f2e0141194

- pengine: make resource-discovery work with location rules
- services: Conditionally clean up services actions
- Upstream version cs: 5093c095c5f517ab58375b2b69ecfc5516c86b5b

- Drop conditional BuildRequires of system-devel: it was required
  one line lower unconditionally.
- Replace remaining systemd-devel BuildRequires with
  pkgconfig(systemd).

- pengine: exclusive discovery implies rsc is only allowed on exclusive subset of nodes
- dbus: handle dispatch queue when multiple replies need to be processed
- dbus ref count leaks
- dbus: Ensure both the read and write queues get dispatched
- systemd: Ensure failed monitor operations always return

OBS-URL: https://build.opensuse.org/request/show/262602
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=80
2014-11-24 10:15:50 +00:00
88cda57763 - crm_node: Correctly remove nodes from the CIB by nodeid
- fencing: Allow nodes to be purged from the member cache
- xml: cl#5231 - Unset the deleted attributes in the resulting diffs (bsc#905641)
- fencing: stonith -l option for custom log
- cib: Avoid nodeid conflicts we don't care about
- Membership: Detect and resolve nodes that change their ID
- attrd: Simplify how node deletions happen
- attrd: Clean out the node cache when requested by the admin
- crm_resource: Allow resource restart operations to be node specific
- crm_resource: Implement --timeout for resource restart operations
- crm_resource: Calculate how long to wait for a restart based on the resource timeouts
- crm_resource: Implement an intelligent restart capability
- crm_failcount: Better error reporting when no resource is specified
- cib: tls sock cleanup for remote cib connections
- Upstream version cs: 7dd90226e10035340d6707d9fd2b04f2e0141194

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=174
2014-11-21 15:41:23 +00:00
1c4e80cbd8 - use _rundir macro
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=173
2014-11-14 10:16:16 +00:00
a6e7ebbcbd - pengine: make resource-discovery work with location rules
- services: Conditionally clean up services actions
- Upstream version cs: 5093c095c5f517ab58375b2b69ecfc5516c86b5b

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=172
2014-11-14 09:45:34 +00:00
120c1f3f7f Accepting request 261539 from home:dimstar:branches:network:ha-clustering:Factory
- Drop conditional BuildRequires of system-devel: it was required
  one line lower unconditionally.
- Replace remaining systemd-devel BuildRequires with
  pkgconfig(systemd).

OBS-URL: https://build.opensuse.org/request/show/261539
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=171
2014-11-14 09:26:59 +00:00
5cf884ed27 - pengine: exclusive discovery implies rsc is only allowed on exclusive subset of nodes
- dbus: handle dispatch queue when multiple replies need to be processed
- dbus ref count leaks
- dbus: Ensure both the read and write queues get dispatched
- systemd: Ensure failed monitor operations always return
- Perform systemd reloads asynchronously
- Upstream version cs: cd7c9abbcfc620aa84194ee07aade142240db15a

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=170
2014-11-10 11:40:32 +00:00
Stephan Kulow
4444ab6932 Accepting request 259663 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/259663
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=79
2014-11-07 08:05:53 +00:00
3b54dc51be - watchdog: Allow startup without sbd
- service: Prevent potential use-of-NULL in metadata lookups
- dbus: Fail gracefully if malloc fails
- crmd: Prevent use-of-NULL during reprobe
- crmd: Correctly obtain SBD_WATCHDOG_TIMEOUT from the environment
- pengine: add #kind=remote for baremetal remote-nodes
- Officially support the resource-discovery attribute for location constraints
- xml: fix xml.c memleak in "missing upgrade XSLT" case
- Prefer to inherit the  watchdog timeout from SBD
- stonith-ng: Correctly observe the watchdog completion timeout
- sbd: Attempt to locate sbd via its pid file
- Fencing: If configured, wait stonith-watchdog-timer seconds for self-fencing to complete
- Resolve some potential issues spotted by clang and coverity
- PE: Watchdog integration is sufficient for fencing
- Fencing: Correctly wait for self-fencing to occur when the watchdog is in use
- Fencing: Ensure the hostlist parameter is set for watchdog agents
- crm_resource: Allow -M location to be reinforced with -f even if rsc is already on node
- mcp: Turn on sbd integration if pacemakerd finds it running
- pengine: Fix the behaviors of multi-state resources with asymmetrical ordering (bsc#899403)
- lrmd: Prevent glib assert triggered by timers being removed from mainloop more than once
- cib: Improved tracing of callbacks
- Upstream version cs: a9c81774b89f21f990be255f9862446d1a38afee
- Fencing: Allow the cluster to recover resources if the watchdog is in use
- crmd: If configured, trigger the watchdog immediately if we loose quorum and no-quorum-policy=suicide
- crmd: Ensure a watchdog device is in use if stonith-watchdog-timeout is configured
- Fencing: Advertise the watchdog device for fencing operations

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=168
2014-10-28 14:37:01 +00:00
Stephan Kulow
cf33a157e1 Accepting request 257778 from network:ha-clustering:Factory
- remote: advertise default port correctly, further adjust default timeout periods
- remote: report timestamps for remote connection resource operations
- pengine: allow remote-nodes to be placed in maintenance mode
- xml: Prevent assert errors in crm_element_value() on applying a patch without version information (bsc#900296)
- pengine: prevent disabling rsc discovery per node in certain situations
- crm_resource: avoid deletion of lrm cache on node with resource discovery disabled.
- pengine: per-node control over resource discovery
- mainloop: fix potential segfault for fd = 0
- ping: Correct metadata for attempts parameter (bsc#899324)
- ping: Pass extra options to fping (bsc#899324)
- ping: Remove incorrectly advertised migrate_to|migrate_from (bsc#899324)
- ping: Add use_fping parameter (bsc#899324)
- ping: Correctly advertise multiplier default (bsc#899324)
- pengine: resource discovery mode for location constraints
- cib: Ensure upgrade operations from a non-DC get an acknowledgement
- lrmd: cancel pending async connection during disconnect
- systemd: Ensure we don't call dbus_message_unref() with NULL
- systemd: Perform monitor operations without blocking
- dbus: Notice when dbus connections get disabled
- pengine: allow baremetal remote-nodes to recover without requiring fencing when cluster-node fails
- crmd: do not remove connection resources during re-probe
- pengine: only fence baremetal remote when connection can fails or can not be recovered
- ipc: properly allocate server enforced buffer size on client
- remote: advertise more reasonable timeout periods for remote-nodes connections
- crmd: properly update job limit for baremetal remote-nodes
- crmd: Remote-node throttle jobs count towards cluster-node hosting conneciton rsc
- crmd: Ensure throttle_mode() does something on Linux
- systemd: Perform actions asynchronously
- crm_attribute: Correctly update config options when -o crm_config is specified
- crmd: Fixes crash when remote connection migration fails

OBS-URL: https://build.opensuse.org/request/show/257778
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=78
2014-10-25 06:32:38 +00:00
b2b31ab911 - Rebase bug-806256_pacemaker-log-level-notice.patch
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=166
2014-10-20 14:38:48 +00:00
2753efdd99 - Bug cl#5219 - PE: Allow unrelated resources with a common colocation target to remain promoted (bnc#899175)
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=165
2014-10-17 15:43:18 +00:00
6e3bbfd704 - remote: advertise default port correctly, further adjust default timeout periods
- remote: report timestamps for remote connection resource operations
- pengine: allow remote-nodes to be placed in maintenance mode
- xml: Prevent assert errors in crm_element_value() on applying a patch without version information (bsc#900296)
- pengine: prevent disabling rsc discovery per node in certain situations
- crm_resource: avoid deletion of lrm cache on node with resource discovery disabled.
- pengine: per-node control over resource discovery
- mainloop: fix potential segfault for fd = 0
- ping: Correct metadata for attempts parameter (bsc#899324)
- ping: Pass extra options to fping (bsc#899324)
- ping: Remove incorrectly advertised migrate_to|migrate_from (bsc#899324)
- ping: Add use_fping parameter (bsc#899324)
- ping: Correctly advertise multiplier default (bsc#899324)
- pengine: resource discovery mode for location constraints
- cib: Ensure upgrade operations from a non-DC get an acknowledgement
- lrmd: cancel pending async connection during disconnect
- systemd: Ensure we don't call dbus_message_unref() with NULL
- systemd: Perform monitor operations without blocking
- dbus: Notice when dbus connections get disabled
- pengine: allow baremetal remote-nodes to recover without requiring fencing when cluster-node fails
- crmd: do not remove connection resources during re-probe
- pengine: only fence baremetal remote when connection can fails or can not be recovered
- ipc: properly allocate server enforced buffer size on client
- remote: advertise more reasonable timeout periods for remote-nodes connections
- crmd: properly update job limit for baremetal remote-nodes
- crmd: Remote-node throttle jobs count towards cluster-node hosting conneciton rsc
- crmd: Ensure throttle_mode() does something on Linux
- systemd: Perform actions asynchronously
- crm_attribute: Correctly update config options when -o crm_config is specified
- crmd: Fixes crash when remote connection migration fails

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=164
2014-10-17 13:03:04 +00:00
Stephan Kulow
0a176db8fc Accepting request 248830 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/248830
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=77
2014-09-15 15:40:39 +00:00
1121ca4657 - cluster: Invoke crm_remove_conflicting_peer() only when the new node's uname is being assigned in the node cache (bnc#870771)
- mcp: set environment variable which the cluster-glue module needs
- services: Refector services os execute function
- Upstream version cs: 266d5c2484716111616bcd0f32d9b94bc49baa77

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=162
2014-09-05 07:37:24 +00:00
Stephan Kulow
0574628ec6 Accepting request 246201 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/246201
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=76
2014-08-30 14:03:40 +00:00
29b8fc441b - logging: correctly initialized default log file (bnc#883567)
- Upstream version cs: 362f181a387e0a0a9f04e0da84d6c5906d71dd20
- services: Remove cancelled recurring ops from internal lists as early as possible (bnc#888586)
- services: Remove file descriptors from mainloop as soon as we have drained them (bnc#888586)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=160
2014-08-27 11:31:22 +00:00
969abc3b95 - crm_resource: Print a clear message if the attribute is not found for the resource (bnc#890400)
- lrmd: fix rescheduling of systemd monitor op during start
- services: restore SIGPIPE default behavior for child processes
- lrmd: prevent \n from being printed in exit reason output
- lrmd: pass exit reason prefix to ocf scripts as env variable
- Upstream version cs: dad4cebccdb5a4bcdb8fb94e676f6df006ac0846

- crm_diff: Support generating a difference without versions details if --no-version/-u is supplied (bnc#888726)
- crmd: When container's host is fenced, cancel in-flight operations
- crm_mon: add exit reason to resource failure output
- lrmd: store failed operation exit reason in cib
- Upstream version cs: 1040002ecc1a0dfec9f0561f79936cbe64d716db

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=159
2014-08-18 08:57:27 +00:00
Stephan Kulow
fb6a05d2a6 Accepting request 243558 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/243558
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=74
2014-08-06 09:42:07 +00:00
164af43138 - Bug rhbz#1067544 - Tools: Correctly handle --ban, --move and --locate for master/slave groups
- lrmd: Log with the correct personality
- mainloop: implement gio_poll_dispatch_mod
- Upstream version cs: 483f48a1921241f1f5976a100a171785dc327192

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=157
2014-07-28 06:24:15 +00:00
Stephan Kulow
0407941a88 Accepting request 241813 from network:ha-clustering:Factory
- Update to version 1.1.12
- Log: Turn off the default log file if a real one is specified
- Log: Do not unconditionally send crm_perror output to stderr
- Log: allows the user to specify a log level that is output to syslog
- Upstream version cs: 561c4cfda1b09b31b60fd5f73644ee05348f41fb (1.1.12)

- logrotate: maxsize is not supported by older versions (bnc#883567)
- Tools: Non-daemons shouldn't abort just because xml parsing failed
- Log: Default to emitting CRIT messages only until logging is fully configured
- Logging: Bootstrap daemon logging before processing arguments but configure it afterwards (bnc#883567)
- dbus: Return 'null' if we cannot connect via dbus
- Upstream version cs: 026944ebfad7c4b2da5a6864a9d763bf37e0e088

- systemd: Ensure the retry logic is also exercised for the 'service' class
- crm_simulate: Remove resource states and transient attributes when a node is marked as down
- crm_verify: Perform a full set of calculations whenever the status section is present (bnc#886479)
- PE: Correctly warn when resources require fencing but fencing is disabled (bnc#886479)
- PE: Always use pe_fence_node to mark nodes as unclean
- lrmd: Handle systemd reporting 'done' before a resource is actually stopped
- Upstream version cs: c468fa06483152c29529f81aa0b5ccf37da8b2af

OBS-URL: https://build.opensuse.org/request/show/241813
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=73
2014-07-24 04:58:32 +00:00
395ed573ab Remove "BuildRequires: byacc"
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=155
2014-07-22 06:50:08 +00:00
dd952c3194 - Upstream version cs: 561c4cfda1b09b31b60fd5f73644ee05348f41fb (1.1.12)
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=154
2014-07-22 05:13:13 +00:00
175b155e86 - Update to version 1.1.12
- Log: Turn off the default log file if a real one is specified
- Log: Do not unconditionally send crm_perror output to stderr
- Log: allows the user to specify a log level that is output to syslog
- Upstream version cs: 93a037d25fcd2edfebe7c59ff15378f2055d2c61 (1.1.12)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=153
2014-07-21 11:10:10 +00:00
264e9eb7f0 - logrotate: maxsize is not supported by older versions (bnc#883567)
- Tools: Non-daemons shouldn't abort just because xml parsing failed
- Log: Default to emitting CRIT messages only until logging is fully configured
- Logging: Bootstrap daemon logging before processing arguments but configure it afterwards (bnc#883567)
- dbus: Return 'null' if we cannot connect via dbus
- Upstream version cs: 026944ebfad7c4b2da5a6864a9d763bf37e0e088

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=152
2014-07-17 06:21:41 +00:00
Stephan Kulow
0b2bf05e93 Accepting request 240143 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/240143
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=72
2014-07-13 12:06:02 +00:00
bce0e87129 - systemd: Ensure the retry logic is also exercised for the 'service' class
- crm_simulate: Remove resource states and transient attributes when a node is marked as down
- crm_verify: Perform a full set of calculations whenever the status section is present (bnc#886479)
- PE: Correctly warn when resources require fencing but fencing is disabled (bnc#886479)
- PE: Always use pe_fence_node to mark nodes as unclean
- lrmd: Handle systemd reporting 'done' before a resource is actually stopped
- Upstream version cs: c468fa06483152c29529f81aa0b5ccf37da8b2af

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=150
2014-07-10 10:06:42 +00:00
124b9b010f - attrd: Remove offline nodes from node cache for "peer-remove" requests (bnc#870771)
- membership: Prevent use-after-free in reap_crm_member() (bnc#870771)
- cluster: Remove unknown offline nodes with conflicting unames from node cache (bnc#870771)
- crmd: Remove state of unknown nodes with conflicting unames from CIB (bnc#870771)
- Upstream version cs: 440da7f59ac4bed16a0289e33f04d2635b335c70

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=149
2014-07-03 05:47:01 +00:00
540319756f Add /etc/logrotate.d/pacemaker into spec file
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=148
2014-07-01 08:18:09 +00:00
3ca720e8ab - Fix: ignore SIGPIPE with gnutls is in use
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=147
2014-07-01 08:10:40 +00:00
14f92a2c19 - extra: Add logrotate configuration file for /var/log/pacemaker.log (bnc#883567)
- PE: Correctly detect empty tags
- xml: Ensure realloc didn't fail
- crmd: Only write fence_averride if open() returns a positive file descriptor
- tools: Non-recurring memory leak
- PE: Potential use-of-NULL
- ipc: Buffer size cannot be negative
- xml: Prevent possible array underflow
- mcp: Let daemons know when they have been respawned by the mcp
- cts: fix RemoteBaremetal step2 move resource action failed issue
- PE: Correctly observe requires=nothing
- crmd: Remove unknown nodes with conflicting unames from CIB (bnc#883240)
- controld: Return OCF_ERR_INSTALLED instead of OCF_NOT_INSTALLED (bnc#883729)
- lrmd: Prevent OCF agents from logging to random files due to "value" of setenv() being NULL (bnc#883524)
- cts: fix shutdown pattern not found issue
- ignore SIGPIPE with gnutls is in use
- crmd: avoid double free caused by nested hash table removal
- crm_report: Correctly detect large files
- cib: cl#5222 - Prevent assert in xml_calculate_changes() on performing cib operations (bnc#881575)
- Upstream version cs: c3f1a7f8912f3d6d17497dd8af0b69fe0708b2b1

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=146
2014-07-01 08:07:09 +00:00
Stephan Kulow
1ee19e1560 Accepting request 238110 from network:ha-clustering:Factory
- Bug cl#5219 - PE: Allow unrelated resources with a common colocation target to remain promoted
- Bug cl#5222 - Enable legacy mode whenever a broadcast update is detected (bnc#881575)
- xml: Prevent incorrect xml diffs from corrupting the cib (bnc#878362)
- mainloop: implement gio_poll_dispatch_mod
- cluster: Prevent search of unames from attempting to create node entries for unknown nodes (bnc#881884)
- Upstream version cs: 97629ded958f76652350569a54303b3cd25d1d7e

- crm_report: Gracefully handle rediculously large logfiles
- Bug cl#5222 - cib: Repair rolling update capability (bnc#881575)
- cib: Use a better option name for enabling the legacy cib diff code (cl#5222, bnc#881575)
- remote: clear remote-node status correctly
- pengine: properly handle fencing of container remote-nodes when the container is orphaned
- remote: Handle request/response ipc proxy correctly
- cib: Prevent assert on sending cib sync requests (cl#5222, bnc#881575)
- crm_simulate: Clean up temporary shadow files on exit (bnc#879934)
- pengine: cl#5200 - Before migrating utilization-using resources to a node, take off the load that will no longer run there if it's not introducing transition loop
  (Rework cl#5044, lf#2599, bnc#695440)
- Fencing: Cache metadata lookups to avoid repeated blocking during device registration
- pengine: properly place resource within a container when container is a remote-node.
- mainloop: Better handle the killing of processes in the act of exiting
- services: Remove cancelled recurring ops from internal lists as early as possible
- services: Remove file descriptors from mainloop as soon as we have drained them
- pengine: Don't report a resource as restarting when it is a moving multistate resource
- pengine: avoid assert by searching for stop action on correct node during LogActions
- Upstream version cs: 734e6b538b0a037f9e7d0709f450bd664f26c332

- cib: Drop the message serverity now that the cause is well understood
- crmd: Avoid spamming the cib by triggering a transition only once per non-status change
- Upstream version cs: 559f733e8818a96085134cd2a34efc280c512a2a

OBS-URL: https://build.opensuse.org/request/show/238110
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=71
2014-06-25 04:57:37 +00:00
56d2274c38 - Bug cl#5219 - PE: Allow unrelated resources with a common colocation target to remain promoted
- Upstream version cs: 97629ded958f76652350569a54303b3cd25d1d7e

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=144
2014-06-13 09:01:28 +00:00
4272ebfdf1 - Bug cl#5222 - Enable legacy mode whenever a broadcast update is detected (bnc#881575)
- xml: Prevent incorrect xml diffs from corrupting the cib (bnc#878362)
- mainloop: implement gio_poll_dispatch_mod
- cluster: Prevent search of unames from attempting to create node entries for unknown nodes (bnc#881884)
- Upstream version cs: 4f00ccce11db182afa88c90ddfe444f319ccfe3a

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=143
2014-06-13 03:22:12 +00:00
a412f758c5 - crm_report: Gracefully handle rediculously large logfiles
- Upstream version cs: 734e6b538b0a037f9e7d0709f450bd664f26c332

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=142
2014-06-11 05:50:48 +00:00
feef33b48b - Bug cl#5222 - cib: Repair rolling update capability (bnc#881575)
- cib: Use a better option name for enabling the legacy cib diff code (cl#5222, bnc#881575)
- remote: clear remote-node status correctly
- pengine: properly handle fencing of container remote-nodes when the container is orphaned
- remote: Handle request/response ipc proxy correctly
- cib: Prevent assert on sending cib sync requests (cl#5222, bnc#881575)
- crm_simulate: Clean up temporary shadow files on exit (bnc#879934)
- pengine: cl#5200 - Before migrating utilization-using resources to a node, take off the load that will no longer run there if it's not introducing transition loop
  (Rework cl#5044, lf#2599, bnc#695440)
- Fencing: Cache metadata lookups to avoid repeated blocking during device registration
- pengine: properly place resource within a container when container is a remote-node.
- mainloop: Better handle the killing of processes in the act of exiting
- services: Remove cancelled recurring ops from internal lists as early as possible
- services: Remove file descriptors from mainloop as soon as we have drained them
- pengine: Don't report a resource as restarting when it is a moving multistate resource
- pengine: avoid assert by searching for stop action on correct node during LogActions
- Upstream version cs: 34721d2829c466a4965ab2b16478183601d9df18

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=141
2014-06-10 13:17:28 +00:00
8781c844e4 - cib: Drop the message serverity now that the cause is well understood
- crmd: Avoid spamming the cib by triggering a transition only once per non-status change
- Upstream version cs: 559f733e8818a96085134cd2a34efc280c512a2a

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=140
2014-06-02 03:30:22 +00:00
602bd1747a - pengine: Prevent possible segfault (bnc#880258)
- attrd: Ensure attribute dampening is always observed
- Bug cl#5213 - Limit the scope of the previous commit to the masters role
- membership: Avoid duplicate peer entries in the peer cache
- Bug cl#5184 - Ensure pending probes that ultimately fail are correctly updated (bnc#804763, bnc#879034)
- Upstream version cs: 9776707a6232f25812009145fafa8a64c5b53910
- pengine: Correctly search failcount (bnc#880520)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=139
2014-05-29 11:37:00 +00:00
3189bb8bb5 - Rebase:
* pacemaker-colocated-utilization.patch

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=138
2014-05-27 11:13:26 +00:00
e8a9b3da0b - Bug cl#5213 - Ensure role colocation with -INFINITY is enforced
- pengine: Mark unrunnable stop actions as "blocked" and show the correct current locations (bnc#878662)
- pengine: Block restart of resources if any dependent resource in a group is unmanaged (bnc#878662)
- systemd: Try to handle dbus actions that complete prior to configuring a callback
- mainloop: Canceling in-flight operations should not fail if child process has already exited.
- Bug rhbz#1097457 - Limit the scope of the previous fix and include a helpful comment
- Bug cl#5212 - Do not promote instances when quorum is lots and no-quorum-policy=freeze
- Bug rhbz#1097457 - Prevent invalid transition when resource are ordered to start after the container they're started in
- Fix: fix small memory leaks
- Upstream version cs: 25ebca2b83df9263aedb944ea4eeb53468e90e83

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=137
2014-05-27 10:27:03 +00:00
OBS User buildservice-autocommit
f4b6603f31 Accepting request 235158 from network:ha-clustering:Factory
auto commit by copy to link target

OBS-URL: https://build.opensuse.org/request/show/235158
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=136
2014-05-26 08:27:37 +00:00
Stephan Kulow
f366d1e42e Accepting request 235158 from network:ha-clustering:Factory
- added necessary macros for systemd files (forwarded request 235151 from jsegitz)

OBS-URL: https://build.opensuse.org/request/show/235158
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=70
2014-05-26 08:27:36 +00:00
OBS User buildservice-autocommit
00606e216b Updating link to change in openSUSE:Factory/pacemaker revision 70.0
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=98836024ed4e88044cf4a0b1c2cc4f3e
2014-05-26 08:27:36 +00:00
a912ff2982 Accepting request 235151 from home:jsegitz:branches:network:ha-clustering:Factory
- added necessary macros for systemd files

OBS-URL: https://build.opensuse.org/request/show/235151
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=135
2014-05-23 09:12:50 +00:00
Stephan Kulow
7dd286163d Accepting request 233567 from network:ha-clustering:Factory
- pengine: Use "#site-name" in rules for setting site-specific instance attributes
- pengine: Use "#cluster-name" in rules for setting cluster-specific instance attributes (FATE#316118)
- crmd: Set "cluster-name" property to corosync's "cluster_name" by default for corosync-2 (FATE#316118)
- pengine: Fixed so that it could change while a setup of "startup-fencing" starts.
- crmd: Use correctly signed inputs to sscanf()
- PE: Correctly handle origin offsets in the future
- iso8601: Different logic is needed when logging and calculating durations
- xml: Do not prune meaningful leaves from v1 patchsets
- Upstream version cs: da5aaab97ca5b7858f2aac98107a1a7ffc3e4252

- use _rundir macro 

- Rebase:
  * pacemaker-NodeUtilization-RA.patch
  * pacemaker-colocated-utilization.patch
- xml: Clean up schema list at exit
- pengine: Support site-specific instance attributes based on rules for stretch cluster
- pengine: Support cluster-specific instance attributes based on rules (FATE#316118)
- crmd: Ensure crm_config options are re-read on updates
- Resolve all clang analyser defects
- xml: Check all available schemas when doing upgrades
- Changes to the ACL schema to support nodes and unix groups
- tools: Allow crm_shadow to create older configuration versions
- xml: Prevent use-after-free when comparing two xml documents
- cib: Resolve memory leaks in query paths
- xml: Correctly subtract xml with v1 patchsets
- fencing: Advertise support for reboot/on/off in the metadata for legacy agents
- fencing: default to 'off' when agent does not advertise 'reboot' in metadata
- fencing: Execute all required fencing devices regardless of what topology level they are at
- fencing: Fence using all required devices

OBS-URL: https://build.opensuse.org/request/show/233567
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=69
2014-05-22 18:38:00 +00:00
aec6f25acd - pengine: Use "#site-name" in rules for setting site-specific instance attributes
- pengine: Use "#cluster-name" in rules for setting cluster-specific instance attributes (FATE#316118)
- crmd: Set "cluster-name" property to corosync's "cluster_name" by default for corosync-2 (FATE#316118)
- pengine: Fixed so that it could change while a setup of "startup-fencing" starts.
- crmd: Use correctly signed inputs to sscanf()
- PE: Correctly handle origin offsets in the future
- iso8601: Different logic is needed when logging and calculating durations
- xml: Do not prune meaningful leaves from v1 patchsets
- Upstream version cs: da5aaab97ca5b7858f2aac98107a1a7ffc3e4252
- pengine: Support site-specific instance attributes based on rules for stretch cluster

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=133
2014-05-12 11:01:56 +00:00
Factory Maintainer
99ef1b9b4c Accepting request 233018 from home:oertel:branches:network:ha-clustering:Factory
- use _rundir macro

OBS-URL: https://build.opensuse.org/request/show/233018
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=132
2014-05-11 05:25:00 +00:00
f1a03b21e8 Update pacemaker-colocated-utilization.patch to fix build
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=131
2014-05-05 10:01:46 +00:00
3b1daef8d4 - Rebase:
* pacemaker-NodeUtilization-RA.patch
  * pacemaker-colocated-utilization.patch
- xml: Clean up schema list at exit
- pengine: Support cluster-specific instance attributes based on rules (FATE#316118)
- crmd: Ensure crm_config options are re-read on updates
- Resolve all clang analyser defects
- xml: Check all available schemas when doing upgrades
- Changes to the ACL schema to support nodes and unix groups
- tools: Allow crm_shadow to create older configuration versions
- xml: Prevent use-after-free when comparing two xml documents
- cib: Resolve memory leaks in query paths
- xml: Correctly subtract xml with v1 patchsets
- fencing: Advertise support for reboot/on/off in the metadata for legacy agents
- fencing: default to 'off' when agent does not advertise 'reboot' in metadata
- fencing: Execute all required fencing devices regardless of what topology level they are at
- fencing: Fence using all required devices
- fencing: fixed so that change of <resources> could be handled correctly.
- Upstream version cs: 42ae0e3cb50bb9e19dba7d1ad1ea69255bef5370

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=130
2014-05-05 09:35:22 +00:00
1d32640628 - pengine: Fix memory leak in expand_tags_in_sets()
- PE: Memory leak
- PE: Do not initiate fencing for unclean nodes when fencing is disabled
- crm_node: Only remove the named resource from the cib
- pengine: Support site-specific instance attributes based on rules (FATE#316118)
- pengine: Ignore failure-timeout only if the failed operation has on-fail="block" (bnc#871175)
- Upstream version cs: f7859e2e06c8cf320482c3e4b447ddbe0a96fe83

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=129
2014-04-16 09:04:09 +00:00
2ac37ce818 - pengine: Support cib object tags (FATE#315101)
- crmd: Correctly detect changes of ticket state (bnc#872794)
- Upstream version cs: 3f7ec44b51825898e3e30784ca4df09e3f45bf40

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=128
2014-04-14 06:18:54 +00:00
0f11d61d83 - Rebase:
* bug-812269_pacemaker-fencing-device-register-messages.patch
- Build: Update versions in configure.ac and sample spec file
- fencing: Do not unregister/register all stonith devices on every resource agent change
- PE: Unfencing is based on device probes, there is no need to unfence when normal resources are found active
- pengine: handles edge case where container order constraints are not honored during migration
- pengine: Allow container nodes to migrate with connection resource
- xml: Resolve memory leak when logging xml blobs
- PE: Do not unfence nodes that are offline, unclean or shutting down
- PE: Ensure unfencing only happens once, even if the transition is interrupted
- crmd: Actions can only be executed if their pre-requisits completed successfully
- crmd: Do not erase the status section for unfenced nodes
- Fencing: Correctly record which peer performed the fencing operation
- lrmd: Expose logging variables expected by OCF agents
- logging: Simplify processing of logging directives
- logging: daemons always get a log file, unless explicitly set to configured 'none'
- PE: Ensure unfencing occurs before fencing devices are (re-)probed
- fencing: Filter self-fencing at the peers to allow unfencing to work correctly
- fencing: Automatically switch from 'list' to 'status' to 'static-list' if those actions are not advertised in the metadata
- lrmd: Provide stderr output from agents if available, otherwise fall back to stdout
- fencing: properly detect new fencing devices for v2 cib updates
- acl: Prevent use-of-NULL
- cts: automatically determine whether to run RemoteBaremetal (bnc#856353)
- pengine: Correctly search failcount
- Upstream version cs: ff74a591e670dbdb86f7cddeec989167de521216

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=127
2014-04-11 16:58:54 +00:00
Stephan Kulow
577ac3a10f Accepting request 229447 from network:ha-clustering:Factory
- pengine: Support id-ref in nvpair with optional "name" (FATE#316118)
  Drop the patches that have been merged upstream:
  * pacemaker-pengine-nvpair-id-ref.patch
  * pacemaker-pengine-nvpair-id-ref-test.patch
- Upstream version cs: 6442c5a67cdd4cbaeedb2c532e0dc0667a79c202

- xml: INFINITY could overflow for 16-bit ints - explicitly cast it
- xml: Correctly determine the lowest allowed schema version
- xml: Construct the table of supported schemas
- cib: All schema upgrade requests must go via the DC
- cib: Determine the best value of validate-with if one is not supplied
- acl: Ensure known users are not able to read the cib by default
- xml: Add missing schema file
- Upstream version cs: d9fbba56804a7a7bcceaa5d4b7e29e3f15fc0e59

- crmd: Correctly react to successful unfencing operations
- PE: Delay unfencing until after we know the state of all resources that require unfencing
- PE: Fencing devices default to only requiring quorum in order to start
- PE: Automatically re-unfence a node if the fencing device definition changes
- pengine: Only report 'migrate' in transition summary if migration is actually taking place
- crm_node: Set correct subsystem in node rm cache msg
- crm_node: Prevent use-after-free in tools_remove_node_cache()
- crmd: make resource ID case sensitive
- fencing: Correction of the registration from a difference.
- crm_report: Add support for ISO8601 time format in logs (bnc#870886)
- PE: Potential memory leak
- xml: Support resources that require unfencing
- crmd: make node_state erase correctly
- xml: Add the ability to have lightweight schema revisions
- xml: Split up the RelaxNG schema files so they're easier to version individually

OBS-URL: https://build.opensuse.org/request/show/229447
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=68
2014-04-09 11:01:13 +00:00
5f64fb1200 - pengine: Support id-ref in nvpair with optional "name" (FATE#316118)
Drop the patches that have been merged upstream:
  * pacemaker-pengine-nvpair-id-ref.patch
  * pacemaker-pengine-nvpair-id-ref-test.patch
- Upstream version cs: 6442c5a67cdd4cbaeedb2c532e0dc0667a79c202

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=125
2014-04-09 04:54:43 +00:00
26bd423aff - xml: INFINITY could overflow for 16-bit ints - explicitly cast it
- xml: Correctly determine the lowest allowed schema version
- xml: Construct the table of supported schemas
- cib: All schema upgrade requests must go via the DC
- cib: Determine the best value of validate-with if one is not supplied
- acl: Ensure known users are not able to read the cib by default
- xml: Add missing schema file
- Upstream version cs: d9fbba56804a7a7bcceaa5d4b7e29e3f15fc0e59

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=124
2014-04-08 13:46:29 +00:00
5b918bf0b1 - crmd: Correctly react to successful unfencing operations
- PE: Delay unfencing until after we know the state of all resources that require unfencing
- PE: Fencing devices default to only requiring quorum in order to start
- PE: Automatically re-unfence a node if the fencing device definition changes
- pengine: Only report 'migrate' in transition summary if migration is actually taking place
- crm_node: Set correct subsystem in node rm cache msg
- crm_node: Prevent use-after-free in tools_remove_node_cache()
- crmd: make resource ID case sensitive
- fencing: Correction of the registration from a difference.
- crm_report: Add support for ISO8601 time format in logs (bnc#870886)
- PE: Potential memory leak
- xml: Support resources that require unfencing
- crmd: make node_state erase correctly
- xml: Add the ability to have lightweight schema revisions
- xml: Split up the RelaxNG schema files so they're easier to version individually
- crm_get_msec: prevent integer overflow
- corosync: Reduce log severity for a redundant message (bnc#870624)
- attrd: Reduce log severity for normal messages (bnc#870624)
- cib: When data was old, it fixed so that the newest cib might not be acquired.
- crm_attribute: Default --lifetime to forever when using --node (bnc#870696)
- Upstream version cs: 76579e813b5aaa1972d400055233519f58bbc0c6

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=123
2014-04-08 12:17:12 +00:00
f935b0d20e Rebase pacemaker-pengine-nvpair-id-ref.patch
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=122
2014-03-31 09:06:35 +00:00
f003975b5d - pengine: Do not fence remote-node entries left over in the node section that have no connection rsc
- pengine: properly handle remote-node without connection resource.
- xml: Update xml validation to allow '<node type=remote />'
- cib: allow setting permanent remote-node attributes
- Upstream version cs: d63eaf41fa8173de3e29873d0461bfb888b83b37

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=121
2014-03-31 07:27:41 +00:00
ea9f8158b2 - xml: Allow first-acl-match-wins semantics to be supported if desired
- crm_report: extract additional DLM lockspace data
- xml: If validate-with is missing, we find the most recent schema that accepts it and go from there
- tools: fix "crm_shadow --reset <name>"
- controld: Remove '-q 0' from default dlm_controld arguments
- acl: Authenticate pacemaker-remote requests with the node name as the client
- controld: Verify killall is available on resource start
- Prevent use-of-NULL spotted by coverity
- crmd: Correctly detect changes to the configuration root
- crmd: Fenced nodes that return prior to an election do not need to have their status section reset
- xml: Do not log deleted attributes
- xml: Correctly mark the parent's of deleted attributes as dirty
- crm_diff: Allow the generation of xml patchsets without digests
- crmd: Prevent memory leak when accepting a new DC
- xml: Find the minimal set of changes when part of a document is replaced
- xml: Create the correct diff when only part of a document is changed
- Upstream version cs: 61e95e4864be0301be528874eed65266f4e62cf0

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=120
2014-03-28 07:56:30 +00:00
417c1ff4b9 - pengine: fixes invalid transition caused by clones with more than 10 instances
- services_action_cancel: Interpret return code from mainloop_child_kill() correctly
- fencing: make hashtable mapping hostname->alias case insensitive for hostname
- attrd: Make hostname hashtable case insensitive
- membership: make caching peers by uname case insensitive
- crmd: make lrm_state hash table not case sensitive
- lrmd: clean up the agent's entire process group
- xml: Enable resource sets in location constraints for 1.2 schema (bnc#867880)
- Upstream version cs: 8bee850bb95ee01dcba03038ddfd65d22e195cf6

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=119
2014-03-21 05:57:18 +00:00
46c0afaaa4 Tweak of pacemaker.changes
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=118
2014-03-13 13:08:11 +00:00
90a1b0231e - Drop obsolete bug-792124_pacemaker-stonith-monitor-log.patch
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=117
2014-03-13 10:51:32 +00:00
280d18b941 Update:
pacemaker-pengine-nvpair-id-ref.patch
pacemaker-pengine-nvpair-id-ref-test.patch

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=116
2014-03-13 10:30:21 +00:00
ceec526574 - mainloop: Fixes use after free in process monitor code
- lrmd: Cancel recurring operations before stop action is executed
- lrmd: Merge duplicate recurring monitor operations
- services: Do not allow duplicate recurring op entries
- crmd: Ack pending operations that were cancelled due to rsc deletion
- crm_mon: Add failures to --as-xml output
- cib: Check if on-disk cib is corrupt in the separate on_disk_cib_corrupt() rather than in validate_on_disk_cib() (bnc#866618)
- crmd: Do not start timers for already completed operations
- acl: Read access must be explicitly granted
- xml: Better move detection logic for xml nodes
- cib: Do not disable cib disk writes if on-disk cib is corrupt (bnc#866618)
- xml: Correctly calculate the adjusted offset of xml elements
- crm_diff: Mirror how the cib operates for better testing
- cib: Ingore patch failures if we already have their contents
- cib: Prevent use-after-free when cleaning up after query operations
- xml: Mark the parents of a partial replace as dirty
- xml: Correctly enforce ACLs after a replace operation
- cib: Do not try to use an empty value for CIB_shadow
- crm_resource: Gracefully handle -EACCESS when querying the cib
- xml: Correctly observe ACLs when creating filtered copies of xml documents
- xml: Only test write permissions for attributes that are being changed
- xml: Always allow new scaffolding - node with no attributes or only an id field
- cib: Memory leaks caused by ACLs returning filtered copies
- xml: Set flags to indicate when updates were rejected by an ACL
- cib: Respect the CIB_user environment variable for ACLs
- xml: Unpack and apply ACLs when tracking changes
- cib: Implement CIB_file-mode ACLs for testing
- remote: Enable migration support for baremetal connection resources by default
- cibadmin: Allow priviliged clients to perform tasks as unpriviliged users
- cibadmin: Remove dangerous commands that exposed unnecessary implementation internal details

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=115
2014-03-13 10:26:07 +00:00
e7a395414f - Add symlinks rcpacemaker and rcpacemaker_remote to /usr/bin/service (bnc#866057)
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=114
2014-03-03 11:51:26 +00:00
0bc48138fd Add a bug number:
- xml: Fix segfault in TRACKING_CHANGES() (bnc#865345)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=113
2014-03-03 10:36:36 +00:00
eed638275e - Rebase bug-812269_pacemaker-fencing-device-register-messages.patch
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=112
2014-03-03 09:35:43 +00:00
ecf1558079 - xml: Memory leak when free'ing xml documents
- systemd: Prevent use-of-NULL when determining if an agent exists
- xml: Fix segfault in TRACKING_CHANGES()
- PE: Memory leak when updating cancel operations
- xml: Prevent memory leak in xml _private field
- pengine: Performance increase, stack allocated score2char
- crm_report: Only gather dlm data if dlm_controld is running
- Fix: memory leak found by valgrind was corrected.
- Fencing: Add the ability to call stonith_api_time() from stonith_admin
- Fencing: Pass the correct options when looking up the history by node name
- cib: Ensure 'cibadmin -R/--replace' commands get replies
- xml: Correctly initialize and find v1-style patch version numbers
- crm_mon: Add -R switch to show clone details
- Build: Install compatibility.h
- fencing: Teach stonith-ng about finding device and topology changes in the v2 patch format
- crm_report: Additional dlm detail
- crm_report: Allow ssh alternatives to be used
- crmd: Correctly recognise operation cancellations we initiated
- crmd: Improved logging of transition cancellations
- crmd: Correctly detect lrm refreshes
- crmd: Ignore 'move' operations to the cib, we only care about content changes
- PE: Ensure instance numbers are preserved for cloned templates
- Bug cl#5196 - PE: Check values after expanding templates
- crm_mon: Ensure resource attributes have been unpacked before displaying connectivity data
- Upstream version cs: ca8234daf2bbb2d0fd2fb47cdbb6667f892081bb

- pengine: Support id-ref in nvpair with optional "name" (FATE#316118)
  * pacemaker-pengine-nvpair-id-ref.patch
  * pacemaker-pengine-nvpair-id-ref-test.patch

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=111
2014-03-03 07:56:37 +00:00
d3e1673ec5 Ready to run source service: ca8234daf2bbb2d0fd2fb47cdbb6667f892081bb
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=110
2014-03-03 06:50:59 +00:00
Stephan Kulow
5ae3bc05fc Accepting request 223330 from network:ha-clustering:Factory
- controld: Do not consider the dlm up until the address list is present
- pengine: Support per-resource maintenance mode (bnc#863071)
- pengine: cl#5187 - Prevent resources in an anti-colocation from even temporarily running on a same node (bnc#856135, bnc#862319)
- controld: handling startup fencing within the controld agent, not the dlm
- Upstream version cs: 0b7d85a159cc92e00ebded65c9a33edce7ba1c22

- cib: Erasing the cib is an admin action, bump the admin_epoch instead
- mcp: Tell systemd not to respawn us if we exit with rc=100
- crm_mon: Allow the file created by --as-html to be world readable
- crmd: Do not overwrite existing node state when fencing completes
- PE: Default sequential to TRUE for resource sets for consistency with colocation sets
- Bug rhbz#1036631 - Stop members of cloned groups when dependancies are stopped
- PE: Ensure stop actions are viable when reporting what will happen to a resource
- xml: Consolidate patchset logging and apply functionality
- cib: Validate that everyone still sees the same configuration once all updates have completed
- cib: Validate clients are correctly applying v2-style diffs at most once a minute
- xml: Allow both patch formats to include and validate an xml digest
- election: If an error occurrs in crm_uptime(), compare as {0,0}
- xml: Correctly compare the current feature set when determining which patch format to use
- crmd: Support failcount processing with the new patch format
- crmd: Handle patchset directives that change the configuration top-level
- cib: Make patchset validation a run-time switch
- cib: Implement zero-copy status update
- cib: Enable the more efficient xml patchset format
- crmd: Add support for parsing resource operations in the v2 patch format
- xml: New function for calculating patchset version details
- cib: Auto-detect which patchset format to use
- xml: Allow the source of xml library errors to be traced
- cib: Send all r/w operations via the cluster connection and have all nodes process them
- xml: Use an optimized xpath search function for applying patch sets

OBS-URL: https://build.opensuse.org/request/show/223330
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=67
2014-02-22 19:44:16 +00:00
234c448115 - controld: Do not consider the dlm up until the address list is present
- pengine: Support per-resource maintenance mode (bnc#863071)
- pengine: cl#5187 - Prevent resources in an anti-colocation from even temporarily running on a same node (bnc#856135, bnc#862319)
- controld: handling startup fencing within the controld agent, not the dlm
- Upstream version cs: 0b7d85a159cc92e00ebded65c9a33edce7ba1c22

- cib: Erasing the cib is an admin action, bump the admin_epoch instead
- mcp: Tell systemd not to respawn us if we exit with rc=100
- crm_mon: Allow the file created by --as-html to be world readable
- crmd: Do not overwrite existing node state when fencing completes
- PE: Default sequential to TRUE for resource sets for consistency with colocation sets
- Bug rhbz#1036631 - Stop members of cloned groups when dependancies are stopped
- PE: Ensure stop actions are viable when reporting what will happen to a resource
- xml: Consolidate patchset logging and apply functionality
- cib: Validate that everyone still sees the same configuration once all updates have completed
- cib: Validate clients are correctly applying v2-style diffs at most once a minute
- xml: Allow both patch formats to include and validate an xml digest
- election: If an error occurrs in crm_uptime(), compare as {0,0}
- xml: Correctly compare the current feature set when determining which patch format to use
- crmd: Support failcount processing with the new patch format
- crmd: Handle patchset directives that change the configuration top-level
- cib: Make patchset validation a run-time switch
- cib: Implement zero-copy status update
- cib: Enable the more efficient xml patchset format
- crmd: Add support for parsing resource operations in the v2 patch format
- xml: New function for calculating patchset version details
- cib: Auto-detect which patchset format to use
- xml: Allow the source of xml library errors to be traced
- cib: Send all r/w operations via the cluster connection and have all nodes process them
- xml: Use an optimized xpath search function for applying patch sets

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=108
2014-02-21 07:15:44 +00:00
Stephan Kulow
f0b6ef871b Accepting request 221419 from network:ha-clustering:Factory
- ipc: Convince clang that our casting is intended (bnc#845525)
  * Drop pacemaker-Wno-cast-align.patch which has been merged upstream
- cib: Use the correctly typed enum value during initialization
- Build: Add dbus as an rpm dependancy
- Fix: Bug rhbz#1057697 - Use native DBus library for systemd async support to avoid problematic use of threads
- remote: Fail remote-node connection rsc monitor ops early on unexpected disconnect
- tools: Return error when attempting to delete an unspecified attribute
- remote: Allow baremetal remote-node connection resources to migrate
- lrmd: Send event alerting estabilished clients that a new client connection is created.
- Fix: Bug rhbz#1057697 - Use native DBus library for systemd support to avoid problematic use of threads
- xml: Fix segfault in find_entity()
- Upstream version cs: 6290953f2b035a92a8f093973b94c5cf38b79cd9

- pengine: Free memory allocated by find_actions()
- cib: Fix remote cib based on TLS
- Upstream version cs: f3eeaf49d1fb7bca713ecbbc819aef51650d26ef

- stonith: Drop the severity of log for recoverable condition (bnc#857779)
  * Update bug-812269_pacemaker-fencing-device-register-messages.patch

OBS-URL: https://build.opensuse.org/request/show/221419
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=66
2014-02-11 10:46:40 +00:00
e867fb5cb8 - ipc: Convince clang that our casting is intended (bnc#845525)
* Drop pacemaker-Wno-cast-align.patch which has been merged upstream
- cib: Use the correctly typed enum value during initialization
- Build: Add dbus as an rpm dependancy
- Fix: Bug rhbz#1057697 - Use native DBus library for systemd async support to avoid problematic use of threads
- remote: Fail remote-node connection rsc monitor ops early on unexpected disconnect
- tools: Return error when attempting to delete an unspecified attribute
- remote: Allow baremetal remote-node connection resources to migrate
- lrmd: Send event alerting estabilished clients that a new client connection is created.
- Fix: Bug rhbz#1057697 - Use native DBus library for systemd support to avoid problematic use of threads
- xml: Fix segfault in find_entity()
- Upstream version cs: 6290953f2b035a92a8f093973b94c5cf38b79cd9

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=106
2014-02-08 14:21:03 +00:00
Stephan Kulow
27012725b6 Accepting request 215261 from network:ha-clustering:Factory
- Build: Suppress -Wcast-align warnings/errors on arm and ppc64le (bnc#845525)
  * Update pacemaker-Wno-cast-align.patch

- services: Do not block synced service executions
- Upstream version cs: 96cd1941308be48fdf1e827b88ebd9410cf2010a

- crm_mon: Display brief output if "-b/--brief" is supplied or 'b' is toggled (FATE#314757)
  * Add pacemaker-crm_mon-brief.patch
- tools: Display pending state in crm_mon/crm_resource/crm_simulate if --pending/-j is supplied (cl#5178) (FATE#315159)
  * Add pacemaker-display-pending-ops.patch

- Drop the obsolete patch (bnc#857779):
  * bug-812269_pacemaker-fencing-update-cib.patch

- crm_report: Force grep to interpret logs as text
- pengine: Force record pending for migrate_to actions
- pengine: cl#5186 - Avoid running rsc on two nodes when node is fenced during migration
- cluster: Fix segfault on removing a node (bnc#858745)
- services: Reset the scheduling policy and priority for lrmd's children without replying on SCHED_RESET_ON_FORK (bnc#858857)
- fencing: Update stonith device list only if stonith is enabled (bnc#857779)
- services: Correctly reset the nice value for lrmd's children (bnc#858857)
- pengine: Correctly perform partial migrations when node's uname is not equal to the id.
- fencing: Immediately fail remote fencing operation on peer timeout
- cl#5055: Improved migration support.
- stonith_admin: Ensure pointers passed to sscanf() are properly initialized
- Fix: Prevent potential use-of-NULL
- crmd: Prevent memory leak in error paths
- services: Fixes segfault associated with cancelling in-flight recurring operations. (bnc#859923)
- pengine: cl#5174 - Allow resource sets and templates for location constraints (FATE#315158)
- Upstream version cs: a3cda7619e71399d54f209296aebf3ba713a0bf4

OBS-URL: https://build.opensuse.org/request/show/215261
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=65
2014-01-30 13:59:24 +00:00
09ad3ccbbe - pengine: Free memory allocated by find_actions()
- cib: Fix remote cib based on TLS
- Upstream version cs: f3eeaf49d1fb7bca713ecbbc819aef51650d26ef

- stonith: Drop the severity of log for recoverable condition (bnc#857779)
  * Update bug-812269_pacemaker-fencing-device-register-messages.patch

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=104
2014-01-28 08:12:10 +00:00
a403020dcc * Add pacemaker-crm_mon-brief.patch
* Add pacemaker-display-pending-ops.patch

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=103
2014-01-27 11:29:43 +00:00
e3ab3f0455 - Build: Suppress -Wcast-align warnings/errors on arm and ppc64le (bnc#845525)
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=102
2014-01-25 07:45:00 +00:00
62a0c904df - Build: Supress -Wcast-align warnings/errors on arm and ppc64le (bnc#845525)
* Update pacemaker-Wno-cast-align.patch

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=101
2014-01-25 07:18:33 +00:00
ad12ec0648 - services: Do not block synced service executions
- Upstream version cs: 96cd1941308be48fdf1e827b88ebd9410cf2010a

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=100
2014-01-25 01:47:46 +00:00
4f39472adf - crm_mon: Display brief output if "-b/--brief" is supplied or 'b' is toggled (FATE#314757)
- tools: Display pending state in crm_mon/crm_resource/crm_simulate if --pending/-j is supplied (cl#5178) (FATE#315159)
- services: Fixes segfault associated with cancelling in-flight recurring operations. (bnc#859923)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=99
2014-01-24 09:03:05 +00:00
61ba85eb4c Update revision in _service: a3cda7619e71399d54f209296aebf3ba713a0bf4
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=98
2014-01-24 08:42:28 +00:00
a5081d6a04 - crm_report: Force grep to interpret logs as text
- Upstream version cs: a3cda7619e71399d54f209296aebf3ba713a0bf4

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=97
2014-01-20 10:36:47 +00:00
21b5dfd5e6 - Drop the obsolete patch (bnc#857779):
* bug-812269_pacemaker-fencing-update-cib.patch

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=96
2014-01-17 16:59:46 +00:00
ccd482926f - pengine: Force record pending for migrate_to actions
- pengine: cl#5186 - Avoid running rsc on two nodes when node is fenced during migration
- cluster: Fix segfault on removing a node (bnc#858745)
- services: Reset the scheduling policy and priority for lrmd's children without replying on SCHED_RESET_ON_FORK (bnc#858857)
- fencing: Update stonith device list only if stonith is enabled (bnc#857779)
- services: Correctly reset the nice value for lrmd's children (bnc#858857)
- pengine: Correctly perform partial migrations when node's uname is not equal to the id.
- fencing: Immediately fail remote fencing operation on peer timeout
- cl#5055: Improved migration support.
- stonith_admin: Ensure pointers passed to sscanf() are properly initialized
- Fix: Prevent potential use-of-NULL
- crmd: Prevent memory leak in error paths
- services: Fixes segfault associated with cancelling in-flight recurring operations.
- pengine: cl#5174 - Allow resource sets and templates for location constraints (FATE#315158)
- Upstream version cs: 31d76eedee4aecfa9b204bd3006c0ce2c7b569a4

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=95
2014-01-17 16:24:19 +00:00
Stephan Kulow
c74bc38ef0 Accepting request 213584 from network:ha-clustering:Factory
- crmd: Change the default value of node-action-limit
- crm_ticket: Support multiple modifications for a ticket in an atomic operation (bnc#855099)
- Upstream version cs: 3e8930190b8b53565ef4ca3fa00006c41511be9f

- ipc: fix memory leak for failed ipc client connections. (bnc#857779)
- pacemakerd: Fixed a problem that only pacemakerd did not inherit the logfacility of corosync.conf.
- pengine: Fixes memory leak in regex pattern matching code for constraints.
- crm_attribute: Do not swallow hostname lookup failures
- crmd: Avoid deleting the 'shutdown' attribute
- Upstream version cs: ad10acb1c4d668befd7ea1d39312356223d86615

- cpg: Correctly free sent messages (bnc#853675, bnc#856018)
- cluster: Correctly construct the header for compressed messages (bnc#851951, bnc#856018)

OBS-URL: https://build.opensuse.org/request/show/213584
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=64
2014-01-15 18:35:59 +00:00
0e7b607acb - crmd: Change the default value of node-action-limit
- crm_ticket: Support multiple modifications for a ticket in an atomic operation (bnc#855099)
- Upstream version cs: 3e8930190b8b53565ef4ca3fa00006c41511be9f

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=93
2014-01-11 11:40:34 +00:00
91a226db77 - ipc: fix memory leak for failed ipc client connections. (bnc#857779)
- pacemakerd: Fixed a problem that only pacemakerd did not inherit the logfacility of corosync.conf.
- pengine: Fixes memory leak in regex pattern matching code for constraints.
- crm_attribute: Do not swallow hostname lookup failures
- crmd: Avoid deleting the 'shutdown' attribute
- Upstream version cs: ad10acb1c4d668befd7ea1d39312356223d86615
- cpg: Correctly free sent messages (bnc#853675, bnc#856018)
- cluster: Correctly construct the header for compressed messages (bnc#851951, bnc#856018)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=92
2014-01-09 18:42:11 +00:00
Stephan Kulow
9a6d66b487 Accepting request 210602 from network:ha-clustering:Factory
- cts: Install cib_xml.py (bnc#854926)
- report: Add support for xz compressed logs (bnc#854060)
- attrd: Memory leak
- crm_mon: Fix overflow on SMTP subject line
- Upstream version cs: 65bb87eadcf6dfd9b5cd6030ec318579fd4fe7c8

OBS-URL: https://build.opensuse.org/request/show/210602
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=63
2013-12-12 10:17:51 +00:00
8806208b4d - cts: Install cib_xml.py (bnc#854926)
- report: Add support for xz compressed logs (bnc#854060)
- attrd: Memory leak
- crm_mon: Fix overflow on SMTP subject line
- Upstream version cs: 65bb87eadcf6dfd9b5cd6030ec318579fd4fe7c8

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=90
2013-12-11 19:30:37 +00:00
Stephan Kulow
310b037af4 Accepting request 209517 from network:ha-clustering:Factory
- Fix: Removes unnecessary newlines in crm_resource -O output (bnc#853651)
- Upstream version cs: 93a37bf6ea4dcaea8fe7462442ee01019ec167c5

OBS-URL: https://build.opensuse.org/request/show/209517
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=62
2013-12-06 12:44:54 +00:00
39a9b6624f - Fix: Removes unnecessary newlines in crm_resource -O output (bnc#853651)
- Upstream version cs: 93a37bf6ea4dcaea8fe7462442ee01019ec167c5

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=88
2013-12-05 12:13:50 +00:00
Stephan Kulow
80d8a4d713 Accepting request 209371 from network:ha-clustering:Factory
- crmd: Memory leak
- Upstream version cs: ce5d77c6038a0a0294d4cae238169c458ba03b72

- pengine: Recover unexpectedly running container nodes.
- pengine: Disable container node probes due to constraint conflicts
- ipc: Have the ipc server enforce a minimum buffer size all clients must use.
- Bug cl#5181 - corosync: Ensure node IDs are written to the CIB as unsigned integers
- Upstream version cs: f57ad6c17624c0cbfc58c46f0bad7e28453506bb

- 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 (bnc#838358)
- 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 (bnc#838358)
- 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 (bnc#838358)
- crmd: Enable cluster-wide throttling when the cib heavily exceeds its target load (bnc#838358)
- Upstream version cs: 5a69be5ff56ec7fa66bcf9c2069af6211e4ebc98

OBS-URL: https://build.opensuse.org/request/show/209371
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=61
2013-12-05 06:17:55 +00:00
f30b407a3e - crmd: Memory leak
- Upstream version cs: ce5d77c6038a0a0294d4cae238169c458ba03b72

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=86
2013-11-28 14:03:03 +00:00
6ab49f3e65 Add the corresponding bug numbers in the changelog:
- crmd: Improve throttling response on clusters of single core machines (bnc#838358)
- crmd: Correctly observe the configured batch-limit (bnc#838358)
- crmd: Prevent over-polling of throttle inputs (bnc#838358)
- crmd: Enable cluster-wide throttling when the cib heavily exceeds its target load (bnc#838358)
- crmd: Send the first throttle update (bnc#838358)
- crmd: A more reliable method of looking up migration options (bnc#838358)
- crmd: Allow non-CIB based throttling to be disabled (bnc#838358)
- crmd: Honor load thresholds lower than the cib maximum (bnc#838358)
- crmd: Tell the DC our job limit instead of the number of cores (bnc#838358)
- crmd: Track the CIB's CPU usage (bnc#838358)
- crmd: Fold the enforcement of migration-limit into the throttling code (bnc#838358)
- crmd: Don't start throttling until we're over the target threshold (bnc#838358)
- crmd: Do not send throttle updates to versions that don't support them (bnc#838358)
- crmd: Tweak the throttling threshold multipliers (bnc#838358)
- crmd: Simplify option processing for throttling options (bnc#838358)
- crmd: Simplify the logic for calculating the number of available cores (bnc#838358)
- crmd: Make the per-node action limit directly configurable in the CIB (bnc#838358)
- crmd: Slow down recovery on nodes with IO load (bnc#838358)
- crmd: Make the utilization limit configurable (bnc#838358)
- crmd: Use the load on our peers to know how many jobs to send them (bnc#838358)
- crmd: Notify peers of our relative load (bnc#838358)
- crmd: Track CPU usage on cluster nodes (bnc#838358)

- crm_resource: Avoid whitespace in transition keys when cleaning up and failing resources (bnc#851308)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=85
2013-11-26 15:08:46 +00:00
485bf99876 - pengine: Recover unexpectedly running container nodes.
- pengine: Disable container node probes due to constraint conflicts
- ipc: Have the ipc server enforce a minimum buffer size all clients must use.
- Bug cl#5181 - corosync: Ensure node IDs are written to the CIB as unsigned integers
- Upstream version cs: f57ad6c17624c0cbfc58c46f0bad7e28453506bb

Add a corresponding bug number:
- cluster: Correctly construct the header for compressed messages (bnc#851951)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=84
2013-11-25 16:37:48 +00:00
5c951f9dac - 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
2013-11-19 16:46:16 +00:00
Stephan Kulow
21f1779561 Accepting request 207124 from network:ha-clustering:Factory
- crmd: Send the first throttle update
- Upstream version cs: 2383f6c469bfb31da9efa8e4dd626de049e808c6

OBS-URL: https://build.opensuse.org/request/show/207124
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=60
2013-11-17 19:20:19 +00:00
a14befa635 OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=81 2013-11-16 07:18:35 +00:00
d82ce5f748 OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=80 2013-11-15 04:17:51 +00:00
0314f09157 Tweak of _service file
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=79
2013-11-14 18:07:28 +00:00
7dec2b9cec Accepting request 206929 from home:yan_gao:branches:network:ha-clustering:Factory
- crmd: Send the first throttle update
- Upstream version cs: 2383f6c469bfb31da9efa8e4dd626de049e808c6

OBS-URL: https://build.opensuse.org/request/show/206929
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=78
2013-11-14 17:26:13 +00:00
7a4a7b8b22 Accepting request 206925 from home:yan_gao:branches:network:ha-clustering:Factory
Use the source service

OBS-URL: https://build.opensuse.org/request/show/206925
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=77
2013-11-14 16:45:58 +00:00
f8d11a8f4c Add _service file
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=76
2013-11-12 13:07:23 +00:00
Stephan Kulow
c7b9f67698 Accepting request 206425 from network:ha-clustering:Factory
- Rebase:
  * bug-806256_pacemaker-log-level-notice.patch
- Drop the obsolete patch:
  * bug-800323_pacemaker-crm_mon-save-cib.patch
- Probe for baremetal remote-node connection resources.
- remote: Add support for ipv6 into pacemaker_remote daemon
- election/fencing: Fix the casts that would result in incorrect values for big-endian systems (bnc#842915)
- Fencing: Apply correct score to the resource of group
- crm_resource: Wait for the correct number of replies when cleaning up resources (bnc#842204)
- cpg: Only process one message at a time to allow other priority jobs to be performed
- remote: Handle endian changes between client and server and improve forward compatibility
- crmd: A more reliable method of looking up migration options
- crmd: Allow non-CIB based throttling to be disabled
- crmd: Honor load thresholds lower than the cib maximum
- crmd: Tell the DC our job limit instead of the number of cores
- crmd: Track the CIB's CPU usage
- crmd: Fold the enforcement of migration-limit into the throttling code
- crmd: Don't start throttling until we're over the target threshold
- crmd: Do not send throttle updates to versions that don't support them
- ipc: Use the higher of the configured buffer size or the default
- crmd: Tweak the throttling threshold multipliers
- crmd: Simplify option processing for throttling options
- crmd: Simplify the logic for calculating the number of available cores
- crmd: Make the per-node action limit directly configurable in the CIB
- crmd: Tweak the throttling code based on migration-limit and/or LRMD_MAX_CHILDREN (bnc#838358)
- crmd: Slow down recovery on nodes with IO load
- crmd: Make the utilization limit configurable
- crmd: Use the load on our peers to know how many jobs to send them
- crmd: Notify peers of our relative load
- remote: Properly version the remote connection protocol

OBS-URL: https://build.opensuse.org/request/show/206425
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=59
2013-11-12 09:53:56 +00:00
bf78bd2b9d - Rebase:
* bug-806256_pacemaker-log-level-notice.patch
- Drop the obsolete patch:
  * bug-800323_pacemaker-crm_mon-save-cib.patch
- Probe for baremetal remote-node connection resources.
- remote: Add support for ipv6 into pacemaker_remote daemon
- election/fencing: Fix the casts that would result in incorrect values for big-endian systems (bnc#842915)
- Fencing: Apply correct score to the resource of group
- crm_resource: Wait for the correct number of replies when cleaning up resources (bnc#842204)
- cpg: Only process one message at a time to allow other priority jobs to be performed
- remote: Handle endian changes between client and server and improve forward compatibility
- crmd: A more reliable method of looking up migration options
- crmd: Allow non-CIB based throttling to be disabled
- crmd: Honor load thresholds lower than the cib maximum
- crmd: Tell the DC our job limit instead of the number of cores
- crmd: Track the CIB's CPU usage
- crmd: Fold the enforcement of migration-limit into the throttling code
- crmd: Don't start throttling until we're over the target threshold
- crmd: Do not send throttle updates to versions that don't support them
- ipc: Use the higher of the configured buffer size or the default
- crmd: Tweak the throttling threshold multipliers
- crmd: Simplify option processing for throttling options
- crmd: Simplify the logic for calculating the number of available cores
- crmd: Make the per-node action limit directly configurable in the CIB
- crmd: Tweak the throttling code based on migration-limit and/or LRMD_MAX_CHILDREN (bnc#838358)
- crmd: Slow down recovery on nodes with IO load
- crmd: Make the utilization limit configurable
- crmd: Use the load on our peers to know how many jobs to send them
- crmd: Notify peers of our relative load
- remote: Properly version the remote connection protocol

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=74
2013-11-10 01:38:35 +00:00
Stephan Kulow
18bde46b84 Accepting request 205889 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/205889
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=58
2013-11-07 07:43:03 +00:00
3c61e379dc Add a bug number:
- Disable -Wcast-align on problematic files (bnc#845525)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=72
2013-10-25 14:21:25 +00:00
Tomáš Chvátal
1733077c18 Accepting request 204479 from network:ha-clustering:Factory
- Disable -Wcast-align on problematic files (forwarded request 204334 from Andreas_Schwab)

OBS-URL: https://build.opensuse.org/request/show/204479
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=57
2013-10-24 12:10:55 +00:00
ffa8d41ef3 Accepting request 204334 from home:Andreas_Schwab:Factory
- Disable -Wcast-align on problematic files

OBS-URL: https://build.opensuse.org/request/show/204334
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=70
2013-10-24 03:49:47 +00:00
1cdccc0e11 - iso8601: Prevent dates from jumping backwards a day in some timezones
- crm_master: Avoid sending redundant "--node" options to crm_attribute (bnc#846360)
- ipc: Client buffer size must never fall below our max read size
- ipc: Ensure buffer environment variable is read before setting max buffer len
- fencing: Deep copy current topology level list on remote op
- Upstream version cs: afdce1faecf82c778ed81eb5eb9b7518d36a1160

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=69
2013-10-22 10:55:06 +00:00
3fa40994ca - crm_resource: Wait for a reply for each request to crmd (bnc#842204)
- Upstream version cs: 7afb87c8caa96d3c1ed9a353ae6061023a729fd4

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=68
2013-10-17 06:50:55 +00:00
afaf028721 - Cluster: On cluster signoff, make sure that the g_source gets disconnected.
- crmd: Using PCMK_ipc_buffer variable for remote-node proxy
- plugin: Reset the scheduling policy of daemons to SCHED_OTHER with nice value -10 (bnc#843647)
- ipc: Compress msgs based on client's actual max send size
- pengine: Do not probe for connection resources
- Upstream version cs: 490e695539630cfc158c5967a99237659fac5f30

Add the bug numbers for those that have been fixed:
- crmd: Everyone who gets a fencing notification should mark the node as down (bnc#842915)
- crmd: Initiate node shutdown if another node claims to have successfully fenced us (bnc#842915)
- Fencing: Restore the ability to manually confirm that fencing completed (bnc#843699)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=67
2013-10-16 04:23:54 +00:00
OBS User buildservice-autocommit
471a9e5eed Accepting request 202757 from network:ha-clustering:Factory
auto commit by copy to link target

OBS-URL: https://build.opensuse.org/request/show/202757
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=66
2013-10-11 09:04:38 +00:00
Tomáš Chvátal
603410de26 Accepting request 202757 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/202757
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=56
2013-10-11 09:04:37 +00:00
OBS User buildservice-autocommit
495ca2b3f5 Updating link to change in openSUSE:Factory/pacemaker revision 56.0
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=6fb16d8d807f29773f1ec6704fa6a059
2013-10-11 09:04:37 +00:00
a49234be4c - fencing: Allow fencing for node after topology entries are deleted
- fencing: Do not broadcast suicide if the on action is being executed
- remote: Option to enable/disable probes on container resource remote-nodes
- lrmd: Correctly cancel monitor actions for lsb/systemd/service resources on cleaning up (bnc#842471)
- services: Fix the executing of synchronous actions
- Upstream version cs: 728ec77851540f9ce64ee1b1269d967841571b25

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=65
2013-10-03 02:01:03 +00:00
0712d956b5 - PE: Add a special attribute for distinguishing between real nodes and containers in constraint rules
- PE: Allow location constraints to take a regex pattern to match against resource IDs
- Bug rhbz#1011618 - Consistently use 'Slave' as the role for unpromoted master/slave resources
- cibadmin: Report errors during sign-off
- Fencing: Observe pcmk_host_list during automatic unfencing
- services: Prevent use-of-NULL when executing service actions
- crm_resource: Provide a meaningful error if --master is used for primitives and groups
- ipc: Raise the default buffer size to 128k (bnc#838358)
- Upstream version cs: ecd44e642db3b65ee83aceed0e93376894a58c47

- plugin: stonith-ng needs membership updates (bnc#841010)
- controld: allow the stonith-enabled check to be overridden
  (bnc#842186, fate#315195)
- attrd: Avoid infinite write loop for unknown peers
- tools: Detect orphaned remote-nodes when setting attributes
- controld: don't start dlm if stonith-enabled is false (bnc#842186, fate#315195)
- pengine: Probe container nodes
- crmd: Tell attrd when remote-node is disconnected
- attrd: Give remote-nodes ability to set attributes with attrd
- Upstream version cs: c68919f46bbaa96ec4ff2c770f82588280277fe6

- crmd: Expose "expected-quorum-votes" option in the metadata only for plugin-based clusters
- decode_transition_key: Older systems do not support '%ms' in
  sscanf
- cib: Guard against overly long user specified strings
- crm_shadow: Simplify prompt generation and impose a sane limit on
  length
- fencing: Skip empty notifications from the cib
- election: Do not update state when ACKs arrive
- cib: Additional logging for invalid diff updates

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=64
2013-09-30 05:58:05 +00:00
Stephan Kulow
3f42db3aa4 Accepting request 200404 from network:ha-clustering:Factory
Update pacemaker for 13.1.

- Rebase:
  * bug-728579_pacemaker-stonith-dev-id.patch
  * bug-806256_pacemaker-log-level-notice.patch
  * bug-812269_pacemaker-fencing-device-register-messages.patch
- Drop the patches that have been merged upstream:
  * pacemaker-node-maintenance.patch
  * pacemaker-node-maintenance-tests.patch
  * pacemaker-crmd-pending-delete.patch
  * pacemaker-resource.patch
- Drop the obsolete patches:
  * pacemaker-cts-startcmd.patch
  * pacemaker-disable-listing-fence-agents.patch
  * pacemaker-daemon-symlinks.patch 
  * pacemaker-ptest-build.patch
  * pacemaker-lrmd-remote-disabled.patch
  * bug-815447_pacemaker-cib-strip-text-nodes.patch
  * bug-809635_pacemaker-xml-digest.patch
- Drop the obsolete source:
  * heartbeat-doc-1.0.tar.gz

- spec: Recommends fence-agents and sbd

- pengine: Properly handle orphaned multistate resources living on remote-nodes
- pengine: Map orphaned container fillers to container resource during shutdown to preserve ordering
- pengine: Do not attempt to probe resources on remote-nodes that are shutting down
- cib: Prevent potential double free in get_remote_uuid
- pengine: Properly shutdown orphaned remote connection resources
- crmd: Populate remote peer cache when building new cib
- crmd: Clear remote-node status AFTER start completes, not before.
- pengine: Probe resources on baremetal remote-nodes

OBS-URL: https://build.opensuse.org/request/show/200404
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=55
2013-09-25 15:18:24 +00:00
b861e2573d Document the changes of patches
- Rebase:
  * bug-728579_pacemaker-stonith-dev-id.patch
  * bug-806256_pacemaker-log-level-notice.patch
  * bug-812269_pacemaker-fencing-device-register-messages.patch
- Drop the patches that have been merged upstream:
  * pacemaker-node-maintenance.patch
  * pacemaker-node-maintenance-tests.patch
  * pacemaker-crmd-pending-delete.patch
  * pacemaker-resource.patch
- Drop the obsolete patches:
  * pacemaker-cts-startcmd.patch
  * pacemaker-disable-listing-fence-agents.patch
  * pacemaker-daemon-symlinks.patch 
  * pacemaker-ptest-build.patch
  * pacemaker-lrmd-remote-disabled.patch
  * bug-815447_pacemaker-cib-strip-text-nodes.patch
  * bug-809635_pacemaker-xml-digest.patch
- Drop the obsolete source:
  * heartbeat-doc-1.0.tar.gz

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=62
2013-09-24 14:11:17 +00:00
c6e3f55cc9 Add missing bug numbers in pacemaker.changes
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=61
2013-09-24 12:51:17 +00:00
6df4c425eb spec: Drop the %clean section
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=60
2013-09-17 15:00:17 +00:00
02e3c78f1b - spec: Recommends fence-agents and sbd
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=59
2013-09-17 08:50:51 +00:00
fd12761563 Remove unused files:
D    bug-809635_pacemaker-xml-digest.patch
D    bug-815447_pacemaker-cib-strip-text-nodes.patch
D    heartbeat-doc-1.0.tar.gz
D    pacemaker-configure-libqb-version.patch
D    pacemaker-cts-startcmd.patch
D    pacemaker-disable-listing-fence-agents.patch
D    pacemaker-ptest-build.patch

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=58
2013-09-12 09:44:38 +00:00
2b929800db Generating rpm macros with commands doesn't seem to work now. Replace them
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=57
2013-09-11 10:22:32 +00:00
0df6f39bce - pengine: Properly handle orphaned multistate resources living on remote-nodes
- pengine: Map orphaned container fillers to container resource during shutdown to preserve ordering
- pengine: Do not attempt to probe resources on remote-nodes that are shutting down
- Upstream version cs: d9bb7632492b1f91a300fb43e9ad8a262a8f2928

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=56
2013-09-10 02:40:34 +00:00
a919eb603a - cib: Prevent potential double free in get_remote_uuid
- pengine: Properly shutdown orphaned remote connection resources
- crmd: Populate remote peer cache when building new cib
- crmd: Clear remote-node status AFTER start completes, not before.
- pengine: Probe resources on baremetal remote-nodes
- crmd: Remote-node fencing glue
- pengine: Allow fencing of baremetal remote nodes
- crmd: Cache baremetal remote-nodes
- tools: Fixes formatting of remote-nodes in crm_mon and crm_simulate
- Upstream version cs: 69dcbaf2c38589820a6f0181806a17bd7da08dd9

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=55
2013-09-09 11:53:45 +00:00
cf498cfd06 - cib: Support XML comments in diffs (bnc#836965)
- Upstream version cs: 5d0a2239543bd5003444af4a16780ac47fd37079

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=54
2013-09-04 07:15:12 +00:00
5b62c7030a - crm_mon: add --hide-headers option to hide all headers
- pengine: Order demote/promote of resources on remote nodes to happen only once the connection is up
- tools: clear ncurses screen when crm_mon cannot connect
- crmd: Invalid formatting of log message causes crash
- remote: Properly handle expected late replies when TLS transport is in use.
- cluster: Allow remote-nodes to be cached
- Upstream version cs: a4eb44fd075e8cb8608f5e45522cade45658ff98

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=53
2013-09-02 11:34:26 +00:00
84133ea00a - Fencing: Support agents that need the host to be unfenced at startup
- cpg: Correctly set the group name length
- pengine: Distinguish between the agent being missing and something the agent needs being missing (bnc#833374)
- crmd: Prevent PCMK_LRM_OP_NOT_INSTALLED for being mapped to PCMK_LRM_OP_ERROR
- Bug cl#5171 - PE: Don't prevent clones from running due to dependant resources
- services: Correctly invoke callbacks for aborted operations
- services: Preserve errno when handling exec failres least it be reset as a side-effect of other calls
- services: Prevent use-of-NULL in g_error_free
- services: Detect missing agents and permission errors before forking
- lrmd: Do not overwrite any existing operation status error
- crmd: Correcty update the history cache when recurring ops change their return code
- PE: Correctly account for the location preferences of things colocated with a group
- crmd: Gracefully handle actions that cannot be initiated
- crm_simulate: Do not complain about CRM_OP_REPROBE actions
- PE: Gracefully handle bad values for XML_ATTR_TRANSITION_MAGIC
- crm_mon: Correctly extract alternate name for pingd attributes
- Fix: Prevent use-of-NULL when ping resources do not define a host list
- Fix: Gracefully handle -ECHILD from waitpid() in crm_abort()
- Fix: Command-line tools should stop after an assertion failure
- systemd: Prevent glib assertion - only call g_error_free() with non-NULL arguments
- Upstream version cs: 4f672bc85eefd33e2fb09b601bb8ec1510645468

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=52
2013-08-21 05:31:10 +00:00
a999327734 OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=51 2013-08-08 16:46:15 +00:00
888f216e00 Accepting request 185885 from home:yan_gao:branches:network:ha-clustering:Factory
- crmd: Don't add node_state to cib, if we have not seen or fenced this node yet
- PE: Do not allow colocation with blocked clone instances
- PE: Do not re-allocate clone instances that are blocked in the Stopped state
- fence_legacy: stonithd now handles killing the process group for us
- Fencing: On timeout, clean up the agent's entire process group
- fencing: Put all fencing agent processes into their own process group
- crmd: Prevent crash by passing log arguments in the correct order
- PE: Do not restart resources that depend on unmanaged resources
- crmd: Prevent recurring monitors being cancelled due to notify operations
- mcp: Fix so that only pacemakerd restarts, at the time of pacemakerd failure
- mcp: Support PCMK_fail_fast to reboot a machine at the time of process (subsystem) failure
- cpg: Ensure the CPG group is always null-terminated
- Upstream version cs: ac7aa1c94f317fc1d4024fbc09b012bc9f1b229e

OBS-URL: https://build.opensuse.org/request/show/185885
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=50
2013-08-05 06:38:03 +00:00
d8a1fef40e Accepting request 184918 from home:yan_gao:branches:network:ha-clustering:Factory
- Define with_stonithd to support legacy fencing agents
- Disable libpacemaker3-cluster package

OBS-URL: https://build.opensuse.org/request/show/184918
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=49
2013-07-30 06:11:07 +00:00
059497d365 Accepting request 184818 from home:yan_gao:branches:network:ha-clustering:Factory
- Update to version 1.1.10
- crm_resource: Allow options to be set recursively
- cib: Correctly read back archived configurations if the primary is corrupted
- mainloop: Hand the channel off to g_io_watch and forget it.
- mainloop: Force removal of ipc fd in dispatch_del callback
- crmd: Clean up handling of pending operations at shutdown and improve logging
- Bug cl#5161 - crmd: Prevent memory leak in operation cache
- cib: Ensure we set up hacluster's groups in stand-alone mode
- Upstream version cs: 368c72641139785ec5981813f311fae8cd1410f3 (1.1.10)

- ping: Ensure OCF_RESKEY_failure_score has a value (bnc#831327)

OBS-URL: https://build.opensuse.org/request/show/184818
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=48
2013-07-29 13:11:47 +00:00
fe46e06b0e - cpg: Correctly free sent messages
- crm_resource: Present an error if an admin tries to --force-start an already active resource
- cluster: Correctly construct the header for compressed messages
- PE: Re-allow ordering constraints with fencing devices now that it is safe to do so
- cl#5170 - Correctly support on-fail=block for clones
- PE: Do the right thing when admins specify the internal resource instead of the clone
- fencing: Correctly detect existing device entries when registering a new one
- crm_node: Return 0 if --remove passed
- remove the mainloop_trigger that are no longer needed.
- corosync: Ensure removed peers are erased from all caches
- cluster: Detect and warn about node names with capitals
- Upstream version cs: 9abe6876d50ff2879f17b08dfa1500817a7fbeba

- crmd: Prevent messages for remote crmd clients from being relayed to wrong daemons

- lrmd: Prevent use-of-NULL in client library
- Upstream version cs: 9d656180294770e39deced79a134d4cf531b8159

- Bug cl#5168 - Prevent clones from being bounced around the cluster due to location constraints
- Upstream version cs: 90b8afe77ab8a3ff2fd30826187fd7726aab4f04

- crm_mon: Bug cl#5167 - Only print "stopped" node list for incomplete clone sets
- Upstream version cs: d16f4c56b120c5ae761680cfb4d98922a185c6c2

- Fix: memory leak when used score2char()
- Fencing: Avoid hashtable lookups in NULL
- Fencing: Force use of the calculated command for support ops
- Bug cl#5157 - Allow migration in the absence of some colocation constraints
- PE: Detect constraints with inappropriate actions (ie. promote for a clone)
- PE: Do the right thing when admins specify the internal resource instead of the clone

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=47
2013-07-22 10:12:36 +00:00
Stephan Kulow
f7736c4005 Accepting request 181041 from network:ha-clustering:Factory
pushing HA

OBS-URL: https://build.opensuse.org/request/show/181041
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=53
2013-07-08 05:19:47 +00:00
62ef318946 1.1.9 + various fixes
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=45
2013-05-21 12:29:04 +00:00
Stephan Kulow
04c66c8253 Accepting request 156961 from network:ha-clustering:Factory
update license to new format (forwarded request 156958 from coolo)

OBS-URL: https://build.opensuse.org/request/show/156961
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=52
2013-03-01 19:44:20 +00:00
10fe763ff4 Accepting request 156958 from openSUSE:Factory:Staging:spdx
update license to new format

OBS-URL: https://build.opensuse.org/request/show/156958
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=43
2013-03-01 10:48:53 +00:00
Ismail Dönmez
ba4b7da96a Accepting request 129236 from network:ha-clustering:Factory
Include sys/resource.h for getrlimit etc. (forwarded request 129167 from a_jaeger)

OBS-URL: https://build.opensuse.org/request/show/129236
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=50
2012-07-30 09:17:57 +00:00
75dab286b7 Accepting request 129167 from home:a_jaeger:FactoryFix
Include sys/resource.h for getrlimit etc.

OBS-URL: https://build.opensuse.org/request/show/129167
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=41
2012-07-30 02:03:55 +00:00
Stephan Kulow
2381eb8685 Accepting request 125838 from network:ha-clustering:Factory
- Core: Revert to the original process flags for the support of
  rolling-upgrade
- PE: Bug cl#5059 - Use the correct action's status when calculating
  required actions for interleaved clones
- Upstream version cs: 61a079313275f3e9d0e85671f62c721d32ce3563

- corosync: Determine node state for plugin based cluster types
- tools: crm_node - Test stack membership only when displaying
  partition members
- Overhaul the way peers are determined to be sufficiently active
- PE: Observe the promotion score of probed resources
- crmd: Detect when peers have an incorrectly set process list
- corosync: Detect when the first corosync has not yet formed and
  handle it gracefully
- Corosync: Move deprecated corosync variants to their own file
- Upstream version cs: 4c8b599e6d79499f28f8178988d65fd33e0d9b24

- Update to version 1.1.7
- crmd: cl#5057 - Restart sub-systems correctly (bnc#755671)
- corosync: Fix compilation when libqb is not available
- pengine: cl#5058 - Fixes issue with on-fail option on operation
  being ignored.
- tools: rhbz#754216 - Make crm_mon --as-xml option default to
  --one-shot mode
- cts: cl#5047 - Suppress cts badnews output related to fencing
  when fencing is expected.
- crmd: cl#5053 - Fixes fail-count not being updated properly.
- crmd: cl#5051 - Fixes file leak in pe ipc connection initialization.
- Tools: crm_simulate - Correctly detect status sections with
  duplicate node_state entries

OBS-URL: https://build.opensuse.org/request/show/125838
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=49
2012-06-26 15:09:49 +00:00
ea77811709 Remove fix-glib_h-include.patch
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=39
2012-06-23 05:35:51 +00:00
83c5c33d98 - Core: Revert to the original process flags for the support of
rolling-upgrade
- PE: Bug cl#5059 - Use the correct action's status when calculating
  required actions for interleaved clones
- Upstream version cs: 61a079313275f3e9d0e85671f62c721d32ce3563

- corosync: Determine node state for plugin based cluster types
- tools: crm_node - Test stack membership only when displaying
  partition members
- Overhaul the way peers are determined to be sufficiently active
- PE: Observe the promotion score of probed resources
- crmd: Detect when peers have an incorrectly set process list
- corosync: Detect when the first corosync has not yet formed and
  handle it gracefully
- Corosync: Move deprecated corosync variants to their own file
- Upstream version cs: 4c8b599e6d79499f28f8178988d65fd33e0d9b24

- Update to version 1.1.7
- crmd: cl#5057 - Restart sub-systems correctly (bnc#755671)
- corosync: Fix compilation when libqb is not available
- pengine: cl#5058 - Fixes issue with on-fail option on operation
  being ignored.
- tools: rhbz#754216 - Make crm_mon --as-xml option default to
  --one-shot mode
- cts: cl#5047 - Suppress cts badnews output related to fencing
  when fencing is expected.
- crmd: cl#5053 - Fixes fail-count not being updated properly.
- crmd: cl#5051 - Fixes file leak in pe ipc connection initialization.
- Tools: crm_simulate - Correctly detect status sections with
  duplicate node_state entries

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=38
2012-06-23 05:04:51 +00:00
Stephan Kulow
d5e5ee1e45 Accepting request 121719 from network:ha-clustering:Factory
Fix unresolvable build status for Factory by requiring libgnutls instead of gnutls (forwarded request 121643 from badshah400)

OBS-URL: https://build.opensuse.org/request/show/121719
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=47
2012-05-22 08:23:31 +00:00
51f801ad74 Accepting request 121643 from home:badshah400:branches:network:ha-clustering:Factory
Fix unresolvable build status for Factory by requiring libgnutls instead of gnutls

OBS-URL: https://build.opensuse.org/request/show/121643
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=36
2012-05-22 02:51:49 +00:00
Stephan Kulow
6ae7956a6e Accepting request 115601 from network:ha-clustering:Factory
Update Pacemaker ticket support

OBS-URL: https://build.opensuse.org/request/show/115601
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=46
2012-05-03 08:59:17 +00:00
1589a3e7c3 - Add provides to identify support level for tickets (bnc#752241)
- Resolve coverity RESOURCE_LEAK, REVERSE_INULL and UNREACHABLE defects 

- Tools: crm_simulate - Support to grant/revoke/standby/activate
  tickets from the new ticket state section (bnc#752241)

- Tools: Add crm_ticket to be profiled by valgrind
- Tools: crm_ticket - Display the tickets that are referenced in
  rsc_ticket constraints but have never been granted yet (bnc#752241)
- Tools: crm_mon - Support to display tickets (bnc#752242)

- PE: Move the ticket state section to
  "/cib/status/tickets/ticket_state" (bnc#752241)
- PE: Support to make tickets standby for relinquishing tickets
  gracefully (bnc#752241)
- Tools: Implement a new crm_ticket (bnc#752241)
- Tools: Update CLI regression tests for the new crm_ticket
- Tools: Add CLI regression tests for ticket standby state
- PE: Update regression tests for the new ticket state section
- PE: Support to make tickets standby for relinquishing tickets
  gracefully (regression tests)

- Tools: crm_ticket - Granting/revoking tickets need user to confirm
  unless "--force" option is used (bnc#752269)

- Tools: Implement the support of granting/revoking tickets for
  crm_simulate (bnc#752241)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=34
2012-04-23 11:15:16 +00:00
Stephan Kulow
fd43827654 Accepting request 104856 from network:ha-clustering:Factory
Fixes for ABI compatibility, timeouts and a segfault.

OBS-URL: https://build.opensuse.org/request/show/104856
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=45
2012-02-16 11:25:02 +00:00
ed572b5913 Bump release number
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=32
2012-02-14 03:25:58 +00:00
527a76dc73 - Core: Move several new fields since v1.1.6 to the end of the data
types for ABI compliance 
- stonith: Default to 20s timeout for start and monitor operations of
  stonith resources which is same as "default-action-timeout" (bnc#733337)
- Tools: ptest - Fix "-X, --xml-text" option to handle a XML string as its
  argument (bnc#736212)
- cib: Fix segfault caused by destroying an already freed hash table (cl#5023)
- stonith: Expose IDs of stonith resources to stonith agents through
  "$CRM_meta_st_device_id" environment variable (bnc#728579)

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=31
2012-02-14 03:25:00 +00:00
Stephan Kulow
3798d180d6 Accepting request 99402 from network:ha-clustering:Factory
Only include glib.h in plugin.h (don't directly use glib/ghash.h)

OBS-URL: https://build.opensuse.org/request/show/99402
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=44
2012-01-09 15:23:12 +00:00
e72f4c3581 - Only include glib.h in plugin.h (don't directly use glib/ghash.h)
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=28
2012-01-09 08:27:17 +00:00
Stephan Kulow
717bf1b747 Accepting request 98031 from network:ha-clustering:Factory
Update to latest Pacemaker 1.1.6, accommodate crmsh package split

OBS-URL: https://build.opensuse.org/request/show/98031
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=43
2011-12-25 16:37:35 +00:00
c7ec3813f2 Make crmsh a Recommends, not a Requires
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=25
2011-12-16 06:29:31 +00:00
1d92dc70ad - RA: add NodeUtilization
- stonith-ng: export stonith resource name to stonith agents
- crmd: Send out all of the meta parameters to lrmd for stop action
- RA: Fix the metadata of HealthSMART and SysInfo RAs
- stonith: Longer default timeout/interval of operations for stonith
  resources
- Doc: many proof-reading improvements
- stonith: Fix the stonith timeout issue (cl#5009, bnc#727498)
- update the license information in pacemaker.spec (bnc#726795)
- xml: Add rsc_ticket support into "pacemaker-1.2" schema
- xml: Add resource template support into "pacemaker-1.2" schema 
- tools: Avoid problems caused by differences between node name and
  uname -n
- PE: Resolve memory leak when retrieving failure counts
- Stonith: Implement a manual override for when nodes are known to be
  safely off
- PE: Implement limit number of concurrent live migrations (FATE#310118)
- PE: Implement referencing templates in constraints
- PE: Move master based on failure of colocated group
- Fencing: Support admin configurable timeouts for API operations
- Fencing: Support checking in-progress operations for all nodes
- don't package crm shell code
- add Requires: crmsh
- Build man pages and html versions (bnc#723680)
- Shell: template support
- Upstream version cs: b988976485d15cb702c9307df55512d323831a5e

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=24
2011-12-16 04:55:14 +00:00
Stephan Kulow
b77925ad77 replace license with spdx.org variant
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=42
2011-12-06 17:35:23 +00:00
OBS User buildservice-autocommit
ae7fb67b9e Updating link to change in openSUSE:Factory/pacemaker revision 42.0
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=e09483d48fe44c1c1ab1bf84e42860dd
2011-12-06 17:35:23 +00:00
Stephan Kulow
672a5c5ace Accepting request 93435 from network:ha-clustering:Factory
- add libtool as buildrequire to avoid implicit dependency (forwarded request 92662 from coolo)

OBS-URL: https://build.opensuse.org/request/show/93435
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=41
2011-11-25 22:12:36 +00:00
Stephan Kulow
dd274ba7cd Accepting request 92662 from home:coolo:removelibtool
- add libtool as buildrequire to avoid implicit dependency

OBS-URL: https://build.opensuse.org/request/show/92662
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=22
2011-11-24 12:52:56 +00:00
Sascha Peilicke
e14c971d8a Accepting request 84012 from network:ha-clustering:Factory
Update to version 1.1.6

OBS-URL: https://build.opensuse.org/request/show/84012
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=39
2011-09-21 15:14:27 +00:00
2fbed65e25 Add python-pssh to Recommends
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=19
2011-09-20 14:41:35 +00:00
0440703030 - Upgrade to 1.1.6.
- PE: Demote from Master does not clear previous errors
- crmd: Prevent secondary DC fencing resulting from CIB updates
  that are lost due to elections
- crmd: Log duplicate DC detection as a WARNING not ERROR
- crmd: Bug lf#2632 - Correctly handle nodes that return faster
  than stonith
- Core: Treat GNUTLS_E_UNEXPECTED_PACKET_LENGTH as normal
  termination of a TLS session
- cib: Call gnutls_bye() and shutdown() when disconnecting from
  remote TLS connections
- cib: Remove disconnected remote connections from mainloop
- cib: Attempt a graceful sign-off for remote TLS connections
- Core: Ensure there is sufficient space for EOS when building
  short-form option strings (prevents segfault)
- Core: Fix variable expansion in pkg-config files
- PE: Resolve memory leak reported by valgrind
- PE: Fix memory leak for re-allocated resources reported by
  valgrind
- PE: Improve the merging with template's operations
- crmd: Allow nodes to fence themselves if they're the last one
  standing (lf#2584)
- stonith: Add an API call for listing installed agents
- stonith: Allow the fencing history to be queried
- stonith: Ensure completed operations are recorded as such in
  the history
- stonith: Support --quiet to display just the seconds since
  epoch at which a node was last shot
- stonith: Serialize actions for a given device
- stonith: Add missing entries to stonith_error2string() (missing

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=18
2011-09-20 14:36:23 +00:00
Sascha Peilicke
4c55b0595d Autobuild autoformatter for 78087
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=38
2011-08-07 16:51:32 +00:00
OBS User buildservice-autocommit
9b36f38b04 Updating link to change in openSUSE:Factory/pacemaker revision 38.0
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=26b462b6c130287a2a4e1350b3cf3a32
2011-08-07 16:51:32 +00:00
Sascha Peilicke
f52e9977ea Accepting request 78087 from network:ha-clustering:Factory
- Fix rpmlint non-ghost-in-var-run check (bnc#710272)

OBS-URL: https://build.opensuse.org/request/show/78087
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=37
2011-08-07 16:51:22 +00:00
80e26eaa3e - Fix rpmlint non-ghost-in-var-run check (bnc#710272)
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=16
2011-08-05 06:12:59 +00:00
Ruediger Oertel
98a64435d1 Autobuild autoformatter for 60420
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=35
2011-02-11 00:37:12 +00:00
Ruediger Oertel
35e4b7b6dd Accepting request 60420 from network:ha-clustering:Factory
Accepted submit request 60420 from user tserong

OBS-URL: https://build.opensuse.org/request/show/60420
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=34
2011-02-11 00:36:58 +00:00
5f1e9073fd - PE: Consolidate logging for resources active on multiple nodes
- PE: More accurate logging of restarts and recovery for master/slave
  resources
- PE: target-role alone is not sufficient to promote resources (lf#2544)
- ais: Ensure that process death is communicated to peer nodes (lf#2550)
- PE: Certain stop operations require STONITH, could overload the
  batch-limit otherwise (lf#2551, bnc#669229)
- Shell: Do not print XML for permission denied errors
- ACL: Support access control on "cleanup"
- crmd: Cancel recurring operations while we're still connected to the
  lrmd
- crmd: Suppress an ERROR by teaching fsa_action2string() about complex
  actions
- crmd: ACL: Prohibit non-privileged users to "fail" resources
- Core: Do not store last-run for recurring operations, since it is
  misleading
- Doc: Add ACL documentation
- Upstream version cs: ecb6baaf7fc0

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=14
2011-02-09 12:11:14 +00:00
e1af2ec428 - Upgrade from 1.1.2.1 to 1.1.5.
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=13
2011-02-08 14:00:12 +00:00
9510c025d7 Autobuild autoformatter for 54302
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=33
2010-12-02 15:19:58 +00:00
OBS User buildservice-autocommit
0883203356 Updating link to change in openSUSE:Factory/pacemaker revision 33.0
OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/pacemaker?expand=0&rev=29849749714041353dc30568ba6de170
2010-12-02 15:19:58 +00:00
3465ba6902 Accepting request 54302 from network:ha-clustering:Factory
Accepted submit request 54302 from user colyli

OBS-URL: https://build.opensuse.org/request/show/54302
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=32
2010-12-02 15:19:50 +00:00
OBS User autobuild
6ecd79cfbd Accepting request 42255 from network:ha-clustering:Factory
Copy from network:ha-clustering:Factory/pacemaker based on submit request 42255 from user tserong

OBS-URL: https://build.opensuse.org/request/show/42255
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=29
2010-06-30 08:46:24 +00:00
OBS User autobuild
a1ae512128 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=28 2010-03-18 15:14:24 +00:00
OBS User unknown
2d5adadb4a OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=26 2009-07-30 14:57:10 +00:00
OBS User unknown
5032bea0e5 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=25 2009-07-13 15:15:36 +00:00
OBS User unknown
8eb7c4103a OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=24 2009-03-17 16:14:04 +00:00
OBS User unknown
3f19129bd2 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=23 2009-03-11 17:49:10 +00:00
OBS User unknown
2da5384beb OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=22 2009-02-26 11:46:17 +00:00
OBS User unknown
ee846e5c2f OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=21 2009-02-09 09:42:25 +00:00
OBS User unknown
d4d44153d7 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=20 2009-01-27 01:24:16 +00:00
OBS User unknown
64e38893db OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=19 2008-12-03 15:31:54 +00:00
OBS User unknown
7d304a7486 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=18 2008-11-23 08:23:05 +00:00
OBS User unknown
ab1c63cc70 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=17 2008-11-21 14:45:52 +00:00
OBS User unknown
74849134d1 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=16 2008-11-20 15:06:34 +00:00
OBS User unknown
80c6275e4e OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=15 2008-11-08 19:13:49 +00:00
OBS User unknown
b2ee9ff08a OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=14 2008-11-07 14:37:46 +00:00
OBS User unknown
974a01da71 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=13 2008-10-27 16:05:14 +00:00
OBS User unknown
516570be85 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=12 2008-10-14 16:14:05 +00:00
OBS User unknown
9091d67c4d OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=11 2008-10-13 14:48:58 +00:00
OBS User unknown
0afd8754eb OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=10 2008-10-11 22:26:49 +00:00
OBS User unknown
0c5532c1f9 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=9 2008-09-29 16:12:27 +00:00
OBS User unknown
d174672082 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=8 2008-09-24 15:18:10 +00:00
OBS User unknown
ea11bb47ea OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=7 2008-09-13 10:02:11 +00:00
OBS User unknown
2b5dcaa887 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=6 2008-09-01 13:26:49 +00:00
OBS User unknown
9ca57eeccd OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=5 2008-09-01 00:37:47 +00:00
OBS User unknown
4a7384a376 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=4 2008-08-30 00:46:01 +00:00
OBS User unknown
b8acc7e27f OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=3 2008-07-25 15:34:55 +00:00
OBS User unknown
0abf211563 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=2 2008-05-04 23:00:31 +00:00
OBS User unknown
dc58eb6b1e OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pacemaker?expand=0&rev=1 2008-04-30 07:47:33 +00:00
53 changed files with 4348 additions and 119 deletions

View File

@@ -8,10 +8,10 @@
To update to a new release, change "revision" to the desired
git commit hash and bump "version" if necessary
<param name="version">2.1.7</param>
<param name="version">3.0.0</param>
-->
<param name="versionformat">2.1.7+%cd.%h</param>
<param name="revision">239cba384f</param>
<param name="versionformat">3.0.0+%cd.%h</param>
<param name="revision">64cd85422c</param>
<param name="changesgenerate">enable</param>
</service>

View File

@@ -5,4 +5,4 @@
</service>
<service name="tar_scm">
<param name="url">https://github.com/ClusterLabs/pacemaker.git</param>
<param name="changesrevision">d7c233090057d4f660fa458a2ff97896b15ea951</param></service></servicedata>
<param name="changesrevision">d60b9407f2db9c9eca5f4dea0726478e068db910</param></service></servicedata>

View File

@@ -0,0 +1,32 @@
From e1e330d6db5080373b8eb18ad9d8b54dae72827f Mon Sep 17 00:00:00 2001
From: "Gao,Yan" <ygao@suse.com>
Date: Thu, 6 Mar 2025 19:36:20 +0100
Subject: [PATCH 1/2] Fix: libpe_status: consider parents of an unmanaged
resource active on the node
... even if the node is offline.
Previously, parents of an unmanaged resource were not added to the node
if the node was offline. So that for instance a resource group in
`maintenance` mode as a whole would not be displayed by
crm_mon/crm_simulate at all.
---
lib/pengine/native.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/pengine/native.c b/lib/pengine/native.c
index 3404949775..94a17b28fa 100644
--- a/lib/pengine/native.c
+++ b/lib/pengine/native.c
@@ -120,7 +120,7 @@ native_add_running(pcmk_resource_t *rsc, pcmk_node_t *node,
resource_location(rsc, node, PCMK_SCORE_INFINITY,
"not_managed_default", scheduler);
- while(p && node->details->online) {
+ while(p) {
/* add without the additional location constraint */
p->priv->active_nodes = g_list_append(p->priv->active_nodes, node);
p = p->priv->parent;
--
2.43.0

View File

@@ -0,0 +1,105 @@
From 36f40d5c4c4e6d36cd81efc5473291c8de3d385d Mon Sep 17 00:00:00 2001
From: "Gao,Yan" <ygao@suse.com>
Date: Thu, 6 Mar 2025 19:51:54 +0100
Subject: [PATCH 2/2] Test: cts-scheduler: update tests for considering parents
of an unmanaged resource active on the node
... even if the node is offline.
---
cts/scheduler/summary/stop-failure-no-fencing.summary | 6 ++++++
cts/scheduler/summary/stop-failure-no-quorum.summary | 5 ++++-
cts/scheduler/summary/unmanaged-promoted.summary | 6 ------
3 files changed, 10 insertions(+), 7 deletions(-)
diff --git a/cts/scheduler/summary/stop-failure-no-fencing.summary b/cts/scheduler/summary/stop-failure-no-fencing.summary
index bb164fd5be..f373981cae 100644
--- a/cts/scheduler/summary/stop-failure-no-fencing.summary
+++ b/cts/scheduler/summary/stop-failure-no-fencing.summary
@@ -9,6 +9,9 @@ Current cluster status:
* Full List of Resources:
* Clone Set: dlm-clone [dlm]:
* Stopped: [ pcmk-1 pcmk-2 pcmk-3 pcmk-4 ]
+ * Clone Set: clvm-clone [clvm]:
+ * clvm (lsb:clvmd): FAILED pcmk-3 (UNCLEAN, blocked)
+ * Stopped: [ pcmk-1 pcmk-2 pcmk-4 ]
* ClusterIP (ocf:heartbeat:IPaddr2): Stopped
Transition Summary:
@@ -24,4 +27,7 @@ Revised Cluster Status:
* Full List of Resources:
* Clone Set: dlm-clone [dlm]:
* Stopped: [ pcmk-1 pcmk-2 pcmk-3 pcmk-4 ]
+ * Clone Set: clvm-clone [clvm]:
+ * clvm (lsb:clvmd): FAILED pcmk-3 (UNCLEAN, blocked)
+ * Stopped: [ pcmk-1 pcmk-2 pcmk-4 ]
* ClusterIP (ocf:heartbeat:IPaddr2): Stopped
diff --git a/cts/scheduler/summary/stop-failure-no-quorum.summary b/cts/scheduler/summary/stop-failure-no-quorum.summary
index e76827ddfc..7cc473e00b 100644
--- a/cts/scheduler/summary/stop-failure-no-quorum.summary
+++ b/cts/scheduler/summary/stop-failure-no-quorum.summary
@@ -13,7 +13,7 @@ Current cluster status:
* Clone Set: clvm-clone [clvm]:
* clvm (lsb:clvmd): FAILED pcmk-2
* clvm (lsb:clvmd): FAILED pcmk-3 (UNCLEAN, blocked)
- * Stopped: [ pcmk-1 pcmk-3 pcmk-4 ]
+ * Stopped: [ pcmk-1 pcmk-4 ]
* ClusterIP (ocf:heartbeat:IPaddr2): Stopped
* Fencing (stonith:fence_xvm): Stopped
@@ -41,5 +41,8 @@ Revised Cluster Status:
* Full List of Resources:
* Clone Set: dlm-clone [dlm]:
* Stopped: [ pcmk-1 pcmk-2 pcmk-3 pcmk-4 ]
+ * Clone Set: clvm-clone [clvm]:
+ * clvm (lsb:clvmd): FAILED pcmk-3 (UNCLEAN, blocked)
+ * Stopped: [ pcmk-1 pcmk-2 pcmk-4 ]
* ClusterIP (ocf:heartbeat:IPaddr2): Stopped
* Fencing (stonith:fence_xvm): Stopped
diff --git a/cts/scheduler/summary/unmanaged-promoted.summary b/cts/scheduler/summary/unmanaged-promoted.summary
index a617e07342..6939239849 100644
--- a/cts/scheduler/summary/unmanaged-promoted.summary
+++ b/cts/scheduler/summary/unmanaged-promoted.summary
@@ -9,7 +9,6 @@ Current cluster status:
* FencingChild (stonith:fence_xvm): Started pcmk-4 (unmanaged)
* FencingChild (stonith:fence_xvm): Started pcmk-2 (unmanaged)
* FencingChild (stonith:fence_xvm): Started pcmk-1 (unmanaged)
- * Stopped: [ pcmk-3 pcmk-4 ]
* Resource Group: group-1 (unmanaged):
* r192.168.122.126 (ocf:heartbeat:IPaddr): Started pcmk-2 (unmanaged)
* r192.168.122.127 (ocf:heartbeat:IPaddr): Started pcmk-2 (unmanaged)
@@ -25,13 +24,11 @@ Current cluster status:
* ping-1 (ocf:pacemaker:ping): Started pcmk-4 (unmanaged)
* ping-1 (ocf:pacemaker:ping): Started pcmk-2 (unmanaged)
* ping-1 (ocf:pacemaker:ping): Started pcmk-1 (unmanaged)
- * Stopped: [ pcmk-3 pcmk-4 ]
* Clone Set: master-1 [stateful-1] (promotable, unmanaged):
* stateful-1 (ocf:pacemaker:Stateful): Unpromoted pcmk-3 (unmanaged)
* stateful-1 (ocf:pacemaker:Stateful): Unpromoted pcmk-4 (unmanaged)
* stateful-1 (ocf:pacemaker:Stateful): Promoted pcmk-2 (unmanaged)
* stateful-1 (ocf:pacemaker:Stateful): Unpromoted pcmk-1 (unmanaged)
- * Stopped: [ pcmk-3 pcmk-4 ]
Transition Summary:
@@ -50,7 +47,6 @@ Revised Cluster Status:
* FencingChild (stonith:fence_xvm): Started pcmk-4 (unmanaged)
* FencingChild (stonith:fence_xvm): Started pcmk-2 (unmanaged)
* FencingChild (stonith:fence_xvm): Started pcmk-1 (unmanaged)
- * Stopped: [ pcmk-3 pcmk-4 ]
* Resource Group: group-1 (unmanaged):
* r192.168.122.126 (ocf:heartbeat:IPaddr): Started pcmk-2 (unmanaged)
* r192.168.122.127 (ocf:heartbeat:IPaddr): Started pcmk-2 (unmanaged)
@@ -66,10 +62,8 @@ Revised Cluster Status:
* ping-1 (ocf:pacemaker:ping): Started pcmk-4 (unmanaged)
* ping-1 (ocf:pacemaker:ping): Started pcmk-2 (unmanaged)
* ping-1 (ocf:pacemaker:ping): Started pcmk-1 (unmanaged)
- * Stopped: [ pcmk-3 pcmk-4 ]
* Clone Set: master-1 [stateful-1] (promotable, unmanaged):
* stateful-1 (ocf:pacemaker:Stateful): Unpromoted pcmk-3 (unmanaged)
* stateful-1 (ocf:pacemaker:Stateful): Unpromoted pcmk-4 (unmanaged)
* stateful-1 (ocf:pacemaker:Stateful): Promoted pcmk-2 (unmanaged)
* stateful-1 (ocf:pacemaker:Stateful): Unpromoted pcmk-1 (unmanaged)
- * Stopped: [ pcmk-3 pcmk-4 ]
--
2.43.0

View File

@@ -0,0 +1,42 @@
From c94e1848244b707a320290650e13715264892430 Mon Sep 17 00:00:00 2001
From: "Gao,Yan" <ygao@suse.com>
Date: Tue, 18 Mar 2025 16:57:25 +0100
Subject: [PATCH 1/8] Fix: pacemaker-attrd: prevent segfault if a peer leaves
when its name is unknown yet
If nodes are not configured with names in corosync, when a node joins
the cluster, it takes a while for it to learn the names of all the other
online peers. Previously, if any of the peers happened to leave when its
`name` was unknown to us yet, pacemaker-attrd would trigger assertion in
`attrd_peer_remove()` and segfault in
`attrd_remove_peer_protocol_ver()`.
---
daemons/attrd/attrd_corosync.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/daemons/attrd/attrd_corosync.c b/daemons/attrd/attrd_corosync.c
index e97e09cb86..e3b0ec2236 100644
--- a/daemons/attrd/attrd_corosync.c
+++ b/daemons/attrd/attrd_corosync.c
@@ -195,14 +195,16 @@ attrd_peer_change_cb(enum pcmk__node_update kind, pcmk__node_status_t *peer,
}
} else {
// Remove all attribute values associated with lost nodes
- attrd_peer_remove(peer->name, false, "loss");
+ if (peer->name != NULL) {
+ attrd_peer_remove(peer->name, false, "loss");
+ }
gone = true;
}
break;
}
// Remove votes from cluster nodes that leave, in case election in progress
- if (gone && !is_remote) {
+ if (gone && !is_remote && peer->name != NULL) {
attrd_remove_voter(peer);
attrd_remove_peer_protocol_ver(peer->name);
attrd_do_not_expect_from_peer(peer->name);
--
2.43.0

View File

@@ -0,0 +1,57 @@
From 522a04a0b1b3f622ccb239828fb974d80dc5e873 Mon Sep 17 00:00:00 2001
From: "Gao,Yan" <ygao@suse.com>
Date: Tue, 18 Mar 2025 18:25:02 +0100
Subject: [PATCH 2/8] Log: pacemaker-attrd: log the cluster layer id of the
changed peer
So that the messages are informative when the peer's name is unknown
yet.
---
daemons/attrd/attrd_corosync.c | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
Index: pacemaker-3.0.0+20250218.64cd85422c/daemons/attrd/attrd_corosync.c
===================================================================
--- pacemaker-3.0.0+20250218.64cd85422c.orig/daemons/attrd/attrd_corosync.c
+++ pacemaker-3.0.0+20250218.64cd85422c/daemons/attrd/attrd_corosync.c
@@ -13,6 +13,7 @@
#include <stdbool.h>
#include <stdint.h>
#include <stdlib.h>
+#include <inttypes.h> // PRIu32
#include <crm/cluster.h>
#include <crm/cluster/internal.h>
@@ -168,23 +169,26 @@ attrd_peer_change_cb(enum pcmk__node_upd
switch (kind) {
case pcmk__node_update_name:
- crm_debug("%s node %s is now %s",
+ crm_debug("%s node %s[%" PRIu32 "] is now %s",
(is_remote? "Remote" : "Cluster"),
- peer->name, state_text(peer->state));
+ pcmk__s(peer->name, "unknown"), peer->cluster_layer_id,
+ state_text(peer->state));
break;
case pcmk__node_update_processes:
if (!pcmk_is_set(peer->processes, crm_get_cluster_proc())) {
gone = true;
}
- crm_debug("Node %s is %s a peer",
- peer->name, (gone? "no longer" : "now"));
+ crm_debug("Node %s[%" PRIu32 "] is %s a peer",
+ pcmk__s(peer->name, "unknown"), peer->cluster_layer_id,
+ (gone? "no longer" : "now"));
break;
case pcmk__node_update_state:
- crm_debug("%s node %s is now %s (was %s)",
+ crm_debug("%s node %s[%" PRIu32 "] is now %s (was %s)",
(is_remote? "Remote" : "Cluster"),
- peer->name, state_text(peer->state), state_text(data));
+ pcmk__s(peer->name, "unknown"), peer->cluster_layer_id,
+ state_text(peer->state), state_text(data));
if (pcmk__str_eq(peer->state, PCMK_VALUE_MEMBER, pcmk__str_none)) {
/* If we're the writer, send new peers a list of all attributes
* (unless it's a remote node, which doesn't run its own attrd)

View File

@@ -0,0 +1,25 @@
From bc7726e7e127ed548bbe6800b8050930e68e991e Mon Sep 17 00:00:00 2001
From: "Gao,Yan" <ygao@suse.com>
Date: Wed, 19 Mar 2025 01:04:16 +0100
Subject: [PATCH 3/8] Log: libcrmcluster: correctly log node id
---
lib/cluster/cluster.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/cluster/cluster.c b/lib/cluster/cluster.c
index dda4b8e89a..14b2bc0c96 100644
--- a/lib/cluster/cluster.c
+++ b/lib/cluster/cluster.c
@@ -271,7 +271,7 @@ pcmk__cluster_node_name(uint32_t nodeid)
}
crm_notice("Could not obtain a node name for node with "
- PCMK_XA_ID "=" PRIu32,
+ PCMK_XA_ID "=%" PRIu32,
nodeid);
return NULL;
}
--
2.43.0

View File

@@ -0,0 +1,26 @@
From 5f643a492be4c0088ddead2fc4d0c4765e463b49 Mon Sep 17 00:00:00 2001
From: "Gao,Yan" <ygao@suse.com>
Date: Wed, 19 Mar 2025 01:15:45 +0100
Subject: [PATCH 4/8] Log: pacemaker-attrd: use %PRIu32 format specifier
instead of %u for node id
---
daemons/attrd/attrd_corosync.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/daemons/attrd/attrd_corosync.c b/daemons/attrd/attrd_corosync.c
index 423e0c66b0..4c58c14d22 100644
--- a/daemons/attrd/attrd_corosync.c
+++ b/daemons/attrd/attrd_corosync.c
@@ -114,7 +114,7 @@ attrd_cpg_dispatch(cpg_handle_t handle,
xml = pcmk__xml_parse(data);
if (xml == NULL) {
- crm_err("Bad message received from %s[%u]: '%.120s'",
+ crm_err("Bad message received from %s[%" PRIu32 "]: '%.120s'",
from, nodeid, data);
} else {
attrd_peer_message(pcmk__get_node(nodeid, from, NULL,
--
2.43.0

View File

@@ -0,0 +1,36 @@
From 666a4113fa71d2f7501c28f4e5e76ba10c051e45 Mon Sep 17 00:00:00 2001
From: "Gao,Yan" <ygao@suse.com>
Date: Thu, 20 Mar 2025 16:08:26 +0100
Subject: [PATCH 5/8] Fix: pacemaker-attrd: remember names of peers from
attribute update in case unknown
... in the membership cache, so that we also learn names of non-writers
as early as possible through processing `sync-response` from the writer.
Regression introduced by 85d7a70916 (not yet released).
---
daemons/attrd/attrd_corosync.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/daemons/attrd/attrd_corosync.c b/daemons/attrd/attrd_corosync.c
index 4c58c14d22..370f96e548 100644
--- a/daemons/attrd/attrd_corosync.c
+++ b/daemons/attrd/attrd_corosync.c
@@ -325,8 +325,13 @@ update_attr_on_host(attribute_t *a, const pcmk__node_status_t *peer,
// Remember node's XML ID if we're just learning it
if ((node_xml_id != NULL)
&& !pcmk__str_eq(node_xml_id, prev_xml_id, pcmk__str_none)) {
+ // Remember node's name in case unknown in the membership cache
+ pcmk__node_status_t *known_peer =
+ pcmk__get_node(0, host, node_xml_id,
+ pcmk__node_search_cluster_member);
+
crm_trace("Learned %s[%s] node XML ID is %s (was %s)",
- a->id, v->nodename, node_xml_id,
+ a->id, known_peer->name, node_xml_id,
pcmk__s(prev_xml_id, "unknown"));
attrd_set_node_xml_id(v->nodename, node_xml_id);
if (attrd_election_won()) {
--
2.43.0

View File

@@ -0,0 +1,40 @@
From 98338298133c81b9cc64c55c98481e232b0643cb Mon Sep 17 00:00:00 2001
From: "Gao,Yan" <ygao@suse.com>
Date: Fri, 21 Mar 2025 14:15:39 +0100
Subject: [PATCH 6/8] Refactor: pacemaker-attrd: make attrd_send_message()'s
node argument const
---
daemons/attrd/attrd_messages.c | 2 +-
daemons/attrd/pacemaker-attrd.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/daemons/attrd/attrd_messages.c b/daemons/attrd/attrd_messages.c
index e1038a820b..8411ce5ef1 100644
--- a/daemons/attrd/attrd_messages.c
+++ b/daemons/attrd/attrd_messages.c
@@ -328,7 +328,7 @@ attrd_broadcast_protocol(void)
}
gboolean
-attrd_send_message(pcmk__node_status_t *node, xmlNode *data, bool confirm)
+attrd_send_message(const pcmk__node_status_t *node, xmlNode *data, bool confirm)
{
const char *op = crm_element_value(data, PCMK_XA_TASK);
diff --git a/daemons/attrd/pacemaker-attrd.h b/daemons/attrd/pacemaker-attrd.h
index cc0dcf29ee..f818e3b0a8 100644
--- a/daemons/attrd/pacemaker-attrd.h
+++ b/daemons/attrd/pacemaker-attrd.h
@@ -200,7 +200,7 @@ xmlNode *attrd_client_clear_failure(pcmk__request_t *request);
xmlNode *attrd_client_update(pcmk__request_t *request);
xmlNode *attrd_client_refresh(pcmk__request_t *request);
xmlNode *attrd_client_query(pcmk__request_t *request);
-gboolean attrd_send_message(pcmk__node_status_t *node, xmlNode *data,
+gboolean attrd_send_message(const pcmk__node_status_t *node, xmlNode *data,
bool confirm);
xmlNode *attrd_add_value_xml(xmlNode *parent, const attribute_t *a,
--
2.43.0

View File

@@ -0,0 +1,87 @@
From 63198fda240afa2517970c36681bfd143a1e6146 Mon Sep 17 00:00:00 2001
From: "Gao,Yan" <ygao@suse.com>
Date: Fri, 21 Mar 2025 14:18:15 +0100
Subject: [PATCH 7/8] Refactor: pacemaker-attrd: ability to send a protocol
message to a single peer
Rename attrd_broadcast_protocol() to attrd_send_protocol().
---
daemons/attrd/attrd_messages.c | 24 +++++++++++++++++++-----
daemons/attrd/pacemaker-attrd.c | 2 +-
daemons/attrd/pacemaker-attrd.h | 2 +-
3 files changed, 21 insertions(+), 7 deletions(-)
diff --git a/daemons/attrd/attrd_messages.c b/daemons/attrd/attrd_messages.c
index 8411ce5ef1..5afc3c54c1 100644
--- a/daemons/attrd/attrd_messages.c
+++ b/daemons/attrd/attrd_messages.c
@@ -302,10 +302,10 @@ attrd_handle_request(pcmk__request_t *request)
/*!
\internal
- \brief Broadcast private attribute for local node with protocol version
+ \brief Send or broadcast private attribute for local node with protocol version
*/
void
-attrd_broadcast_protocol(void)
+attrd_send_protocol(const pcmk__node_status_t *peer)
{
xmlNode *attrd_op = pcmk__xe_create(NULL, __func__);
@@ -319,10 +319,24 @@ attrd_broadcast_protocol(void)
crm_xml_add(attrd_op, PCMK__XA_ATTR_HOST_ID,
attrd_cluster->priv->node_xml_id);
- crm_debug("Broadcasting attrd protocol version %s for node %s",
- ATTRD_PROTOCOL_VERSION, attrd_cluster->priv->node_name);
+ if (peer == NULL) {
+ crm_debug("Broadcasting attrd protocol version %s for node %s[%" PRIu32
+ "]",
+ ATTRD_PROTOCOL_VERSION,
+ pcmk__s(attrd_cluster->priv->node_name, "unknown"),
+ attrd_cluster->priv->node_id);
- attrd_send_message(NULL, attrd_op, false); /* ends up at attrd_peer_message() */
+ } else {
+ crm_debug("Sending attrd protocol version %s for node %s[%" PRIu32
+ "] to node %s[%" PRIu32 "]",
+ ATTRD_PROTOCOL_VERSION,
+ pcmk__s(attrd_cluster->priv->node_name, "unknown"),
+ attrd_cluster->priv->node_id,
+ pcmk__s(peer->name, "unknown"),
+ peer->cluster_layer_id);
+ }
+
+ attrd_send_message(peer, attrd_op, false); /* ends up at attrd_peer_message() */
pcmk__xml_free(attrd_op);
}
diff --git a/daemons/attrd/pacemaker-attrd.c b/daemons/attrd/pacemaker-attrd.c
index 3c31bcd932..ee479c6447 100644
--- a/daemons/attrd/pacemaker-attrd.c
+++ b/daemons/attrd/pacemaker-attrd.c
@@ -184,7 +184,7 @@ main(int argc, char **argv)
* across all nodes. It also ensures that the writer learns our node name,
* so it can send our attributes to the CIB.
*/
- attrd_broadcast_protocol();
+ attrd_send_protocol(NULL);
attrd_init_ipc();
crm_notice("Pacemaker node attribute manager successfully started and accepting connections");
diff --git a/daemons/attrd/pacemaker-attrd.h b/daemons/attrd/pacemaker-attrd.h
index f818e3b0a8..d9423c8915 100644
--- a/daemons/attrd/pacemaker-attrd.h
+++ b/daemons/attrd/pacemaker-attrd.h
@@ -194,7 +194,7 @@ void attrd_peer_clear_failure(pcmk__request_t *request);
void attrd_peer_sync_response(const pcmk__node_status_t *peer, bool peer_won,
xmlNode *xml);
-void attrd_broadcast_protocol(void);
+void attrd_send_protocol(const pcmk__node_status_t *peer);
xmlNode *attrd_client_peer_remove(pcmk__request_t *request);
xmlNode *attrd_client_clear_failure(pcmk__request_t *request);
xmlNode *attrd_client_update(pcmk__request_t *request);
--
2.43.0

View File

@@ -0,0 +1,42 @@
From a6718479a04f50107e1fa6dc5ba00012c06a6ef6 Mon Sep 17 00:00:00 2001
From: "Gao,Yan" <ygao@suse.com>
Date: Fri, 21 Mar 2025 16:03:41 +0100
Subject: [PATCH 8/8] Fix: pacemaker-attrd: make a peer learn our node name
once it has joined
... by sending it a protocol message.
This is an additional assurance besides the way of learning non-writers'
names through processing `sync-response` from the writer as of
666a4113fa.
---
daemons/attrd/attrd_corosync.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/daemons/attrd/attrd_corosync.c b/daemons/attrd/attrd_corosync.c
index 370f96e548..e681fb24d4 100644
--- a/daemons/attrd/attrd_corosync.c
+++ b/daemons/attrd/attrd_corosync.c
@@ -192,10 +192,16 @@ attrd_peer_change_cb(enum pcmk__node_update kind, pcmk__node_status_t *peer,
/* If we're the writer, send new peers a list of all attributes
* (unless it's a remote node, which doesn't run its own attrd)
*/
- if (attrd_election_won()
- && !pcmk_is_set(peer->flags, pcmk__node_status_remote)) {
- attrd_peer_sync(peer);
+ if (!is_remote) {
+ if (attrd_election_won()) {
+ attrd_peer_sync(peer);
+
+ } else {
+ // Anyway send a message so that the peer learns our name
+ attrd_send_protocol(peer);
+ }
}
+
} else {
// Remove all attribute values associated with lost nodes
if (peer->name != NULL) {
--
2.43.0

View File

@@ -4,24 +4,24 @@ Date: Thu Mar 14 09:41:53 2013 +0800
Log: Change some messages to notice level (bnc#806256)
Index: pacemaker-2.1.7+20240118.9ae4bea49/daemons/controld/controld_membership.c
Index: pacemaker-2.1.9+20241118.394d77ec98/daemons/controld/controld_membership.c
===================================================================
--- pacemaker-2.1.7+20240118.9ae4bea49.orig/daemons/controld/controld_membership.c
+++ pacemaker-2.1.7+20240118.9ae4bea49/daemons/controld/controld_membership.c
@@ -432,7 +432,7 @@ crm_update_quorum(gboolean quorum, gbool
--- pacemaker-2.1.9+20241118.394d77ec98.orig/daemons/controld/controld_membership.c
+++ pacemaker-2.1.9+20241118.394d77ec98/daemons/controld/controld_membership.c
@@ -431,7 +431,7 @@ crm_update_quorum(gboolean quorum, gbool
crm_xml_add_int(update, PCMK_XA_HAVE_QUORUM, quorum);
crm_xml_add(update, PCMK_XA_DC_UUID, controld_globals.our_uuid);
- crm_debug("Updating quorum status to %s", pcmk__btoa(quorum));
+ crm_notice("Updating quorum status to %s", pcmk__btoa(quorum));
controld_update_cib(PCMK_XE_CIB, update, cib_scope_local,
controld_update_cib(PCMK_XE_CIB, update, cib_none,
cib_quorum_update_complete);
free_xml(update);
Index: pacemaker-2.1.7+20240118.9ae4bea49/daemons/controld/controld_transition.c
pcmk__xml_free(update);
Index: pacemaker-2.1.9+20241118.394d77ec98/daemons/controld/controld_transition.c
===================================================================
--- pacemaker-2.1.7+20240118.9ae4bea49.orig/daemons/controld/controld_transition.c
+++ pacemaker-2.1.7+20240118.9ae4bea49/daemons/controld/controld_transition.c
@@ -167,7 +167,7 @@ do_te_invoke(long long action,
--- pacemaker-2.1.9+20241118.394d77ec98.orig/daemons/controld/controld_transition.c
+++ pacemaker-2.1.9+20241118.394d77ec98/daemons/controld/controld_transition.c
@@ -168,7 +168,7 @@ do_te_invoke(long long action,
CRM_CHECK(controld_globals.transition_graph != NULL,
controld_globals.transition_graph = create_blank_graph();
return);
@@ -30,16 +30,16 @@ Index: pacemaker-2.1.7+20240118.9ae4bea49/daemons/controld/controld_transition.c
controld_globals.transition_graph->id, ref, graph_input);
te_reset_job_counts();
Index: pacemaker-2.1.7+20240118.9ae4bea49/daemons/fenced/fenced_remote.c
Index: pacemaker-2.1.9+20241118.394d77ec98/daemons/fenced/fenced_remote.c
===================================================================
--- pacemaker-2.1.7+20240118.9ae4bea49.orig/daemons/fenced/fenced_remote.c
+++ pacemaker-2.1.7+20240118.9ae4bea49/daemons/fenced/fenced_remote.c
@@ -695,7 +695,7 @@ remote_op_timeout_one(gpointer userdata)
--- pacemaker-2.1.9+20241118.394d77ec98.orig/daemons/fenced/fenced_remote.c
+++ pacemaker-2.1.9+20241118.394d77ec98/daemons/fenced/fenced_remote.c
@@ -699,7 +699,7 @@ remote_op_timeout_one(gpointer userdata)
static void
finalize_timed_out_op(remote_fencing_op_t *op, const char *reason)
{
- crm_debug("Action '%s' targeting %s for client %s timed out "
+ crm_notice("Action '%s' targeting %s for client %s timed out "
CRM_XS " id=%.8s",
QB_XS " id=%.8s",
op->action, op->target, op->client_name, op->id);

View File

@@ -4,11 +4,11 @@ Date: Thu Apr 18 16:00:02 2013 +0800
Log: fencing: Drop the severity of the messages on registering a stonith device
Index: pacemaker-2.1.6+20231030.66cc0f083/daemons/fenced/fenced_commands.c
Index: pacemaker-2.1.9+20241118.394d77ec98/daemons/fenced/fenced_commands.c
===================================================================
--- pacemaker-2.1.6+20231030.66cc0f083.orig/daemons/fenced/fenced_commands.c
+++ pacemaker-2.1.6+20231030.66cc0f083/daemons/fenced/fenced_commands.c
@@ -1465,7 +1465,7 @@ stonith_device_register(xmlNode *dev, gb
--- pacemaker-2.1.9+20241118.394d77ec98.orig/daemons/fenced/fenced_commands.c
+++ pacemaker-2.1.9+20241118.394d77ec98/daemons/fenced/fenced_commands.c
@@ -1410,7 +1410,7 @@ stonith_device_register(xmlNode *dev, gb
g_hash_table_replace(device_list, device->id, device);
ndevices = g_hash_table_size(device_list);
@@ -17,16 +17,16 @@ Index: pacemaker-2.1.6+20231030.66cc0f083/daemons/fenced/fenced_commands.c
device->id, ndevices, pcmk__plural_s(ndevices));
}
Index: pacemaker-2.1.6+20231030.66cc0f083/daemons/fenced/fenced_cib.c
Index: pacemaker-2.1.9+20241118.394d77ec98/daemons/fenced/fenced_cib.c
===================================================================
--- pacemaker-2.1.6+20231030.66cc0f083.orig/daemons/fenced/fenced_cib.c
+++ pacemaker-2.1.6+20231030.66cc0f083/daemons/fenced/fenced_cib.c
@@ -618,7 +618,7 @@ update_cib_cache_cb(const char *event, x
--- pacemaker-2.1.9+20241118.394d77ec98.orig/daemons/fenced/fenced_cib.c
+++ pacemaker-2.1.9+20241118.394d77ec98/daemons/fenced/fenced_cib.c
@@ -496,7 +496,7 @@ update_cib_cache_cb(const char *event, x
break;
case -pcmk_err_diff_resync:
case -pcmk_err_diff_failed:
- crm_notice("[%s] Patch aborted: %s (%d)", event, pcmk_strerror(rc), rc);
+ crm_info("[%s] Patch aborted: %s (%d)", event, pcmk_strerror(rc), rc);
free_xml(local_cib);
pcmk__xml_free(local_cib);
local_cib = NULL;
break;

View File

@@ -1,8 +1,8 @@
Index: pacemaker-2.1.6+20231030.66cc0f083/python/pacemaker/_cts/audits.py
Index: pacemaker-2.1.9+20241118.394d77ec98/python/pacemaker/_cts/audits.py
===================================================================
--- pacemaker-2.1.6+20231030.66cc0f083.orig/python/pacemaker/_cts/audits.py
+++ pacemaker-2.1.6+20231030.66cc0f083/python/pacemaker/_cts/audits.py
@@ -80,13 +80,9 @@ class LogAudit(ClusterAudit):
--- pacemaker-2.1.9+20241118.394d77ec98.orig/python/pacemaker/_cts/audits.py
+++ pacemaker-2.1.9+20241118.394d77ec98/python/pacemaker/_cts/audits.py
@@ -82,13 +82,9 @@ class LogAudit(ClusterAudit):
for node in nodes:
if self._cm.env["have_systemd"]:
@@ -16,5 +16,5 @@ Index: pacemaker-2.1.6+20231030.66cc0f083/python/pacemaker/_cts/audits.py
- self._cm.log("ERROR: Cannot start 'systemd-journald' on %s" % node)
+ self._cm.log("ERROR: Cannot restart 'systemd-journald' on %s" % node)
(rc, _) = self._cm.rsh(node, "service %s restart" % self._cm.env["syslogd"])
if rc != 0:
if "syslogd" in self._cm.env:
(rc, _) = self._cm.rsh(node, "service %s restart" % self._cm.env["syslogd"])

View File

@@ -0,0 +1,116 @@
From a1d94f7ab57a71a36faa8282dd7db6af4cb25f39 Mon Sep 17 00:00:00 2001
From: Aleksei Burlakov <aburlakov@suse.com>
Date: Sat, 2 Nov 2024 12:49:01 +0100
Subject: [PATCH] Fix: crmadmin: return error if DC is not elected #2902 #3606
If the DC is not yet elected, the crmadmin will return an error.
(This change complements #3606).
---
cts/cli/regression.error_codes.exp | 4 ++++
include/crm/common/results.h | 2 ++
lib/common/results.c | 5 +++++
lib/pacemaker/pcmk_cluster_queries.c | 2 +-
4 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/cts/cli/regression.error_codes.exp b/cts/cli/regression.error_codes.exp
index f620845b9e..3c330eda3f 100644
--- a/cts/cli/regression.error_codes.exp
+++ b/cts/cli/regression.error_codes.exp
@@ -404,6 +404,7 @@ CRM_EX_ERROR - Error occurred
111: Requested item is not yet in effect
112: Could not determine status
113: Not applicable under current conditions
+ 114: DC is not yet elected
124: Timeout occurred
190: Service is active but might fail soon
191: Service is promoted but might fail soon
@@ -451,6 +452,7 @@ CRM_EX_ERROR - Error occurred
<result-code code="111" description="Requested item is not yet in effect"/>
<result-code code="112" description="Could not determine status"/>
<result-code code="113" description="Not applicable under current conditions"/>
+ <result-code code="114" description="DC is not yet elected"/>
<result-code code="124" description="Timeout occurred"/>
<result-code code="190" description="Service is active but might fail soon"/>
<result-code code="191" description="Service is promoted but might fail soon"/>
@@ -499,6 +501,7 @@ CRM_EX_ERROR - Error occurred
111: CRM_EX_NOT_YET_IN_EFFECT Requested item is not yet in effect
112: CRM_EX_INDETERMINATE Could not determine status
113: CRM_EX_UNSATISFIED Not applicable under current conditions
+ 114: CRM_EX_NO_DC DC is not yet elected
124: CRM_EX_TIMEOUT Timeout occurred
190: CRM_EX_DEGRADED Service is active but might fail soon
191: CRM_EX_DEGRADED_PROMOTED Service is promoted but might fail soon
@@ -546,6 +549,7 @@ CRM_EX_ERROR - Error occurred
<result-code code="111" name="CRM_EX_NOT_YET_IN_EFFECT" description="Requested item is not yet in effect"/>
<result-code code="112" name="CRM_EX_INDETERMINATE" description="Could not determine status"/>
<result-code code="113" name="CRM_EX_UNSATISFIED" description="Not applicable under current conditions"/>
+ <result-code code="114" name="CRM_EX_NO_DC" description="DC is not yet elected"/>
<result-code code="124" name="CRM_EX_TIMEOUT" description="Timeout occurred"/>
<result-code code="190" name="CRM_EX_DEGRADED" description="Service is active but might fail soon"/>
<result-code code="191" name="CRM_EX_DEGRADED_PROMOTED" description="Service is promoted but might fail soon"/>
diff --git a/include/crm/common/results.h b/include/crm/common/results.h
index 2fedb7c736..a671cb8efd 100644
--- a/include/crm/common/results.h
+++ b/include/crm/common/results.h
@@ -111,6 +111,7 @@ enum pcmk_rc_e {
/* When adding new values, use consecutively lower numbers, update the array
* in lib/common/results.c, and test with crm_error.
*/
+ pcmk_rc_no_dc = -1040,
pcmk_rc_compression = -1039,
pcmk_rc_ns_resolution = -1038,
pcmk_rc_no_transaction = -1037,
@@ -273,6 +274,7 @@ typedef enum crm_exit_e {
CRM_EX_NOT_YET_IN_EFFECT = 111, //!< Requested item is not in effect
CRM_EX_INDETERMINATE = 112, //!< Could not determine status
CRM_EX_UNSATISFIED = 113, //!< Requested item does not satisfy constraints
+ CRM_EX_NO_DC = 114, //!< DC is not yet elected, e.g. right after cluster restart
// Other
CRM_EX_TIMEOUT = 124, //!< Convention from timeout(1)
diff --git a/lib/common/results.c b/lib/common/results.c
index 507280492c..359d1eeccc 100644
--- a/lib/common/results.c
+++ b/lib/common/results.c
@@ -734,6 +734,7 @@ crm_exit_name(crm_exit_t exit_code)
case CRM_EX_NOT_YET_IN_EFFECT: return "CRM_EX_NOT_YET_IN_EFFECT";
case CRM_EX_INDETERMINATE: return "CRM_EX_INDETERMINATE";
case CRM_EX_UNSATISFIED: return "CRM_EX_UNSATISFIED";
+ case CRM_EX_NO_DC: return "CRM_EX_NO_DC";
case CRM_EX_OLD: return "CRM_EX_OLD";
case CRM_EX_TIMEOUT: return "CRM_EX_TIMEOUT";
case CRM_EX_DEGRADED: return "CRM_EX_DEGRADED";
@@ -786,6 +787,7 @@ crm_exit_str(crm_exit_t exit_code)
case CRM_EX_NOT_YET_IN_EFFECT: return "Requested item is not yet in effect";
case CRM_EX_INDETERMINATE: return "Could not determine status";
case CRM_EX_UNSATISFIED: return "Not applicable under current conditions";
+ case CRM_EX_NO_DC: return "DC is not yet elected";
case CRM_EX_OLD: return "Update was older than existing configuration";
case CRM_EX_TIMEOUT: return "Timeout occurred";
case CRM_EX_DEGRADED: return "Service is active but might fail soon";
@@ -922,6 +924,9 @@ pcmk_rc2exitc(int rc)
case pcmk_rc_bad_xml_patch:
return CRM_EX_DATAERR;
+ case pcmk_rc_no_dc:
+ return CRM_EX_NO_DC;
+
default:
return CRM_EX_ERROR;
}
diff --git a/lib/pacemaker/pcmk_cluster_queries.c b/lib/pacemaker/pcmk_cluster_queries.c
index 3f7584e9ff..e99d91f7d0 100644
--- a/lib/pacemaker/pcmk_cluster_queries.c
+++ b/lib/pacemaker/pcmk_cluster_queries.c
@@ -235,7 +235,7 @@ designated_controller_event_cb(pcmk_ipc_api_t *controld_api,
reply = (const pcmk_controld_api_reply_t *) event_data;
out->message(out, "dc", reply->host_from);
- data->rc = pcmk_rc_ok;
+ data->rc = reply->host_from ? pcmk_rc_ok : pcmk_rc_no_dc;
}
/*!
--
2.43.0

View File

@@ -0,0 +1,45 @@
From 20b1aaff9bb0e5fe8682c9c9630f2f34ec8b9086 Mon Sep 17 00:00:00 2001
From: Hideo Yamauchi <renayama19661014@ybb.ne.jp>
Date: Mon, 2 Dec 2024 16:26:42 +0900
Subject: [PATCH 1/2] Mid: systemd: Fix when monitor of systemd resource
continues to be pending.
---
daemons/execd/execd_commands.c | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/daemons/execd/execd_commands.c b/daemons/execd/execd_commands.c
index 5356c5cc97..8ade0ac345 100644
--- a/daemons/execd/execd_commands.c
+++ b/daemons/execd/execd_commands.c
@@ -903,6 +903,27 @@ action_complete(svc_action_t * action)
}
}
}
+ } else if (pcmk__str_any_of(cmd->action, PCMK_ACTION_MONITOR, PCMK_ACTION_STATUS, NULL) &&
+ (cmd->interval_ms > 0)) {
+ /* For monitors, excluding follow-up monitors, */
+ /* if the pending state persists from the first notification until its timeout, */
+ /* it will be treated as a timeout. */
+
+ if ((cmd->result.execution_status == PCMK_EXEC_PENDING) &&
+ (cmd->last_notify_op_status == PCMK_EXEC_PENDING)) {
+ int time_left = time(NULL) - (cmd->epoch_rcchange + (cmd->timeout_orig/1000));
+
+ if (time_left >= 0) {
+ crm_notice("Giving up on %s %s (rc=%d): monitor pending timeout (first pending notification=%s timeout=%ds)",
+ cmd->rsc_id, cmd->action,
+ cmd->result.exit_status, pcmk__trim(ctime(&cmd->epoch_rcchange)), cmd->timeout_orig);
+ pcmk__set_result(&(cmd->result), PCMK_OCF_UNKNOWN_ERROR,
+ PCMK_EXEC_TIMEOUT,
+ "Investigate reason for timeout, and adjust "
+ "configured operation timeout if necessary");
+ cmd_original_times(cmd);
+ }
+ }
}
}
#endif
--
2.43.0

View File

@@ -0,0 +1,36 @@
From 6fee07dfc482a0069184813437a84ebd7f11a7b4 Mon Sep 17 00:00:00 2001
From: Hideo Yamauchi <renayama19661014@ybb.ne.jp>
Date: Mon, 2 Dec 2024 16:27:34 +0900
Subject: [PATCH 2/2] Mid: systemd: If the state is Pending at the time of
probe, execute follow up monitor.
---
daemons/execd/execd_commands.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/daemons/execd/execd_commands.c b/daemons/execd/execd_commands.c
index 8ade0ac345..ece2315e36 100644
--- a/daemons/execd/execd_commands.c
+++ b/daemons/execd/execd_commands.c
@@ -869,8 +869,16 @@ action_complete(svc_action_t * action)
cmd->real_action = cmd->action;
cmd->action = pcmk__str_copy(PCMK_ACTION_MONITOR);
- } else if (cmd->real_action != NULL) {
- // This is follow-up monitor to check whether start/stop completed
+ } else if (cmd->result.execution_status == PCMK_EXEC_PENDING &&
+ pcmk__str_any_of(cmd->action, PCMK_ACTION_MONITOR, PCMK_ACTION_STATUS, NULL) &&
+ cmd->interval_ms == 0 &&
+ cmd->real_action == NULL) {
+ /* If the state is Pending at the time of probe, execute follow-up monitor. */
+ goagain = true;
+ cmd->real_action = cmd->action;
+ cmd->action = pcmk__str_copy(PCMK_ACTION_MONITOR);
+ } else if (cmd->real_action != NULL) {
+ // This is follow-up monitor to check whether start/stop/probe(monitor) completed
if (cmd->result.execution_status == PCMK_EXEC_PENDING) {
goagain = true;
--
2.43.0

View File

@@ -0,0 +1,104 @@
From 4193fb1d8e5023289e7a600a8dabc864b99f24a2 Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Tue, 10 Dec 2024 14:56:20 -0600
Subject: [PATCH] Low: controller: round timeout when checking remaining remote
command time
Use pcmk__timeout_ms2s() to ensure that remote command timeout values
are properly rounded.
Also, refactor to drop remaining_timeout from remote_ra_cmd_t. The value
was only ever used locally when calculated and doesn't need to be
remembered.
---
daemons/controld/controld_remote_ra.c | 33 +++++++++++++++++----------
1 file changed, 21 insertions(+), 12 deletions(-)
diff --git a/daemons/controld/controld_remote_ra.c b/daemons/controld/controld_remote_ra.c
index 060a231d74..df4e0bd6fc 100644
--- a/daemons/controld/controld_remote_ra.c
+++ b/daemons/controld/controld_remote_ra.c
@@ -55,7 +55,6 @@ typedef struct remote_ra_cmd_s {
int delay_id;
/*! timeout in ms for cmd */
int timeout;
- int remaining_timeout;
/*! recurring interval in ms */
guint interval_ms;
/*! interval timer id */
@@ -512,10 +511,18 @@ report_remote_ra_result(remote_ra_cmd_t * cmd)
lrmd__reset_result(&op);
}
-static void
-update_remaining_timeout(remote_ra_cmd_t * cmd)
+/*!
+ * \internal
+ * \brief Return a remote command's remaining timeout in seconds
+ *
+ * \param[in] cmd Remote command to check
+ *
+ * \return Command's remaining timeout in seconds
+ */
+static int
+remaining_timeout_sec(const remote_ra_cmd_t *cmd)
{
- cmd->remaining_timeout = ((cmd->timeout / 1000) - (time(NULL) - cmd->start_time)) * 1000;
+ return pcmk__timeout_ms2s(cmd->timeout) - (time(NULL) - cmd->start_time);
}
static gboolean
@@ -525,6 +532,7 @@ retry_start_cmd_cb(gpointer data)
remote_ra_data_t *ra_data = lrm_state->remote_ra_data;
remote_ra_cmd_t *cmd = NULL;
int rc = ETIME;
+ int remaining = 0;
if (!ra_data || !ra_data->cur_cmd) {
return FALSE;
@@ -534,10 +542,10 @@ retry_start_cmd_cb(gpointer data)
PCMK_ACTION_MIGRATE_FROM, NULL)) {
return FALSE;
}
- update_remaining_timeout(cmd);
- if (cmd->remaining_timeout > 0) {
- rc = handle_remote_ra_start(lrm_state, cmd, cmd->remaining_timeout);
+ remaining = remaining_timeout_sec(cmd);
+ if (remaining > 0) {
+ rc = handle_remote_ra_start(lrm_state, cmd, remaining * 1000);
} else {
pcmk__set_result(&(cmd->result), PCMK_OCF_UNKNOWN_ERROR,
PCMK_EXEC_TIMEOUT,
@@ -723,7 +731,7 @@ remote_lrm_op_callback(lrmd_event_data_t * op)
&& pcmk__strcase_any_of(cmd->action, PCMK_ACTION_START,
PCMK_ACTION_MIGRATE_FROM, NULL)) {
if (op->connection_rc < 0) {
- update_remaining_timeout(cmd);
+ int remaining = remaining_timeout_sec(cmd);
if ((op->connection_rc == -ENOKEY)
|| (op->connection_rc == -EKEYREJECTED)) {
@@ -732,14 +740,15 @@ remote_lrm_op_callback(lrmd_event_data_t * op)
PCMK_EXEC_ERROR,
pcmk_strerror(op->connection_rc));
- } else if (cmd->remaining_timeout > 3000) {
- crm_trace("rescheduling start, remaining timeout %d", cmd->remaining_timeout);
+ } else if (remaining > 3) {
+ crm_trace("Rescheduling start (%ds remains before timeout)",
+ remaining);
pcmk__create_timer(1000, retry_start_cmd_cb, lrm_state);
return;
} else {
- crm_trace("can't reschedule start, remaining timeout too small %d",
- cmd->remaining_timeout);
+ crm_trace("Not enough time before timeout (%ds) "
+ "to reschedule start", remaining);
pcmk__format_result(&(cmd->result), PCMK_OCF_UNKNOWN_ERROR,
PCMK_EXEC_TIMEOUT,
"%s without enough time to retry",
--
2.43.0

View File

@@ -0,0 +1,23 @@
From 78e6b46a2bbb80af24a804045313370a6404a251 Mon Sep 17 00:00:00 2001
From: Hideo Yamauchi <renayama19661014@ybb.ne.jp>
Date: Thu, 9 Jan 2025 08:32:48 +0900
Subject: [PATCH] Mid: schedulerd: Resetting error and warning flags.
---
lib/pengine/status.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
Index: pacemaker-3.0.0+20250128.fa492f5181/lib/pengine/status.c
===================================================================
--- pacemaker-3.0.0+20250128.fa492f5181.orig/lib/pengine/status.c
+++ pacemaker-3.0.0+20250128.fa492f5181/lib/pengine/status.c
@@ -447,6 +447,9 @@ set_working_set_defaults(pcmk_scheduler_
|pcmk__sched_stop_removed_resources
|pcmk__sched_cancel_removed_actions);
#endif
+
+ pcmk__config_has_error = false;
+ pcmk__config_has_warning = false;
}
pcmk_resource_t *

View File

@@ -0,0 +1,374 @@
From c120c1ebbcb68966e229d4c3647fdbb511150f94 Mon Sep 17 00:00:00 2001
From: Reid Wahl <nrwahl@protonmail.com>
Date: Wed, 8 Jan 2025 20:44:25 -0800
Subject: [PATCH 1/2] Low: various: Correct some printf specifiers
As of 18a93372, we can use the 'z' modifier for size_t and ssize_t. So
here we take advantage of that to avoid some (long long) casts.
We also correct some incorrect specifiers (signed vs. unsigned, and
using proper macros from inttypes.h).
Signed-off-by: Reid Wahl <nrwahl@protonmail.com>
---
daemons/controld/controld_fsa.c | 12 +++---
daemons/controld/controld_messages.c | 8 ++--
lib/cluster/cpg.c | 24 +++++------
lib/common/ipc_server.c | 25 ++++++-----
lib/common/remote.c | 62 ++++++++++++----------------
lib/services/services_linux.c | 17 ++++----
6 files changed, 67 insertions(+), 81 deletions(-)
Index: pacemaker-3.0.0+20250128.fa492f5181/daemons/controld/controld_fsa.c
===================================================================
--- pacemaker-3.0.0+20250128.fa492f5181.orig/daemons/controld/controld_fsa.c
+++ pacemaker-3.0.0+20250128.fa492f5181/daemons/controld/controld_fsa.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2004-2024 the Pacemaker project contributors
+ * Copyright 2004-2025 the Pacemaker project contributors
*
* The version control history for this file may have further details.
*
@@ -9,6 +9,7 @@
#include <crm_internal.h>
+#include <inttypes.h> // PRIx64
#include <sys/param.h>
#include <stdio.h>
#include <stdint.h> // uint64_t
@@ -279,9 +280,10 @@ s_crmd_fsa(enum crmd_fsa_cause cause)
|| (controld_globals.fsa_actions != A_NOTHING)
|| pcmk_is_set(controld_globals.flags, controld_fsa_is_stalled)) {
- crm_debug("Exiting the FSA: queue=%d, fsa_actions=%#llx, stalled=%s",
+ crm_debug("Exiting the FSA: queue=%d, fsa_actions=%" PRIx64
+ ", stalled=%s",
g_list_length(controld_globals.fsa_message_queue),
- (unsigned long long) controld_globals.fsa_actions,
+ controld_globals.fsa_actions,
pcmk__flag_text(controld_globals.flags,
controld_fsa_is_stalled));
} else {
@@ -505,9 +507,9 @@ s_crmd_fsa_actions(fsa_data_t * fsa_data
/* Error checking and reporting */
} else {
- crm_err("Action %s not supported " QB_XS " %#llx",
+ crm_err("Action %s not supported " QB_XS " %" PRIx64,
fsa_action2string(controld_globals.fsa_actions),
- (unsigned long long) controld_globals.fsa_actions);
+ controld_globals.fsa_actions);
register_fsa_error_adv(C_FSA_INTERNAL, I_ERROR, fsa_data, NULL,
__func__);
}
Index: pacemaker-3.0.0+20250128.fa492f5181/daemons/controld/controld_messages.c
===================================================================
--- pacemaker-3.0.0+20250128.fa492f5181.orig/daemons/controld/controld_messages.c
+++ pacemaker-3.0.0+20250128.fa492f5181/daemons/controld/controld_messages.c
@@ -9,8 +9,10 @@
#include <crm_internal.h>
-#include <sys/param.h>
+#include <inttypes.h> // PRIx64
+#include <stdint.h> // uint64_t
#include <string.h>
+#include <sys/param.h>
#include <time.h>
#include <crm/crm.h>
@@ -110,8 +112,7 @@ register_fsa_input_adv(enum crmd_fsa_cau
fsa_data->actions = with_actions;
if (with_actions != A_NOTHING) {
- crm_trace("Adding actions %.16llx to input",
- (unsigned long long) with_actions);
+ crm_trace("Adding actions %.16" PRIx64 " to input", with_actions);
}
if (data != NULL) {
@@ -1382,4 +1383,3 @@ broadcast_remote_state_message(const cha
pcmk__cluster_send_message(NULL, pcmk_ipc_controld, msg);
pcmk__xml_free(msg);
}
-
Index: pacemaker-3.0.0+20250128.fa492f5181/lib/cluster/cpg.c
===================================================================
--- pacemaker-3.0.0+20250128.fa492f5181.orig/lib/cluster/cpg.c
+++ pacemaker-3.0.0+20250128.fa492f5181/lib/cluster/cpg.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2004-2024 the Pacemaker project contributors
+ * Copyright 2004-2025 the Pacemaker project contributors
*
* The version control history for this file may have further details.
*
@@ -237,8 +237,7 @@ crm_cs_flush(gpointer data)
}
sent++;
- crm_trace("CPG message sent, size=%llu",
- (unsigned long long) iov->iov_len);
+ crm_trace("CPG message sent, size=%zu", iov->iov_len);
cs_message_queue = g_list_remove(cs_message_queue, iov);
free(iov->iov_base);
@@ -360,10 +359,9 @@ check_message_sanity(const pcmk__cpg_msg
(((msg->size > 1) && (msg->data[msg->size - 2] == '\0'))
|| (msg->data[msg->size - 1] != '\0'))) {
crm_err("CPG message %d from %s invalid: "
- "Payload does not end at byte %llu "
+ "Payload does not end at byte %" PRIu32 " "
QB_XS " from %s[%u] to %s@%s",
- msg->id, ais_dest(&(msg->sender)),
- (unsigned long long) msg->size,
+ msg->id, ais_dest(&(msg->sender)), msg->size,
msg_type2text(msg->sender.type), msg->sender.pid,
msg_type2text(msg->host.type), ais_dest(&(msg->host)));
return false;
@@ -1009,15 +1007,13 @@ send_cpg_text(const char *data, const pc
iov->iov_len = msg->header.size;
if (msg->compressed_size > 0) {
- crm_trace("Queueing CPG message %u to %s "
- "(%llu bytes, %d bytes compressed payload): %.200s",
- msg->id, target, (unsigned long long) iov->iov_len,
- msg->compressed_size, data);
+ crm_trace("Queueing CPG message %" PRIu32 " to %s "
+ "(%zu bytes, %" PRIu32 " bytes compressed payload): %.200s",
+ msg->id, target, iov->iov_len, msg->compressed_size, data);
} else {
- crm_trace("Queueing CPG message %u to %s "
- "(%llu bytes, %d bytes payload): %.200s",
- msg->id, target, (unsigned long long) iov->iov_len,
- msg->size, data);
+ crm_trace("Queueing CPG message %" PRIu32 " to %s "
+ "(%zu bytes, %" PRIu32 " bytes payload): %.200s",
+ msg->id, target, iov->iov_len, msg->size, data);
}
free(target);
Index: pacemaker-3.0.0+20250128.fa492f5181/lib/common/ipc_server.c
===================================================================
--- pacemaker-3.0.0+20250128.fa492f5181.orig/lib/common/ipc_server.c
+++ pacemaker-3.0.0+20250128.fa492f5181/lib/common/ipc_server.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2004-2024 the Pacemaker project contributors
+ * Copyright 2004-2025 the Pacemaker project contributors
*
* The version control history for this file may have further details.
*
@@ -540,9 +540,8 @@ crm_ipcs_flush_events(pcmk__client_t *c)
queue_len -= sent;
if (sent > 0 || queue_len) {
- crm_trace("Sent %d events (%d remaining) for %p[%d]: %s (%lld)",
- sent, queue_len, c->ipcs, c->pid,
- pcmk_rc_str(rc), (long long) qb_rc);
+ crm_trace("Sent %u events (%u remaining) for %p[%d]: %s (%zd)",
+ sent, queue_len, c->ipcs, c->pid, pcmk_rc_str(rc), qb_rc);
}
if (queue_len) {
Index: pacemaker-3.0.0+20250128.fa492f5181/lib/common/remote.c
===================================================================
--- pacemaker-3.0.0+20250128.fa492f5181.orig/lib/common/remote.c
+++ pacemaker-3.0.0+20250128.fa492f5181/lib/common/remote.c
@@ -137,29 +137,26 @@ send_tls(gnutls_session_t session, struc
return EINVAL;
}
- crm_trace("Sending TLS message of %llu bytes",
- (unsigned long long) unsent_len);
+ crm_trace("Sending TLS message of %zu bytes", unsent_len);
+
while (true) {
gnutls_rc = gnutls_record_send(session, unsent, unsent_len);
if (gnutls_rc == GNUTLS_E_INTERRUPTED || gnutls_rc == GNUTLS_E_AGAIN) {
- crm_trace("Retrying to send %llu bytes remaining",
- (unsigned long long) unsent_len);
+ crm_trace("Retrying to send %zu bytes remaining", unsent_len);
} else if (gnutls_rc < 0) {
// Caller can log as error if necessary
- crm_info("TLS connection terminated: %s " QB_XS " rc=%lld",
- gnutls_strerror((int) gnutls_rc),
- (long long) gnutls_rc);
+ crm_info("TLS connection terminated: %s " QB_XS " rc=%zd",
+ gnutls_strerror((int) gnutls_rc), gnutls_rc);
return ECONNABORTED;
} else if (gnutls_rc < unsent_len) {
- crm_trace("Sent %lld of %llu bytes remaining",
- (long long) gnutls_rc, (unsigned long long) unsent_len);
+ crm_trace("Sent %zd of %zu bytes remaining", gnutls_rc, unsent_len);
unsent_len -= gnutls_rc;
unsent += gnutls_rc;
} else {
- crm_trace("Sent all %lld bytes remaining", (long long) gnutls_rc);
+ crm_trace("Sent all %zd bytes remaining", gnutls_rc);
break;
}
}
@@ -178,16 +175,16 @@ send_plaintext(int sock, struct iovec *i
return EINVAL;
}
- crm_debug("Sending plaintext message of %llu bytes to socket %d",
- (unsigned long long) unsent_len, sock);
+ crm_debug("Sending plaintext message of %zu bytes to socket %d",
+ unsent_len, sock);
while (true) {
write_rc = write(sock, unsent, unsent_len);
if (write_rc < 0) {
int rc = errno;
if ((errno == EINTR) || (errno == EAGAIN)) {
- crm_trace("Retrying to send %llu bytes remaining to socket %d",
- (unsigned long long) unsent_len, sock);
+ crm_trace("Retrying to send %zu bytes remaining to socket %d",
+ unsent_len, sock);
continue;
}
@@ -197,15 +194,14 @@ send_plaintext(int sock, struct iovec *i
return rc;
} else if (write_rc < unsent_len) {
- crm_trace("Sent %lld of %llu bytes remaining",
- (long long) write_rc, (unsigned long long) unsent_len);
+ crm_trace("Sent %zd of %zu bytes remaining", write_rc, unsent_len);
unsent += write_rc;
unsent_len -= write_rc;
continue;
} else {
- crm_trace("Sent all %lld bytes remaining: %.100s",
- (long long) write_rc, (char *) (iov->iov_base));
+ crm_trace("Sent all %zd bytes remaining: %.100s",
+ write_rc, (char *) (iov->iov_base));
break;
}
}
@@ -456,8 +452,7 @@ pcmk__read_available_remote_data(pcmk__r
/* automatically grow the buffer when needed */
if(remote->buffer_size < read_len) {
remote->buffer_size = 2 * read_len;
- crm_trace("Expanding buffer to %llu bytes",
- (unsigned long long) remote->buffer_size);
+ crm_trace("Expanding buffer to %zu bytes", remote->buffer_size);
remote->buffer = pcmk__realloc(remote->buffer, remote->buffer_size + 1);
}
@@ -470,8 +465,8 @@ pcmk__read_available_remote_data(pcmk__r
} else if (read_rc == GNUTLS_E_AGAIN) {
rc = EAGAIN;
} else if (read_rc < 0) {
- crm_debug("TLS receive failed: %s (%lld)",
- gnutls_strerror(read_rc), (long long) read_rc);
+ crm_debug("TLS receive failed: %s (%zd)",
+ gnutls_strerror((int) read_rc), read_rc);
rc = EIO;
}
} else if (remote->tcp_socket) {
@@ -491,35 +486,32 @@ pcmk__read_available_remote_data(pcmk__r
remote->buffer_offset += read_rc;
/* always null terminate buffer, the +1 to alloc always allows for this. */
remote->buffer[remote->buffer_offset] = '\0';
- crm_trace("Received %lld more bytes (%llu total)",
- (long long) read_rc,
- (unsigned long long) remote->buffer_offset);
+ crm_trace("Received %zd more bytes (%zu total)",
+ read_rc, remote->buffer_offset);
} else if ((rc == EINTR) || (rc == EAGAIN)) {
crm_trace("No data available for non-blocking remote read: %s (%d)",
pcmk_rc_str(rc), rc);
} else if (read_rc == 0) {
- crm_debug("End of remote data encountered after %llu bytes",
- (unsigned long long) remote->buffer_offset);
+ crm_debug("End of remote data encountered after %zu bytes",
+ remote->buffer_offset);
return ENOTCONN;
} else {
- crm_debug("Error receiving remote data after %llu bytes: %s (%d)",
- (unsigned long long) remote->buffer_offset,
- pcmk_rc_str(rc), rc);
+ crm_debug("Error receiving remote data after %zu bytes: %s (%d)",
+ remote->buffer_offset, pcmk_rc_str(rc), rc);
return ENOTCONN;
}
header = localized_remote_header(remote);
if(header) {
if(remote->buffer_offset < header->size_total) {
- crm_trace("Read partial remote message (%llu of %u bytes)",
- (unsigned long long) remote->buffer_offset,
- header->size_total);
+ crm_trace("Read partial remote message (%zu of %" PRIu32 " bytes)",
+ remote->buffer_offset, header->size_total);
} else {
- crm_trace("Read full remote message of %llu bytes",
- (unsigned long long) remote->buffer_offset);
+ crm_trace("Read full remote message of %zu bytes",
+ remote->buffer_offset);
return pcmk_rc_ok;
}
}
Index: pacemaker-3.0.0+20250128.fa492f5181/lib/services/services_linux.c
===================================================================
--- pacemaker-3.0.0+20250128.fa492f5181.orig/lib/services/services_linux.c
+++ pacemaker-3.0.0+20250128.fa492f5181/lib/services/services_linux.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2010-2024 the Pacemaker project contributors
+ * Copyright 2010-2025 the Pacemaker project contributors
*
* The version control history for this file may have further details.
*
@@ -305,14 +305,12 @@ svc_read_output(int fd, svc_action_t * o
if (is_stderr && op->stderr_data) {
len = strlen(op->stderr_data);
data = op->stderr_data;
- crm_trace("Reading %s stderr into offset %lld",
- op->id, (long long) len);
+ crm_trace("Reading %s stderr into offset %zu", op->id, len);
} else if (is_stderr == FALSE && op->stdout_data) {
len = strlen(op->stdout_data);
data = op->stdout_data;
- crm_trace("Reading %s stdout into offset %lld",
- op->id, (long long) len);
+ crm_trace("Reading %s stdout into offset %zu", op->id, len);
} else {
crm_trace("Reading %s %s", op->id, out_type(is_stderr));
@@ -324,8 +322,8 @@ svc_read_output(int fd, svc_action_t * o
if (rc > 0) {
if (len < MAX_OUTPUT) {
buf[rc] = 0;
- crm_trace("Received %lld bytes of %s %s: %.80s",
- (long long) rc, op->id, out_type(is_stderr), buf);
+ crm_trace("Received %zd bytes of %s %s: %.80s",
+ rc, op->id, out_type(is_stderr), buf);
data = pcmk__realloc(data, len + rc + 1);
strcpy(data + len, buf);
len += rc;
@@ -340,9 +338,8 @@ svc_read_output(int fd, svc_action_t * o
} while ((rc == buf_read_len) || (rc < 0));
if (discarded > 0) {
- crm_warn("Truncated %s %s to %lld bytes (discarded %lld)",
- op->id, out_type(is_stderr), (long long) len,
- (long long) discarded);
+ crm_warn("Truncated %s %s to %zu bytes (discarded %zu)",
+ op->id, out_type(is_stderr), len, discarded);
}
if (is_stderr) {

View File

@@ -0,0 +1,121 @@
From d8564d24f704fa6d5b1f6e9963b5b3587953a598 Mon Sep 17 00:00:00 2001
From: Reid Wahl <nrwahl@protonmail.com>
Date: Wed, 8 Jan 2025 22:49:08 -0800
Subject: [PATCH 2/2] Low: libcrmcommon: Catch correct errors for remote
connection sockets
connect() can be interrupted by a signal, and we can treat that the same
as EAGAIN.
select() doesn't set errno to EINPROGRESS, but it can set EINTR.
read() and write() can set EWOULDBLOCK, which is not guaranteed to have
the same value as EAGAIN. However, it might (and in fact it does on my
system), which causes a compiler error ("duplicate case value") if we
use a switch statement for those two cases.
Signed-off-by: Reid Wahl <nrwahl@protonmail.com>
---
lib/common/remote.c | 36 +++++++++++++++++++++---------------
1 file changed, 21 insertions(+), 15 deletions(-)
diff --git a/lib/common/remote.c b/lib/common/remote.c
index 6a4a4ff79a..bb29ad938c 100644
--- a/lib/common/remote.c
+++ b/lib/common/remote.c
@@ -169,7 +169,6 @@ send_plaintext(int sock, struct iovec *iov)
{
const char *unsent = iov->iov_base;
size_t unsent_len = iov->iov_len;
- ssize_t write_rc;
if (unsent == NULL) {
return EINVAL;
@@ -178,11 +177,12 @@ send_plaintext(int sock, struct iovec *iov)
crm_debug("Sending plaintext message of %zu bytes to socket %d",
unsent_len, sock);
while (true) {
- write_rc = write(sock, unsent, unsent_len);
+ ssize_t write_rc = write(sock, unsent, unsent_len);
+
if (write_rc < 0) {
int rc = errno;
- if ((errno == EINTR) || (errno == EAGAIN)) {
+ if ((rc == EINTR) || (rc == EAGAIN) || (rc == EWOULDBLOCK)) {
crm_trace("Retrying to send %zu bytes remaining to socket %d",
unsent_len, sock);
continue;
@@ -197,15 +197,13 @@ send_plaintext(int sock, struct iovec *iov)
crm_trace("Sent %zd of %zu bytes remaining", write_rc, unsent_len);
unsent += write_rc;
unsent_len -= write_rc;
- continue;
} else {
crm_trace("Sent all %zd bytes remaining: %.100s",
write_rc, (char *) (iov->iov_base));
- break;
+ return pcmk_rc_ok;
}
}
- return pcmk_rc_ok;
}
// \return Standard Pacemaker return code
@@ -485,15 +483,15 @@ pcmk__read_available_remote_data(pcmk__remote_t *remote)
crm_trace("Received %zd more bytes (%zu total)",
read_rc, remote->buffer_offset);
- } else if ((rc == EINTR) || (rc == EAGAIN)) {
- crm_trace("No data available for non-blocking remote read: %s (%d)",
- pcmk_rc_str(rc), rc);
-
} else if (read_rc == 0) {
crm_debug("End of remote data encountered after %zu bytes",
remote->buffer_offset);
return ENOTCONN;
+ } else if ((rc == EINTR) || (rc == EAGAIN) || (rc == EWOULDBLOCK)) {
+ crm_trace("No data available for non-blocking remote read: %s (%d)",
+ pcmk_rc_str(rc), rc);
+
} else {
crm_debug("Error receiving remote data after %zu bytes: %s (%d)",
remote->buffer_offset, pcmk_rc_str(rc), rc);
@@ -608,7 +606,7 @@ check_connect_finished(gpointer userdata)
if (rc < 0) { // select() error
rc = errno;
- if ((rc == EINPROGRESS) || (rc == EAGAIN)) {
+ if ((rc == EINTR) || (rc == EAGAIN)) {
if ((time(NULL) - cb_data->start) < pcmk__timeout_ms2s(cb_data->timeout_ms)) {
return TRUE; // There is time left, so reschedule timer
} else {
@@ -704,11 +702,19 @@ connect_socket_retry(int sock, const struct sockaddr *addr, socklen_t addrlen,
}
rc = connect(sock, addr, addrlen);
- if (rc < 0 && (errno != EINPROGRESS) && (errno != EAGAIN)) {
+ if (rc < 0) {
rc = errno;
- crm_warn("Could not connect socket: %s " QB_XS " rc=%d",
- pcmk_rc_str(rc), rc);
- return rc;
+ switch (rc) {
+ case EINTR:
+ case EINPROGRESS:
+ case EAGAIN:
+ break;
+
+ default:
+ crm_warn("Could not connect socket: %s " QB_XS " rc=%d",
+ pcmk_rc_str(rc), rc);
+ return rc;
+ }
}
cb_data = pcmk__assert_alloc(1, sizeof(struct tcp_async_cb_data));
--
2.43.0

View File

@@ -0,0 +1,38 @@
From 961be70139c04beb19d4b514afa73eadee54d23c Mon Sep 17 00:00:00 2001
From: Athos Ribeiro <athos.ribeiro@canonical.com>
Date: Thu, 9 Jan 2025 11:37:14 -0300
Subject: [PATCH] Low: controller: address format-overflow warnings
When using -O3 to build pacemaker, gcc (14) will throw format-overflow
warnings for some possibly null '%s' directive arguments. While we could
address the current instance of such warning by introducing checks for
null pointers, let's just remove this log entry here since it is not
meaningful.
alerts.c:153:19: error: '%s' directive argument is null [-Werror=format-overflow=]
153 | crm_trace("Inserting alert key %s = '%s'", *key, value);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
alerts.c:153:46: note: format string is defined here
153 | crm_trace("Inserting alert key %s = '%s'", *key, value);
|
Signed-off-by: Athos Ribeiro <athos.ribeiro@canonical.com>
---
daemons/controld/controld_te_events.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/daemons/controld/controld_te_events.c b/daemons/controld/controld_te_events.c
index 9ac0a2c4a2..b65f43ab10 100644
--- a/daemons/controld/controld_te_events.c
+++ b/daemons/controld/controld_te_events.c
@@ -327,7 +327,6 @@ get_cancel_action(const char *id, const char *node)
task = crm_element_value(action->xml, PCMK__XA_OPERATION_KEY);
if (!pcmk__str_eq(task, id, pcmk__str_casei)) {
- crm_trace("Wrong key %s for %s on %s", task, id, node);
continue;
}
--
2.43.0

View File

@@ -0,0 +1,35 @@
From 9e68cb64f6660fe9e40c4ef75e1a891aa0804dbb Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Thu, 24 Oct 2024 11:18:18 -0500
Subject: [PATCH 01/16] Refactor: pacemaker-attrd: always add remoteness to
attribute value XML
... even if false, for code consistency and simplicity
---
daemons/attrd/attrd_attributes.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/daemons/attrd/attrd_attributes.c b/daemons/attrd/attrd_attributes.c
index b3eda6e2f9..74301d678a 100644
--- a/daemons/attrd/attrd_attributes.c
+++ b/daemons/attrd/attrd_attributes.c
@@ -143,14 +143,13 @@ attrd_add_value_xml(xmlNode *parent, const attribute_t *a,
crm_xml_add(xml, PCMK__XA_ATTR_SET, a->set_id);
crm_xml_add(xml, PCMK__XA_ATTR_USER, a->user);
pcmk__xe_add_node(xml, v->nodename, v->nodeid);
- if (pcmk_is_set(v->flags, attrd_value_remote)) {
- crm_xml_add_int(xml, PCMK__XA_ATTR_IS_REMOTE, 1);
- }
crm_xml_add(xml, PCMK__XA_ATTR_VALUE, v->current);
crm_xml_add_int(xml, PCMK__XA_ATTR_DAMPENING,
pcmk__timeout_ms2s(a->timeout_ms));
crm_xml_add_int(xml, PCMK__XA_ATTR_IS_PRIVATE,
pcmk_is_set(a->flags, attrd_attr_is_private));
+ crm_xml_add_int(xml, PCMK__XA_ATTR_IS_REMOTE,
+ pcmk_is_set(v->flags, attrd_value_remote));
crm_xml_add_int(xml, PCMK__XA_ATTRD_IS_FORCE_WRITE, force_write);
return xml;
--
2.43.0

View File

@@ -0,0 +1,85 @@
From a1a2e20080688865b2f49e7f84b98e41e5b0381f Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Thu, 24 Oct 2024 12:13:54 -0500
Subject: [PATCH 02/16] Refactor: pacemaker-attrd: don't use "uuid" to mean
"XML ID"
... in write_attribute()
---
daemons/attrd/attrd_cib.c | 33 +++++++++++++++++----------------
1 file changed, 17 insertions(+), 16 deletions(-)
diff --git a/daemons/attrd/attrd_cib.c b/daemons/attrd/attrd_cib.c
index a40e7a1087..b8f509ab7d 100644
--- a/daemons/attrd/attrd_cib.c
+++ b/daemons/attrd/attrd_cib.c
@@ -543,21 +543,22 @@ write_attribute(attribute_t *a, bool ignore_delay)
/* Iterate over each peer value of this attribute */
g_hash_table_iter_init(&iter, a->values);
while (g_hash_table_iter_next(&iter, NULL, (gpointer *) &v)) {
- const char *uuid = NULL;
+ const char *node_xml_id = NULL;
+ // Try to get the XML ID used for the node in the CIB
if (pcmk_is_set(v->flags, attrd_value_remote)) {
- /* If this is a Pacemaker Remote node, the node's UUID is the same
- * as its name, which we already have.
- */
- uuid = v->nodename;
+ // A Pacemaker Remote node's XML ID is the same as its name
+ node_xml_id = v->nodename;
} else {
- // This will create a cluster node cache entry if none exists
+ /* Get cluster node XML IDs from the peer caches.
+ * This will create a cluster node cache entry if none exists.
+ */
pcmk__node_status_t *peer = pcmk__get_node(v->nodeid, v->nodename,
NULL,
pcmk__node_search_any);
- uuid = peer->xml_id;
+ node_xml_id = peer->xml_id;
// Remember peer's node ID if we're just now learning it
if ((peer->cluster_layer_id != 0) && (v->nodeid == 0)) {
@@ -574,27 +575,27 @@ write_attribute(attribute_t *a, bool ignore_delay)
}
// Defer write if this is a cluster node that's never been seen
- if (uuid == NULL) {
+ if (node_xml_id == NULL) {
attrd_set_attr_flags(a, attrd_attr_uuid_missing);
- crm_notice("Cannot update %s[%s]='%s' now because node's UUID is "
- "unknown (will retry if learned)",
+ crm_notice("Cannot write %s[%s]='%s' to CIB because node's XML ID "
+ "is unknown (will retry if learned)",
a->id, v->nodename, v->current);
continue;
}
// Update this value as part of the CIB transaction we're building
- rc = add_attr_update(a, v->current, uuid);
+ rc = add_attr_update(a, v->current, node_xml_id);
if (rc != pcmk_rc_ok) {
- crm_err("Failed to update %s[%s]='%s': %s "
- QB_XS " node uuid=%s id=%" PRIu32,
+ crm_err("Couldn't add %s[%s]='%s' to CIB transaction: %s "
+ QB_XS " node XML ID %s",
a->id, v->nodename, v->current, pcmk_rc_str(rc),
- uuid, v->nodeid);
+ node_xml_id);
continue;
}
- crm_debug("Writing %s[%s]=%s (node-state-id=%s node-id=%" PRIu32 ")",
+ crm_debug("Added %s[%s]=%s to CIB transaction (node XML ID %s)",
a->id, v->nodename, pcmk__s(v->current, "(unset)"),
- uuid, v->nodeid);
+ node_xml_id);
cib_updates++;
/* Preservation of the attribute to transmit alert */
--
2.43.0

View File

@@ -0,0 +1,42 @@
From 704b42f153f060af814ae83e1193d383f14088c4 Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Thu, 24 Oct 2024 12:29:33 -0500
Subject: [PATCH 03/16] Low: pacemaker-attrd: use API to get peer XML ID
... for cleaner separation, and to ensure it is set whenever possible.
---
daemons/attrd/attrd_cib.c | 2 +-
daemons/attrd/attrd_corosync.c | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/daemons/attrd/attrd_cib.c b/daemons/attrd/attrd_cib.c
index b8f509ab7d..6129f54c75 100644
--- a/daemons/attrd/attrd_cib.c
+++ b/daemons/attrd/attrd_cib.c
@@ -558,7 +558,7 @@ write_attribute(attribute_t *a, bool ignore_delay)
NULL,
pcmk__node_search_any);
- node_xml_id = peer->xml_id;
+ node_xml_id = pcmk__cluster_node_uuid(peer);
// Remember peer's node ID if we're just now learning it
if ((peer->cluster_layer_id != 0) && (v->nodeid == 0)) {
diff --git a/daemons/attrd/attrd_corosync.c b/daemons/attrd/attrd_corosync.c
index eeb2b9b1df..72ebc1843b 100644
--- a/daemons/attrd/attrd_corosync.c
+++ b/daemons/attrd/attrd_corosync.c
@@ -215,8 +215,8 @@ record_peer_nodeid(attribute_value_t *v, const char *host)
pcmk__node_status_t *known_peer =
pcmk__get_node(v->nodeid, host, NULL, pcmk__node_search_cluster_member);
- crm_trace("Learned %s has node id %s",
- known_peer->name, known_peer->xml_id);
+ crm_trace("Learned %s has XML ID %s",
+ known_peer->name, pcmk__cluster_node_uuid(known_peer));
if (attrd_election_won()) {
attrd_write_attributes(attrd_write_changed);
}
--
2.43.0

View File

@@ -0,0 +1,48 @@
From 28faf9cdd3cd79b0290b9b457c5192421fc5c52f Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Thu, 24 Oct 2024 14:46:36 -0500
Subject: [PATCH 04/16] Low: pacemaker-attrd: bail earlier if value won't be
written
We only need the node XML ID for writing values to the CIB, so if a
value will never be written, skip looking for the XML ID.
This does mean that cluster nodes won't be added to the peer cache for
unwritten attributes, but that shouldn't matter for them.
---
daemons/attrd/attrd_cib.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/daemons/attrd/attrd_cib.c b/daemons/attrd/attrd_cib.c
index 6129f54c75..808a7bc7e3 100644
--- a/daemons/attrd/attrd_cib.c
+++ b/daemons/attrd/attrd_cib.c
@@ -545,6 +545,12 @@ write_attribute(attribute_t *a, bool ignore_delay)
while (g_hash_table_iter_next(&iter, NULL, (gpointer *) &v)) {
const char *node_xml_id = NULL;
+ // Private attributes (or any in standalone mode) are not written to CIB
+ if (stand_alone || pcmk_is_set(a->flags, attrd_attr_is_private)) {
+ private_updates++;
+ continue;
+ }
+
// Try to get the XML ID used for the node in the CIB
if (pcmk_is_set(v->flags, attrd_value_remote)) {
// A Pacemaker Remote node's XML ID is the same as its name
@@ -568,12 +574,6 @@ write_attribute(attribute_t *a, bool ignore_delay)
}
}
- /* If this is a private attribute, no update needs to be sent */
- if (stand_alone || pcmk_is_set(a->flags, attrd_attr_is_private)) {
- private_updates++;
- continue;
- }
-
// Defer write if this is a cluster node that's never been seen
if (node_xml_id == NULL) {
attrd_set_attr_flags(a, attrd_attr_uuid_missing);
--
2.43.0

View File

@@ -0,0 +1,244 @@
From ee01715f3ae7ff64da6f8aad0d3537faa84b013b Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Mon, 28 Oct 2024 11:24:08 -0500
Subject: [PATCH 05/16] Refactor: libcrmcluster: allow searching by XML ID in
pcmk__search_node_caches()
---
daemons/attrd/attrd_ipc.c | 2 +-
daemons/based/based_messages.c | 2 +-
daemons/controld/controld_corosync.c | 2 +-
daemons/controld/controld_fencing.c | 2 +-
daemons/controld/controld_messages.c | 8 ++++---
daemons/fenced/fenced_commands.c | 2 +-
daemons/fenced/fenced_history.c | 2 +-
daemons/fenced/fenced_remote.c | 2 +-
include/crm/cluster/internal.h | 1 +
lib/cluster/cpg.c | 2 +-
lib/cluster/membership.c | 35 ++++++++++++++++++----------
11 files changed, 37 insertions(+), 23 deletions(-)
diff --git a/daemons/attrd/attrd_ipc.c b/daemons/attrd/attrd_ipc.c
index 4b26cdb3d7..5ab2763dbf 100644
--- a/daemons/attrd/attrd_ipc.c
+++ b/daemons/attrd/attrd_ipc.c
@@ -155,7 +155,7 @@ attrd_client_peer_remove(pcmk__request_t *request)
pcmk__node_status_t *node = NULL;
char *host_alloc = NULL;
- node = pcmk__search_node_caches(nodeid, NULL,
+ node = pcmk__search_node_caches(nodeid, NULL, NULL,
pcmk__node_search_cluster_member);
if ((node != NULL) && (node->name != NULL)) {
// Use cached name if available
diff --git a/daemons/based/based_messages.c b/daemons/based/based_messages.c
index 25d31f49ac..e8a85904f7 100644
--- a/daemons/based/based_messages.c
+++ b/daemons/based/based_messages.c
@@ -254,7 +254,7 @@ cib_process_upgrade_server(const char *op, int options, const char *section, xml
// Notify originating peer so it can notify its local clients
pcmk__node_status_t *origin = NULL;
- origin = pcmk__search_node_caches(0, host,
+ origin = pcmk__search_node_caches(0, host, NULL,
pcmk__node_search_cluster_member);
crm_info("Rejecting upgrade request from %s: %s "
diff --git a/daemons/controld/controld_corosync.c b/daemons/controld/controld_corosync.c
index 02b0e823ad..61cf6293cc 100644
--- a/daemons/controld/controld_corosync.c
+++ b/daemons/controld/controld_corosync.c
@@ -119,7 +119,7 @@ cpg_membership_callback(cpg_handle_t handle, const struct cpg_name *cpg_name,
if (controld_globals.dc_name != NULL) {
pcmk__node_status_t *peer = NULL;
- peer = pcmk__search_node_caches(0, controld_globals.dc_name,
+ peer = pcmk__search_node_caches(0, controld_globals.dc_name, NULL,
pcmk__node_search_cluster_member);
if (peer != NULL) {
for (int i = 0; i < left_list_entries; ++i) {
diff --git a/daemons/controld/controld_fencing.c b/daemons/controld/controld_fencing.c
index e24523cbb0..093f48eb45 100644
--- a/daemons/controld/controld_fencing.c
+++ b/daemons/controld/controld_fencing.c
@@ -591,7 +591,7 @@ handle_fence_notification(stonith_t *st, stonith_event_t *event)
|pcmk__node_search_cluster_cib;
pcmk__node_status_t *peer = pcmk__search_node_caches(0, event->target,
- flags);
+ NULL, flags);
const char *uuid = NULL;
if (peer == NULL) {
diff --git a/daemons/controld/controld_messages.c b/daemons/controld/controld_messages.c
index 1f4b3891ce..65b1b829ce 100644
--- a/daemons/controld/controld_messages.c
+++ b/daemons/controld/controld_messages.c
@@ -501,7 +501,7 @@ relay_message(xmlNode * msg, gboolean originated_locally)
}
if (!broadcast) {
- node_to = pcmk__search_node_caches(0, host_to,
+ node_to = pcmk__search_node_caches(0, host_to, NULL,
pcmk__node_search_cluster_member);
if (node_to == NULL) {
crm_warn("Ignoring message %s because node %s is unknown",
@@ -943,7 +943,8 @@ handle_node_info_request(const xmlNode *msg)
value = controld_globals.cluster->priv->node_name;
}
- node = pcmk__search_node_caches(node_id, value, pcmk__node_search_any);
+ node = pcmk__search_node_caches(node_id, value, NULL,
+ pcmk__node_search_any);
if (node) {
crm_xml_add(reply_data, PCMK_XA_ID, node->xml_id);
crm_xml_add(reply_data, PCMK_XA_UNAME, node->name);
@@ -1070,7 +1071,8 @@ handle_request(xmlNode *stored_msg, enum crmd_fsa_cause cause)
if (strcmp(op, CRM_OP_SHUTDOWN_REQ) == 0) {
const char *from = crm_element_value(stored_msg, PCMK__XA_SRC);
pcmk__node_status_t *node =
- pcmk__search_node_caches(0, from, pcmk__node_search_cluster_member);
+ pcmk__search_node_caches(0, from, NULL,
+ pcmk__node_search_cluster_member);
pcmk__update_peer_expected(__func__, node, CRMD_JOINSTATE_DOWN);
if(AM_I_DC == FALSE) {
diff --git a/daemons/fenced/fenced_commands.c b/daemons/fenced/fenced_commands.c
index 082a4f5af3..9205ec727d 100644
--- a/daemons/fenced/fenced_commands.c
+++ b/daemons/fenced/fenced_commands.c
@@ -2875,7 +2875,7 @@ fence_locally(xmlNode *msg, pcmk__action_result_t *result)
pcmk__node_status_t *node = NULL;
pcmk__scan_min_int(host, &nodeid, 0);
- node = pcmk__search_node_caches(nodeid, NULL,
+ node = pcmk__search_node_caches(nodeid, NULL, NULL,
pcmk__node_search_any
|pcmk__node_search_cluster_cib);
if (node != NULL) {
diff --git a/daemons/fenced/fenced_history.c b/daemons/fenced/fenced_history.c
index a5285209be..d1e088a617 100644
--- a/daemons/fenced/fenced_history.c
+++ b/daemons/fenced/fenced_history.c
@@ -487,7 +487,7 @@ stonith_fence_history(xmlNode *msg, xmlNode **output,
pcmk__node_status_t *node = NULL;
pcmk__scan_min_int(target, &nodeid, 0);
- node = pcmk__search_node_caches(nodeid, NULL,
+ node = pcmk__search_node_caches(nodeid, NULL, NULL,
pcmk__node_search_any
|pcmk__node_search_cluster_cib);
if (node != NULL) {
diff --git a/daemons/fenced/fenced_remote.c b/daemons/fenced/fenced_remote.c
index 1e19c51dc3..0f92ed5f30 100644
--- a/daemons/fenced/fenced_remote.c
+++ b/daemons/fenced/fenced_remote.c
@@ -1245,7 +1245,7 @@ create_remote_stonith_op(const char *client, xmlNode *request, gboolean peer)
pcmk__node_status_t *node = NULL;
pcmk__scan_min_int(op->target, &nodeid, 0);
- node = pcmk__search_node_caches(nodeid, NULL,
+ node = pcmk__search_node_caches(nodeid, NULL, NULL,
pcmk__node_search_any
|pcmk__node_search_cluster_cib);
diff --git a/include/crm/cluster/internal.h b/include/crm/cluster/internal.h
index 11a82beee3..0afca28950 100644
--- a/include/crm/cluster/internal.h
+++ b/include/crm/cluster/internal.h
@@ -309,6 +309,7 @@ void pcmk__cluster_forget_cluster_node(uint32_t id, const char *node_name);
void pcmk__cluster_forget_remote_node(const char *node_name);
pcmk__node_status_t *pcmk__search_node_caches(unsigned int id,
const char *uname,
+ const char *xml_id,
uint32_t flags);
void pcmk__purge_node_from_cache(const char *node_name, uint32_t node_id);
diff --git a/lib/cluster/cpg.c b/lib/cluster/cpg.c
index 559dd408e0..fa9892e993 100644
--- a/lib/cluster/cpg.c
+++ b/lib/cluster/cpg.c
@@ -576,7 +576,7 @@ node_left(const char *cpg_group_name, int event_counter,
size_t member_list_entries)
{
pcmk__node_status_t *peer =
- pcmk__search_node_caches(cpg_peer->nodeid, NULL,
+ pcmk__search_node_caches(cpg_peer->nodeid, NULL, NULL,
pcmk__node_search_cluster_member);
const struct cpg_address **rival = NULL;
diff --git a/lib/cluster/membership.c b/lib/cluster/membership.c
index 0705b6570d..bccbe12aa7 100644
--- a/lib/cluster/membership.c
+++ b/lib/cluster/membership.c
@@ -156,7 +156,7 @@ pcmk__cluster_lookup_remote_node(const char *node_name)
* entry unless it has a node ID, which means the name actually is
* associated with a cluster node. (@TODO return an error in that case?)
*/
- node = pcmk__search_node_caches(0, node_name,
+ node = pcmk__search_node_caches(0, node_name, NULL,
pcmk__node_search_cluster_member);
if ((node != NULL) && (node->xml_id == NULL)) {
/* node_name could be a pointer into the cache entry being removed, so
@@ -791,36 +791,47 @@ search_cluster_member_cache(unsigned int id, const char *uname,
* \internal
* \brief Search caches for a node (cluster or Pacemaker Remote)
*
- * \param[in] id If not 0, cluster node ID to search for
- * \param[in] uname If not NULL, node name to search for
- * \param[in] flags Group of enum pcmk__node_search_flags
+ * \param[in] id If not 0, cluster node ID to search for
+ * \param[in] uname If not NULL, node name to search for
+ * \param[in] xml_id If not NULL, CIB XML ID of node to search for
+ * \param[in] flags Group of enum pcmk__node_search_flags
*
* \return Node cache entry if found, otherwise NULL
*/
pcmk__node_status_t *
-pcmk__search_node_caches(unsigned int id, const char *uname, uint32_t flags)
+pcmk__search_node_caches(unsigned int id, const char *uname,
+ const char *xml_id, uint32_t flags)
{
pcmk__node_status_t *node = NULL;
- pcmk__assert((id > 0) || (uname != NULL));
+ pcmk__assert((id > 0) || (uname != NULL) || (xml_id != NULL));
pcmk__cluster_init_node_caches();
- if ((uname != NULL) && pcmk_is_set(flags, pcmk__node_search_remote)) {
- node = g_hash_table_lookup(pcmk__remote_peer_cache, uname);
+ if (pcmk_is_set(flags, pcmk__node_search_remote)) {
+ if (uname != NULL) {
+ node = g_hash_table_lookup(pcmk__remote_peer_cache, uname);
+ } else if (xml_id != NULL) {
+ node = g_hash_table_lookup(pcmk__remote_peer_cache, xml_id);
+ }
}
if ((node == NULL)
&& pcmk_is_set(flags, pcmk__node_search_cluster_member)) {
- node = search_cluster_member_cache(id, uname, NULL);
+ node = search_cluster_member_cache(id, uname, xml_id);
}
if ((node == NULL) && pcmk_is_set(flags, pcmk__node_search_cluster_cib)) {
- char *id_str = (id == 0)? NULL : crm_strdup_printf("%u", id);
+ if (xml_id != NULL) {
+ node = find_cib_cluster_node(xml_id, uname);
+ } else {
+ // Assumes XML ID is node ID as string (as with Corosync)
+ char *id_str = (id == 0)? NULL : crm_strdup_printf("%u", id);
- node = find_cib_cluster_node(id_str, uname);
- free(id_str);
+ node = find_cib_cluster_node(id_str, uname);
+ free(id_str);
+ }
}
return node;
--
2.43.0

View File

@@ -0,0 +1,155 @@
From 634ce35492459b03f26ecb217033fc033264287c Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Mon, 28 Oct 2024 12:26:12 -0500
Subject: [PATCH 06/16] Refactor: libcrmcluster: rename
pcmk__cluster_node_uuid()
... to pcmk__cluster_get_xml_id(). It's getting the CIB XML ID; there's
no such thing as a cluster-layer UUID, and it can be used with Pacemaker
Remote nodes as well as cluster nodes.
---
daemons/attrd/attrd_cib.c | 2 +-
daemons/controld/controld_control.c | 2 +-
daemons/controld/controld_fencing.c | 4 ++--
daemons/controld/controld_join_dc.c | 2 +-
daemons/controld/controld_membership.c | 2 +-
include/crm/cluster/internal.h | 2 +-
lib/cluster/cluster.c | 9 ++++++---
lib/cluster/membership.c | 2 +-
8 files changed, 14 insertions(+), 11 deletions(-)
diff --git a/daemons/attrd/attrd_cib.c b/daemons/attrd/attrd_cib.c
index 808a7bc7e3..ad2bf2052c 100644
--- a/daemons/attrd/attrd_cib.c
+++ b/daemons/attrd/attrd_cib.c
@@ -564,7 +564,7 @@ write_attribute(attribute_t *a, bool ignore_delay)
NULL,
pcmk__node_search_any);
- node_xml_id = pcmk__cluster_node_uuid(peer);
+ node_xml_id = pcmk__cluster_get_xml_id(peer);
// Remember peer's node ID if we're just now learning it
if ((peer->cluster_layer_id != 0) && (v->nodeid == 0)) {
diff --git a/daemons/controld/controld_control.c b/daemons/controld/controld_control.c
index 4b00f894ef..ed4751b8d7 100644
--- a/daemons/controld/controld_control.c
+++ b/daemons/controld/controld_control.c
@@ -69,7 +69,7 @@ do_ha_control(long long action,
free(controld_globals.our_uuid);
controld_globals.our_uuid =
- pcmk__str_copy(pcmk__cluster_node_uuid(node));
+ pcmk__str_copy(pcmk__cluster_get_xml_id(node));
if (controld_globals.our_uuid == NULL) {
crm_err("Could not obtain local uuid");
diff --git a/daemons/controld/controld_fencing.c b/daemons/controld/controld_fencing.c
index 093f48eb45..7565b6c6c4 100644
--- a/daemons/controld/controld_fencing.c
+++ b/daemons/controld/controld_fencing.c
@@ -384,7 +384,7 @@ execute_stonith_cleanup(void)
char *target = iter->data;
pcmk__node_status_t *target_node =
pcmk__get_node(0, target, NULL, pcmk__node_search_cluster_member);
- const char *uuid = pcmk__cluster_node_uuid(target_node);
+ const char *uuid = pcmk__cluster_get_xml_id(target_node);
crm_notice("Marking %s, target of a previous stonith action, as clean", target);
send_stonith_update(NULL, target, uuid);
@@ -598,7 +598,7 @@ handle_fence_notification(stonith_t *st, stonith_event_t *event)
return;
}
- uuid = pcmk__cluster_node_uuid(peer);
+ uuid = pcmk__cluster_get_xml_id(peer);
if (AM_I_DC) {
/* The DC always sends updates */
diff --git a/daemons/controld/controld_join_dc.c b/daemons/controld/controld_join_dc.c
index 7ada26949d..9960966c6b 100644
--- a/daemons/controld/controld_join_dc.c
+++ b/daemons/controld/controld_join_dc.c
@@ -920,7 +920,7 @@ finalize_join_for(gpointer key, gpointer value, gpointer user_data)
*/
crm_trace("Updating node name and UUID in CIB for %s", join_to);
tmp1 = pcmk__xe_create(NULL, PCMK_XE_NODE);
- crm_xml_add(tmp1, PCMK_XA_ID, pcmk__cluster_node_uuid(join_node));
+ crm_xml_add(tmp1, PCMK_XA_ID, pcmk__cluster_get_xml_id(join_node));
crm_xml_add(tmp1, PCMK_XA_UNAME, join_to);
fsa_cib_anon_update(PCMK_XE_NODES, tmp1);
pcmk__xml_free(tmp1);
diff --git a/daemons/controld/controld_membership.c b/daemons/controld/controld_membership.c
index 8075955953..daf0c5fd43 100644
--- a/daemons/controld/controld_membership.c
+++ b/daemons/controld/controld_membership.c
@@ -142,7 +142,7 @@ create_node_state_update(pcmk__node_status_t *node, int flags,
}
if (crm_xml_add(node_state, PCMK_XA_ID,
- pcmk__cluster_node_uuid(node)) == NULL) {
+ pcmk__cluster_get_xml_id(node)) == NULL) {
crm_info("Node update for %s cancelled: no ID", node->name);
pcmk__xml_free(node_state);
return NULL;
diff --git a/include/crm/cluster/internal.h b/include/crm/cluster/internal.h
index 0afca28950..bc722cb3de 100644
--- a/include/crm/cluster/internal.h
+++ b/include/crm/cluster/internal.h
@@ -260,7 +260,7 @@ char *pcmk__cpg_message_data(cpg_handle_t handle, uint32_t sender_id,
# endif
-const char *pcmk__cluster_node_uuid(pcmk__node_status_t *node);
+const char *pcmk__cluster_get_xml_id(pcmk__node_status_t *node);
char *pcmk__cluster_node_name(uint32_t nodeid);
const char *pcmk__cluster_local_node_name(void);
const char *pcmk__node_name_from_uuid(const char *uuid);
diff --git a/lib/cluster/cluster.c b/lib/cluster/cluster.c
index 3427a409f3..87abcfc43e 100644
--- a/lib/cluster/cluster.c
+++ b/lib/cluster/cluster.c
@@ -34,14 +34,14 @@ CRM_TRACE_INIT_DATA(cluster);
/*!
* \internal
- * \brief Get a node's cluster-layer UUID, setting it if not already set
+ * \brief Get a node's XML ID in the CIB, setting it if not already set
*
* \param[in,out] node Node to check
*
- * \return Cluster-layer node UUID of \p node, or \c NULL if unknown
+ * \return CIB XML ID of \p node if known, otherwise \c NULL
*/
const char *
-pcmk__cluster_node_uuid(pcmk__node_status_t *node)
+pcmk__cluster_get_xml_id(pcmk__node_status_t *node)
{
const enum pcmk_cluster_layer cluster_layer = pcmk_get_cluster_layer();
@@ -52,6 +52,9 @@ pcmk__cluster_node_uuid(pcmk__node_status_t *node)
return node->xml_id;
}
+ // xml_id is always set when a Pacemaker Remote node entry is created
+ CRM_CHECK(!pcmk_is_set(node->flags, pcmk__node_status_remote), return NULL);
+
switch (cluster_layer) {
#if SUPPORT_COROSYNC
case pcmk_cluster_layer_corosync:
diff --git a/lib/cluster/membership.c b/lib/cluster/membership.c
index bccbe12aa7..ad55658d78 100644
--- a/lib/cluster/membership.c
+++ b/lib/cluster/membership.c
@@ -1000,7 +1000,7 @@ pcmk__get_node(unsigned int id, const char *uname, const char *xml_id,
}
if ((xml_id == NULL) && (node->xml_id == NULL)) {
- xml_id = pcmk__cluster_node_uuid(node);
+ xml_id = pcmk__cluster_get_xml_id(node);
if (xml_id == NULL) {
crm_debug("Cannot obtain an XML ID for node %s[%u] at this time",
node->name, id);
--
2.43.0

View File

@@ -0,0 +1,102 @@
From 8b4d6075c778f374f7289a910dad03f425e27728 Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Mon, 28 Oct 2024 12:40:14 -0500
Subject: [PATCH 07/16] Low: libcrmcluster: use pcmk__cluster_get_xml_id() when
possible
... rather than using node->xml_id directly, so it gets set whenever
possible. Also, make comparisons case-sensitive.
---
lib/cluster/cluster.c | 3 ++-
lib/cluster/election.c | 7 ++++---
lib/cluster/membership.c | 14 +++++++++-----
3 files changed, 15 insertions(+), 9 deletions(-)
diff --git a/lib/cluster/cluster.c b/lib/cluster/cluster.c
index 87abcfc43e..b560eaae52 100644
--- a/lib/cluster/cluster.c
+++ b/lib/cluster/cluster.c
@@ -337,7 +337,8 @@ pcmk__node_name_from_uuid(const char *uuid)
g_hash_table_iter_init(&iter, pcmk__peer_cache);
while (g_hash_table_iter_next(&iter, NULL, (gpointer *) &node)) {
- if (pcmk__str_eq(node->xml_id, uuid, pcmk__str_casei)) {
+ if (pcmk__str_eq(uuid, pcmk__cluster_get_xml_id(node),
+ pcmk__str_none)) {
return node->name;
}
}
diff --git a/lib/cluster/election.c b/lib/cluster/election.c
index 60a9156de9..51d4630b18 100644
--- a/lib/cluster/election.c
+++ b/lib/cluster/election.c
@@ -307,7 +307,8 @@ election_vote(pcmk_cluster_t *cluster)
NULL, message_type, CRM_OP_VOTE, NULL);
cluster->priv->election->count++;
- crm_xml_add(vote, PCMK__XA_ELECTION_OWNER, our_node->xml_id);
+ crm_xml_add(vote, PCMK__XA_ELECTION_OWNER,
+ pcmk__cluster_get_xml_id(our_node));
crm_xml_add_int(vote, PCMK__XA_ELECTION_ID, cluster->priv->election->count);
// Warning: PCMK__XA_ELECTION_AGE_NANO_SEC value is actually microseconds
@@ -546,8 +547,8 @@ election_count_vote(pcmk_cluster_t *cluster, const xmlNode *message,
our_node = pcmk__get_node(0, cluster->priv->node_name, NULL,
pcmk__node_search_cluster_member);
we_are_owner = (our_node != NULL)
- && pcmk__str_eq(our_node->xml_id, vote.election_owner,
- pcmk__str_none);
+ && pcmk__str_eq(pcmk__cluster_get_xml_id(our_node),
+ vote.election_owner, pcmk__str_none);
if (!can_win) {
reason = "Not eligible";
diff --git a/lib/cluster/membership.c b/lib/cluster/membership.c
index ad55658d78..e033f4e754 100644
--- a/lib/cluster/membership.c
+++ b/lib/cluster/membership.c
@@ -153,7 +153,7 @@ pcmk__cluster_lookup_remote_node(const char *node_name)
/* It's theoretically possible that the node was added to the cluster peer
* cache before it was known to be a Pacemaker Remote node. Remove that
- * entry unless it has a node ID, which means the name actually is
+ * entry unless it has an XML ID, which means the name actually is
* associated with a cluster node. (@TODO return an error in that case?)
*/
node = pcmk__search_node_caches(0, node_name, NULL,
@@ -713,8 +713,11 @@ search_cluster_member_cache(unsigned int id, const char *uname,
} else if (uuid != NULL) {
g_hash_table_iter_init(&iter, pcmk__peer_cache);
while (g_hash_table_iter_next(&iter, NULL, (gpointer *) &node)) {
- if (pcmk__str_eq(node->xml_id, uuid, pcmk__str_casei)) {
- crm_trace("UUID match: %s", node->xml_id);
+ const char *this_xml_id = pcmk__cluster_get_xml_id(node);
+
+ if (pcmk__str_eq(uuid, this_xml_id, pcmk__str_none)) {
+ crm_trace("Found cluster node cache entry by XML ID %s",
+ this_xml_id);
by_id = node;
break;
}
@@ -1388,7 +1391,8 @@ find_cib_cluster_node(const char *id, const char *uname)
if (id) {
g_hash_table_iter_init(&iter, cluster_node_cib_cache);
while (g_hash_table_iter_next(&iter, NULL, (gpointer *) &node)) {
- if (pcmk__str_eq(node->xml_id, id, pcmk__str_casei)) {
+ if (pcmk__str_eq(id, pcmk__cluster_get_xml_id(node),
+ pcmk__str_none)) {
crm_trace("ID match: %s= %p", id, node);
by_id = node;
break;
@@ -1424,7 +1428,7 @@ find_cib_cluster_node(const char *id, const char *uname)
* Return by_id. */
} else if ((id != NULL) && (by_name->xml_id != NULL)
- && pcmk__str_eq(id, by_name->xml_id, pcmk__str_casei)) {
+ && pcmk__str_eq(id, by_name->xml_id, pcmk__str_none)) {
/* Multiple nodes have the same id in the CIB.
* Return by_name. */
node = by_name;
--
2.43.0

View File

@@ -0,0 +1,67 @@
From e3376f56cdb35a3f87389b71111bdfe29a0ea31b Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Wed, 30 Oct 2024 10:43:51 -0500
Subject: [PATCH 08/16] Refactor: libcrmcluster: track local node XML ID in
cluster object
This effectively reverts 7afc16075
---
include/crm/cluster/internal.h | 1 +
lib/cluster/cluster.c | 1 +
lib/cluster/corosync.c | 9 +++++++--
3 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/include/crm/cluster/internal.h b/include/crm/cluster/internal.h
index bc722cb3de..0d0ed59f2a 100644
--- a/include/crm/cluster/internal.h
+++ b/include/crm/cluster/internal.h
@@ -91,6 +91,7 @@ typedef struct pcmk__election pcmk__election_t;
struct pcmk__cluster_private {
enum pcmk_ipc_server server; //!< Server this connection is for (if any)
char *node_name; //!< Local node name at cluster layer
+ char *node_xml_id; //!< Local node XML ID in CIB
pcmk__election_t *election; //!< Election state (if election is needed)
/* @TODO Corosync uses an integer node ID, but cluster layers in the
diff --git a/lib/cluster/cluster.c b/lib/cluster/cluster.c
index b560eaae52..dda4b8e89a 100644
--- a/lib/cluster/cluster.c
+++ b/lib/cluster/cluster.c
@@ -166,6 +166,7 @@ pcmk_cluster_free(pcmk_cluster_t *cluster)
return;
}
election_fini(cluster);
+ free(cluster->priv->node_xml_id);
free(cluster->priv->node_name);
free(cluster->priv);
free(cluster);
diff --git a/lib/cluster/corosync.c b/lib/cluster/corosync.c
index 32443a1e07..2782b10067 100644
--- a/lib/cluster/corosync.c
+++ b/lib/cluster/corosync.c
@@ -460,6 +460,7 @@ pcmk__corosync_connect(pcmk_cluster_t *cluster)
{
const enum pcmk_cluster_layer cluster_layer = pcmk_get_cluster_layer();
const char *cluster_layer_s = pcmk_cluster_layer_text(cluster_layer);
+ pcmk__node_status_t *local_node = NULL;
int rc = pcmk_rc_ok;
pcmk__cluster_init_node_caches();
@@ -490,8 +491,12 @@ pcmk__corosync_connect(pcmk_cluster_t *cluster)
}
// Ensure local node always exists in peer cache
- pcmk__get_node(cluster->priv->node_id, cluster->priv->node_name, NULL,
- pcmk__node_search_cluster_member);
+ local_node = pcmk__get_node(cluster->priv->node_id,
+ cluster->priv->node_name, NULL,
+ pcmk__node_search_cluster_member);
+
+ cluster->priv->node_xml_id = pcmk__corosync_uuid(local_node);
+ CRM_LOG_ASSERT(cluster->priv->node_xml_id != NULL);
return pcmk_rc_ok;
}
--
2.43.0

View File

@@ -0,0 +1,350 @@
From 85d7a70916c5fd85d89ad34396be5df0ed151669 Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Thu, 24 Oct 2024 11:30:00 -0500
Subject: [PATCH 09/16] Refactor: pacemaker-attrd: track node CIB ID rather
than cluster ID
Previously, attribute_value_t had a nodeid member to track the cluster
ID of the node that the value is for. However the only reason we need
it is to be able to get the node's XML ID in the CIB, for writing out
the value. Rename it to node_xml_id and track the XML ID directly.
In practice, there is no real change, since the CIB XML ID of Corosync
nodes is simply their cluster ID as a string. This allows us to keep
the same XML attribute and value in peer messages for backward
compatibility.
If we ever support node XML IDs that are *not* the string equivalent of
their cluster IDs, rolling upgrades will be possible only from versions
with this commit and later.
---
daemons/attrd/attrd_alerts.c | 12 ++++++++-
daemons/attrd/attrd_attributes.c | 11 +++++++-
daemons/attrd/attrd_cib.c | 45 ++++++++++++++++++++------------
daemons/attrd/attrd_corosync.c | 42 +++++++++++++++--------------
daemons/attrd/attrd_ipc.c | 14 +++++-----
daemons/attrd/attrd_messages.c | 6 +++--
daemons/attrd/attrd_utils.c | 1 +
daemons/attrd/pacemaker-attrd.h | 4 +--
8 files changed, 86 insertions(+), 49 deletions(-)
diff --git a/daemons/attrd/attrd_alerts.c b/daemons/attrd/attrd_alerts.c
index 55cb477c22..81d02d2ce2 100644
--- a/daemons/attrd/attrd_alerts.c
+++ b/daemons/attrd/attrd_alerts.c
@@ -124,12 +124,22 @@ attrd_read_options(gpointer user_data)
}
int
-attrd_send_attribute_alert(const char *node, int nodeid,
+attrd_send_attribute_alert(const char *node, const char *node_xml_id,
const char *attr, const char *value)
{
+ uint32_t nodeid = 0U;
+ pcmk__node_status_t *node_status = NULL;
+
if (attrd_alert_list == NULL) {
return pcmk_ok;
}
+ node_status = pcmk__search_node_caches(0, node, node_xml_id,
+ pcmk__node_search_remote
+ |pcmk__node_search_cluster_member
+ |pcmk__node_search_cluster_cib);
+ if (node_status != NULL) {
+ nodeid = node_status->cluster_layer_id;
+ }
return lrmd_send_attribute_alert(attrd_lrmd_connect(), attrd_alert_list,
node, nodeid, attr, value);
}
diff --git a/daemons/attrd/attrd_attributes.c b/daemons/attrd/attrd_attributes.c
index 74301d678a..6d80acfce1 100644
--- a/daemons/attrd/attrd_attributes.c
+++ b/daemons/attrd/attrd_attributes.c
@@ -142,7 +142,16 @@ attrd_add_value_xml(xmlNode *parent, const attribute_t *a,
crm_xml_add(xml, PCMK__XA_ATTR_SET_TYPE, a->set_type);
crm_xml_add(xml, PCMK__XA_ATTR_SET, a->set_id);
crm_xml_add(xml, PCMK__XA_ATTR_USER, a->user);
- pcmk__xe_add_node(xml, v->nodename, v->nodeid);
+ crm_xml_add(xml, PCMK__XA_ATTR_HOST, v->nodename);
+
+ /* @COMPAT Prior to 2.1.10 and 3.0.1, the node's cluster ID was added
+ * instead of its XML ID. For Corosync and Pacemaker Remote nodes, those are
+ * the same, but if we ever support node XML IDs that differ from their
+ * cluster IDs, we will have to drop support for rolling upgrades from
+ * versions before those.
+ */
+ crm_xml_add(xml, PCMK__XA_ATTR_HOST_ID, v->node_xml_id);
+
crm_xml_add(xml, PCMK__XA_ATTR_VALUE, v->current);
crm_xml_add_int(xml, PCMK__XA_ATTR_DAMPENING,
pcmk__timeout_ms2s(a->timeout_ms));
diff --git a/daemons/attrd/attrd_cib.c b/daemons/attrd/attrd_cib.c
index ad2bf2052c..665af3625d 100644
--- a/daemons/attrd/attrd_cib.c
+++ b/daemons/attrd/attrd_cib.c
@@ -10,7 +10,6 @@
#include <crm_internal.h>
#include <errno.h>
-#include <inttypes.h> // PRIu32
#include <stdbool.h>
#include <stdlib.h>
#include <glib.h>
@@ -450,10 +449,12 @@ send_alert_attributes_value(attribute_t *a, GHashTable *t)
g_hash_table_iter_init(&vIter, t);
while (g_hash_table_iter_next(&vIter, NULL, (gpointer *) & at)) {
- rc = attrd_send_attribute_alert(at->nodename, at->nodeid,
+ rc = attrd_send_attribute_alert(at->nodename, at->node_xml_id,
a->id, at->current);
- crm_trace("Sent alerts for %s[%s]=%s: nodeid=%d rc=%d",
- a->id, at->nodename, at->current, at->nodeid, rc);
+ crm_trace("Sent alerts for %s[%s]=%s with node XML ID %s "
+ "(%s agents failed)",
+ a->id, at->nodename, at->current, at->node_xml_id,
+ ((rc == 0)? "no" : ((rc == -1)? "some" : "all")));
}
}
@@ -462,7 +463,7 @@ set_alert_attribute_value(GHashTable *t, attribute_value_t *v)
{
attribute_value_t *a_v = pcmk__assert_alloc(1, sizeof(attribute_value_t));
- a_v->nodeid = v->nodeid;
+ a_v->node_xml_id = pcmk__str_copy(v->node_xml_id);
a_v->nodename = pcmk__str_copy(v->nodename);
a_v->current = pcmk__str_copy(v->current);
@@ -551,26 +552,25 @@ write_attribute(attribute_t *a, bool ignore_delay)
continue;
}
- // Try to get the XML ID used for the node in the CIB
+ /* We need the node's CIB XML ID to write out its attributes, so look
+ * for it now. Check the node caches first, even if the ID was
+ * previously known (in case it changed), but use any previous value as
+ * a fallback.
+ */
+
if (pcmk_is_set(v->flags, attrd_value_remote)) {
// A Pacemaker Remote node's XML ID is the same as its name
node_xml_id = v->nodename;
} else {
- /* Get cluster node XML IDs from the peer caches.
- * This will create a cluster node cache entry if none exists.
- */
- pcmk__node_status_t *peer = pcmk__get_node(v->nodeid, v->nodename,
- NULL,
+ // This creates a cluster node cache entry if none exists
+ pcmk__node_status_t *peer = pcmk__get_node(0, v->nodename,
+ v->node_xml_id,
pcmk__node_search_any);
node_xml_id = pcmk__cluster_get_xml_id(peer);
-
- // Remember peer's node ID if we're just now learning it
- if ((peer->cluster_layer_id != 0) && (v->nodeid == 0)) {
- crm_trace("Learned ID %" PRIu32 " for node %s",
- peer->cluster_layer_id, v->nodename);
- v->nodeid = peer->cluster_layer_id;
+ if (node_xml_id == NULL) {
+ node_xml_id = v->node_xml_id;
}
}
@@ -583,6 +583,17 @@ write_attribute(attribute_t *a, bool ignore_delay)
continue;
}
+ /* Remember the XML ID and let peers know it (in case one of them
+ * becomes the writer later)
+ */
+ if (!pcmk__str_eq(v->node_xml_id, node_xml_id, pcmk__str_none)) {
+ crm_trace("Setting %s[%s] node XML ID to %s (was %s)",
+ a->id, v->nodename, node_xml_id,
+ pcmk__s(v->node_xml_id, "unknown"));
+ pcmk__str_update(&(v->node_xml_id), node_xml_id);
+ attrd_broadcast_value(a, v);
+ }
+
// Update this value as part of the CIB transaction we're building
rc = add_attr_update(a, v->current, node_xml_id);
if (rc != pcmk_rc_ok) {
diff --git a/daemons/attrd/attrd_corosync.c b/daemons/attrd/attrd_corosync.c
index 72ebc1843b..02816b94d2 100644
--- a/daemons/attrd/attrd_corosync.c
+++ b/daemons/attrd/attrd_corosync.c
@@ -209,19 +209,6 @@ attrd_peer_change_cb(enum pcmk__node_update kind, pcmk__node_status_t *peer,
}
}
-static void
-record_peer_nodeid(attribute_value_t *v, const char *host)
-{
- pcmk__node_status_t *known_peer =
- pcmk__get_node(v->nodeid, host, NULL, pcmk__node_search_cluster_member);
-
- crm_trace("Learned %s has XML ID %s",
- known_peer->name, pcmk__cluster_node_uuid(known_peer));
- if (attrd_election_won()) {
- attrd_write_attributes(attrd_write_changed);
- }
-}
-
#define readable_value(rv_v) pcmk__s((rv_v)->current, "(unset)")
#define readable_peer(p) \
@@ -235,6 +222,7 @@ update_attr_on_host(attribute_t *a, const pcmk__node_status_t *peer,
int is_remote = 0;
bool changed = false;
attribute_value_t *v = NULL;
+ const char *node_xml_id = crm_element_value(xml, PCMK__XA_ATTR_HOST_ID);
// Create entry for value if not already existing
v = g_hash_table_lookup(a->values, host);
@@ -245,6 +233,13 @@ update_attr_on_host(attribute_t *a, const pcmk__node_status_t *peer,
g_hash_table_replace(a->values, v->nodename, v);
}
+ /* If update doesn't contain the node XML ID, fall back to any previously
+ * known value (for logging)
+ */
+ if (node_xml_id == NULL) {
+ node_xml_id = v->node_xml_id;
+ }
+
// If value is for a Pacemaker Remote node, remember that
crm_element_value_int(xml, PCMK__XA_ATTR_IS_REMOTE, &is_remote);
if (is_remote) {
@@ -270,11 +265,12 @@ update_attr_on_host(attribute_t *a, const pcmk__node_status_t *peer,
} else if (changed) {
crm_notice("Setting %s[%s]%s%s: %s -> %s "
- QB_XS " from %s with %s write delay",
+ QB_XS " from %s with %s write delay and node XML ID %s",
attr, host, a->set_type ? " in " : "",
pcmk__s(a->set_type, ""), readable_value(v),
pcmk__s(value, "(unset)"), peer->name,
- (a->timeout_ms == 0)? "no" : pcmk__readable_interval(a->timeout_ms));
+ (a->timeout_ms == 0)? "no" : pcmk__readable_interval(a->timeout_ms),
+ pcmk__s(node_xml_id, "unknown"));
pcmk__str_update(&v->current, value);
attrd_set_attr_flags(a, attrd_attr_changed);
@@ -319,11 +315,17 @@ update_attr_on_host(attribute_t *a, const pcmk__node_status_t *peer,
// This allows us to later detect local values that peer doesn't know about
attrd_set_value_flags(v, attrd_value_from_peer);
- /* If this is a cluster node whose node ID we are learning, remember it */
- if ((v->nodeid == 0) && !pcmk_is_set(v->flags, attrd_value_remote)
- && (crm_element_value_int(xml, PCMK__XA_ATTR_HOST_ID,
- (int*)&v->nodeid) == 0) && (v->nodeid > 0)) {
- record_peer_nodeid(v, host);
+ // Remember node's XML ID if we're just learning it
+ if ((node_xml_id != NULL)
+ && !pcmk__str_eq(node_xml_id, v->node_xml_id, pcmk__str_none)) {
+ crm_trace("Learned %s[%s] node XML ID is %s (was %s)",
+ a->id, v->nodename, node_xml_id,
+ pcmk__s(v->node_xml_id, "unknown"));
+ pcmk__str_update(&(v->node_xml_id), node_xml_id);
+ if (attrd_election_won()) {
+ // In case we couldn't write a value missing the XML ID before
+ attrd_write_attributes(attrd_write_changed);
+ }
}
}
diff --git a/daemons/attrd/attrd_ipc.c b/daemons/attrd/attrd_ipc.c
index 5ab2763dbf..fd917a37bb 100644
--- a/daemons/attrd/attrd_ipc.c
+++ b/daemons/attrd/attrd_ipc.c
@@ -12,6 +12,7 @@
#include <errno.h>
#include <stdint.h>
#include <stdlib.h>
+#include <inttypes.h> // PRIu32
#include <sys/types.h>
#include <crm/cluster.h>
@@ -232,12 +233,13 @@ attrd_client_refresh(pcmk__request_t *request)
static void
handle_missing_host(xmlNode *xml)
{
- const char *host = crm_element_value(xml, PCMK__XA_ATTR_HOST);
-
- if (host == NULL) {
- crm_trace("Inferring host");
- pcmk__xe_add_node(xml, attrd_cluster->priv->node_name,
- attrd_cluster->priv->node_id);
+ if (crm_element_value(xml, PCMK__XA_ATTR_HOST) == NULL) {
+ crm_trace("Inferring local node %s with XML ID %s",
+ attrd_cluster->priv->node_name,
+ attrd_cluster->priv->node_xml_id);
+ crm_xml_add(xml, PCMK__XA_ATTR_HOST, attrd_cluster->priv->node_name);
+ crm_xml_add(xml, PCMK__XA_ATTR_HOST_ID,
+ attrd_cluster->priv->node_xml_id);
}
}
diff --git a/daemons/attrd/attrd_messages.c b/daemons/attrd/attrd_messages.c
index b6eebc66cb..e1038a820b 100644
--- a/daemons/attrd/attrd_messages.c
+++ b/daemons/attrd/attrd_messages.c
@@ -9,6 +9,7 @@
#include <crm_internal.h>
+#include <inttypes.h> // PRIu32
#include <glib.h>
#include <crm/common/messages_internal.h>
@@ -314,8 +315,9 @@ attrd_broadcast_protocol(void)
crm_xml_add(attrd_op, PCMK__XA_ATTR_NAME, CRM_ATTR_PROTOCOL);
crm_xml_add(attrd_op, PCMK__XA_ATTR_VALUE, ATTRD_PROTOCOL_VERSION);
crm_xml_add_int(attrd_op, PCMK__XA_ATTR_IS_PRIVATE, 1);
- pcmk__xe_add_node(attrd_op, attrd_cluster->priv->node_name,
- attrd_cluster->priv->node_id);
+ crm_xml_add(attrd_op, PCMK__XA_ATTR_HOST, attrd_cluster->priv->node_name);
+ crm_xml_add(attrd_op, PCMK__XA_ATTR_HOST_ID,
+ attrd_cluster->priv->node_xml_id);
crm_debug("Broadcasting attrd protocol version %s for node %s",
ATTRD_PROTOCOL_VERSION, attrd_cluster->priv->node_name);
diff --git a/daemons/attrd/attrd_utils.c b/daemons/attrd/attrd_utils.c
index f219b8862d..3621f5f354 100644
--- a/daemons/attrd/attrd_utils.c
+++ b/daemons/attrd/attrd_utils.c
@@ -232,6 +232,7 @@ attrd_free_attribute_value(gpointer data)
free(v->nodename);
free(v->current);
free(v->requested);
+ free(v->node_xml_id);
free(v);
}
diff --git a/daemons/attrd/pacemaker-attrd.h b/daemons/attrd/pacemaker-attrd.h
index 13646b8e51..07103a6b01 100644
--- a/daemons/attrd/pacemaker-attrd.h
+++ b/daemons/attrd/pacemaker-attrd.h
@@ -99,7 +99,7 @@ extern crm_trigger_t *attrd_config_read;
void attrd_lrmd_disconnect(void);
gboolean attrd_read_options(gpointer user_data);
-int attrd_send_attribute_alert(const char *node, int nodeid,
+int attrd_send_attribute_alert(const char *node, const char *node_xml_id,
const char *attr, const char *value);
// Elections
@@ -155,7 +155,7 @@ typedef struct attribute_value_s {
char *nodename; // Node that this value is for
char *current; // Attribute value
char *requested; // Value specified in pending CIB write, if any
- uint32_t nodeid; // Cluster node ID of node that this value is for
+ char *node_xml_id; // XML ID used for node in CIB
uint32_t flags; // Group of attrd_value_flags
} attribute_value_t;
--
2.43.0

View File

@@ -0,0 +1,82 @@
From aee2a5af668b6e15d9da6ecbbba7521acd1f0ea1 Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Wed, 7 Feb 2024 16:05:50 -0600
Subject: [PATCH 10/16] Refactor: pacemaker-attrd: rename flag to match recent
change
---
daemons/attrd/attrd_cib.c | 15 +++++++++------
daemons/attrd/pacemaker-attrd.h | 16 ++++++++++++----
2 files changed, 21 insertions(+), 10 deletions(-)
diff --git a/daemons/attrd/attrd_cib.c b/daemons/attrd/attrd_cib.c
index 665af3625d..e7eeaa96d9 100644
--- a/daemons/attrd/attrd_cib.c
+++ b/daemons/attrd/attrd_cib.c
@@ -532,10 +532,13 @@ write_attribute(attribute_t *a, bool ignore_delay)
}
}
- /* Attribute will be written shortly, so clear changed flag and force
- * write flag, and initialize UUID missing flag to false.
+ /* The changed and force-write flags apply only to the next write,
+ * which this is, so clear them now. Also clear the "node unknown" flag
+ * because we will check whether it is known below and reset if appopriate.
*/
- attrd_clear_attr_flags(a, attrd_attr_changed|attrd_attr_uuid_missing|attrd_attr_force_write);
+ attrd_clear_attr_flags(a, attrd_attr_changed
+ |attrd_attr_force_write
+ |attrd_attr_node_unknown);
/* Make the table for the attribute trap */
alert_attribute_value = pcmk__strikey_table(NULL,
@@ -576,7 +579,7 @@ write_attribute(attribute_t *a, bool ignore_delay)
// Defer write if this is a cluster node that's never been seen
if (node_xml_id == NULL) {
- attrd_set_attr_flags(a, attrd_attr_uuid_missing);
+ attrd_set_attr_flags(a, attrd_attr_node_unknown);
crm_notice("Cannot write %s[%s]='%s' to CIB because node's XML ID "
"is unknown (will retry if learned)",
a->id, v->nodename, v->current);
@@ -668,8 +671,8 @@ attrd_write_attributes(uint32_t options)
pcmk_is_set(options, attrd_write_all)? "all" : "changed");
g_hash_table_iter_init(&iter, attributes);
while (g_hash_table_iter_next(&iter, NULL, (gpointer *) & a)) {
- if (!pcmk_is_set(options, attrd_write_all) &&
- pcmk_is_set(a->flags, attrd_attr_uuid_missing)) {
+ if (!pcmk_is_set(options, attrd_write_all)
+ && pcmk_is_set(a->flags, attrd_attr_node_unknown)) {
// Try writing this attribute again, in case peer ID was learned
attrd_set_attr_flags(a, attrd_attr_changed);
} else if (pcmk_is_set(a->flags, attrd_attr_force_write)) {
diff --git a/daemons/attrd/pacemaker-attrd.h b/daemons/attrd/pacemaker-attrd.h
index 07103a6b01..f0535eabaa 100644
--- a/daemons/attrd/pacemaker-attrd.h
+++ b/daemons/attrd/pacemaker-attrd.h
@@ -115,10 +115,18 @@ void attrd_xml_add_writer(xmlNode *xml);
enum attrd_attr_flags {
attrd_attr_none = 0U,
- attrd_attr_changed = (1U << 0), // Attribute value has changed since last write
- attrd_attr_uuid_missing = (1U << 1), // Whether we know we're missing a peer UUID
- attrd_attr_is_private = (1U << 2), // Whether to keep this attribute out of the CIB
- attrd_attr_force_write = (1U << 3), // Update attribute by ignoring delay
+
+ // At least one of attribute's values has changed since last write
+ attrd_attr_changed = (1U << 0),
+
+ // At least one of attribute's values has an unknown node XML ID
+ attrd_attr_node_unknown = (1U << 1),
+
+ // This attribute should never be written to the CIB
+ attrd_attr_is_private = (1U << 2),
+
+ // Ignore any configured delay for next write of this attribute
+ attrd_attr_force_write = (1U << 3),
};
typedef struct attribute_s {
--
2.43.0

View File

@@ -0,0 +1,49 @@
From a045a72a7ea122c10c4ceacb0cf15ff7ecd125c0 Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Wed, 7 Feb 2024 16:13:44 -0600
Subject: [PATCH 11/16] Refactor: pacemaker-attrd: use variable for whether to
write
... for readability and to reduce code duplication
---
daemons/attrd/attrd_cib.c | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/daemons/attrd/attrd_cib.c b/daemons/attrd/attrd_cib.c
index e7eeaa96d9..193b06739e 100644
--- a/daemons/attrd/attrd_cib.c
+++ b/daemons/attrd/attrd_cib.c
@@ -492,13 +492,19 @@ write_attribute(attribute_t *a, bool ignore_delay)
GHashTableIter iter;
GHashTable *alert_attribute_value = NULL;
int rc = pcmk_ok;
+ bool should_write = true;
if (a == NULL) {
return;
}
+ // Private attributes (or any in standalone mode) are not written to the CIB
+ if (stand_alone || pcmk_is_set(a->flags, attrd_attr_is_private)) {
+ should_write = false;
+ }
+
/* If this attribute will be written to the CIB ... */
- if (!stand_alone && !pcmk_is_set(a->flags, attrd_attr_is_private)) {
+ if (should_write) {
/* Defer the write if now's not a good time */
if (a->update && (a->update < last_cib_op_done)) {
crm_info("Write out of '%s' continuing: update %d considered lost",
@@ -549,8 +555,7 @@ write_attribute(attribute_t *a, bool ignore_delay)
while (g_hash_table_iter_next(&iter, NULL, (gpointer *) &v)) {
const char *node_xml_id = NULL;
- // Private attributes (or any in standalone mode) are not written to CIB
- if (stand_alone || pcmk_is_set(a->flags, attrd_attr_is_private)) {
+ if (!should_write) {
private_updates++;
continue;
}
--
2.43.0

View File

@@ -0,0 +1,306 @@
From 034c421a457b9dd5c654cb26292d9c05b1cd9244 Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Thu, 24 Oct 2024 17:36:40 -0500
Subject: [PATCH 12/16] Low: pacemaker-attrd: track node XML IDs independent of
attribute values
Previously, node XML IDs were kept in attribute_value_t. That meant that
they were duplicated for every value for a node, the values might be
known for some values and unknown or inconsistent for others, and newly
learned XML IDs would have to be broadcast per value.
Now, maintain a global node XML ID cache.
---
daemons/attrd/Makefile.am | 1 +
daemons/attrd/attrd_attributes.c | 2 +-
daemons/attrd/attrd_cib.c | 25 +++++-----
daemons/attrd/attrd_corosync.c | 11 +++--
daemons/attrd/attrd_nodes.c | 82 ++++++++++++++++++++++++++++++++
daemons/attrd/attrd_utils.c | 1 -
daemons/attrd/pacemaker-attrd.c | 2 +
daemons/attrd/pacemaker-attrd.h | 6 +++
8 files changed, 112 insertions(+), 18 deletions(-)
create mode 100644 daemons/attrd/attrd_nodes.c
diff --git a/daemons/attrd/Makefile.am b/daemons/attrd/Makefile.am
index 47119679cf..a2c8fd1477 100644
--- a/daemons/attrd/Makefile.am
+++ b/daemons/attrd/Makefile.am
@@ -31,6 +31,7 @@ pacemaker_attrd_SOURCES = attrd_alerts.c \
attrd_elections.c \
attrd_ipc.c \
attrd_messages.c \
+ attrd_nodes.c \
attrd_sync.c \
attrd_utils.c \
pacemaker-attrd.c
diff --git a/daemons/attrd/attrd_attributes.c b/daemons/attrd/attrd_attributes.c
index 6d80acfce1..fdc238375e 100644
--- a/daemons/attrd/attrd_attributes.c
+++ b/daemons/attrd/attrd_attributes.c
@@ -150,7 +150,7 @@ attrd_add_value_xml(xmlNode *parent, const attribute_t *a,
* cluster IDs, we will have to drop support for rolling upgrades from
* versions before those.
*/
- crm_xml_add(xml, PCMK__XA_ATTR_HOST_ID, v->node_xml_id);
+ crm_xml_add(xml, PCMK__XA_ATTR_HOST_ID, attrd_get_node_xml_id(v->nodename));
crm_xml_add(xml, PCMK__XA_ATTR_VALUE, v->current);
crm_xml_add_int(xml, PCMK__XA_ATTR_DAMPENING,
diff --git a/daemons/attrd/attrd_cib.c b/daemons/attrd/attrd_cib.c
index 193b06739e..4231e4a668 100644
--- a/daemons/attrd/attrd_cib.c
+++ b/daemons/attrd/attrd_cib.c
@@ -449,11 +449,14 @@ send_alert_attributes_value(attribute_t *a, GHashTable *t)
g_hash_table_iter_init(&vIter, t);
while (g_hash_table_iter_next(&vIter, NULL, (gpointer *) & at)) {
- rc = attrd_send_attribute_alert(at->nodename, at->node_xml_id,
+ const char *node_xml_id = attrd_get_node_xml_id(at->nodename);
+
+ rc = attrd_send_attribute_alert(at->nodename, node_xml_id,
a->id, at->current);
crm_trace("Sent alerts for %s[%s]=%s with node XML ID %s "
"(%s agents failed)",
- a->id, at->nodename, at->current, at->node_xml_id,
+ a->id, at->nodename, at->current,
+ pcmk__s(node_xml_id, "unknown"),
((rc == 0)? "no" : ((rc == -1)? "some" : "all")));
}
}
@@ -463,7 +466,6 @@ set_alert_attribute_value(GHashTable *t, attribute_value_t *v)
{
attribute_value_t *a_v = pcmk__assert_alloc(1, sizeof(attribute_value_t));
- a_v->node_xml_id = pcmk__str_copy(v->node_xml_id);
a_v->nodename = pcmk__str_copy(v->nodename);
a_v->current = pcmk__str_copy(v->current);
@@ -554,6 +556,7 @@ write_attribute(attribute_t *a, bool ignore_delay)
g_hash_table_iter_init(&iter, a->values);
while (g_hash_table_iter_next(&iter, NULL, (gpointer *) &v)) {
const char *node_xml_id = NULL;
+ const char *prev_xml_id = NULL;
if (!should_write) {
private_updates++;
@@ -566,6 +569,8 @@ write_attribute(attribute_t *a, bool ignore_delay)
* a fallback.
*/
+ prev_xml_id = attrd_get_node_xml_id(v->nodename);
+
if (pcmk_is_set(v->flags, attrd_value_remote)) {
// A Pacemaker Remote node's XML ID is the same as its name
node_xml_id = v->nodename;
@@ -573,12 +578,12 @@ write_attribute(attribute_t *a, bool ignore_delay)
} else {
// This creates a cluster node cache entry if none exists
pcmk__node_status_t *peer = pcmk__get_node(0, v->nodename,
- v->node_xml_id,
+ prev_xml_id,
pcmk__node_search_any);
node_xml_id = pcmk__cluster_get_xml_id(peer);
if (node_xml_id == NULL) {
- node_xml_id = v->node_xml_id;
+ node_xml_id = prev_xml_id;
}
}
@@ -591,15 +596,11 @@ write_attribute(attribute_t *a, bool ignore_delay)
continue;
}
- /* Remember the XML ID and let peers know it (in case one of them
- * becomes the writer later)
- */
- if (!pcmk__str_eq(v->node_xml_id, node_xml_id, pcmk__str_none)) {
+ if (!pcmk__str_eq(prev_xml_id, node_xml_id, pcmk__str_none)) {
crm_trace("Setting %s[%s] node XML ID to %s (was %s)",
a->id, v->nodename, node_xml_id,
- pcmk__s(v->node_xml_id, "unknown"));
- pcmk__str_update(&(v->node_xml_id), node_xml_id);
- attrd_broadcast_value(a, v);
+ pcmk__s(prev_xml_id, "unknown"));
+ attrd_set_node_xml_id(v->nodename, node_xml_id);
}
// Update this value as part of the CIB transaction we're building
diff --git a/daemons/attrd/attrd_corosync.c b/daemons/attrd/attrd_corosync.c
index 02816b94d2..e97e09cb86 100644
--- a/daemons/attrd/attrd_corosync.c
+++ b/daemons/attrd/attrd_corosync.c
@@ -222,6 +222,7 @@ update_attr_on_host(attribute_t *a, const pcmk__node_status_t *peer,
int is_remote = 0;
bool changed = false;
attribute_value_t *v = NULL;
+ const char *prev_xml_id = NULL;
const char *node_xml_id = crm_element_value(xml, PCMK__XA_ATTR_HOST_ID);
// Create entry for value if not already existing
@@ -236,8 +237,9 @@ update_attr_on_host(attribute_t *a, const pcmk__node_status_t *peer,
/* If update doesn't contain the node XML ID, fall back to any previously
* known value (for logging)
*/
+ prev_xml_id = attrd_get_node_xml_id(v->nodename);
if (node_xml_id == NULL) {
- node_xml_id = v->node_xml_id;
+ node_xml_id = prev_xml_id;
}
// If value is for a Pacemaker Remote node, remember that
@@ -317,11 +319,11 @@ update_attr_on_host(attribute_t *a, const pcmk__node_status_t *peer,
// Remember node's XML ID if we're just learning it
if ((node_xml_id != NULL)
- && !pcmk__str_eq(node_xml_id, v->node_xml_id, pcmk__str_none)) {
+ && !pcmk__str_eq(node_xml_id, prev_xml_id, pcmk__str_none)) {
crm_trace("Learned %s[%s] node XML ID is %s (was %s)",
a->id, v->nodename, node_xml_id,
- pcmk__s(v->node_xml_id, "unknown"));
- pcmk__str_update(&(v->node_xml_id), node_xml_id);
+ pcmk__s(prev_xml_id, "unknown"));
+ attrd_set_node_xml_id(v->nodename, node_xml_id);
if (attrd_election_won()) {
// In case we couldn't write a value missing the XML ID before
attrd_write_attributes(attrd_write_changed);
@@ -540,6 +542,7 @@ attrd_peer_remove(const char *host, bool uncache, const char *source)
if (uncache) {
pcmk__purge_node_from_cache(host, 0);
+ attrd_forget_node_xml_id(host);
}
}
diff --git a/daemons/attrd/attrd_nodes.c b/daemons/attrd/attrd_nodes.c
new file mode 100644
index 0000000000..8fb7797f2d
--- /dev/null
+++ b/daemons/attrd/attrd_nodes.c
@@ -0,0 +1,82 @@
+/*
+ * Copyright 2024-2025 the Pacemaker project contributors
+ *
+ * The version control history for this file may have further details.
+ *
+ * This source code is licensed under the GNU General Public License version 2
+ * or later (GPLv2+) WITHOUT ANY WARRANTY.
+ */
+
+#include <crm_internal.h>
+
+#include <stdio.h> // NULL
+#include <glib.h> // GHashTable, etc.
+
+#include "pacemaker-attrd.h"
+
+// Track the last known node XML ID for each node name
+static GHashTable *node_xml_ids = NULL;
+
+/*!
+ * \internal
+ * \brief Get last known XML ID for a given node
+ *
+ * \param[in] node_name Name of node to check
+ *
+ * \return Last known XML ID for node (or NULL if none known)
+ *
+ * \note The return value may become invalid if attrd_set_node_xml_id() or
+ * attrd_forget_node_xml_id() is later called for \p node_name.
+ */
+const char *
+attrd_get_node_xml_id(const char *node_name)
+{
+ if (node_xml_ids == NULL) {
+ return NULL;
+ }
+ return g_hash_table_lookup(node_xml_ids, node_name);
+}
+
+/*!
+ * \internal
+ * \brief Set last known XML ID for a given node
+ *
+ * \param[in] node_name Name of node to set
+ * \param[in] node_xml_id New XML ID to set for node
+ */
+void
+attrd_set_node_xml_id(const char *node_name, const char *node_xml_id)
+{
+ if (node_xml_ids == NULL) {
+ node_xml_ids = pcmk__strikey_table(free, free);
+ }
+ pcmk__insert_dup(node_xml_ids, node_name, node_xml_id);
+}
+
+/*!
+ * \internal
+ * \brief Forget last known XML ID for a given node
+ *
+ * \param[in] node_name Name of node to forget
+ */
+void
+attrd_forget_node_xml_id(const char *node_name)
+{
+ if (node_xml_ids == NULL) {
+ return;
+ }
+ g_hash_table_remove(node_xml_ids, node_name);
+}
+
+/*!
+ * \internal
+ * \brief Free the node XML ID cache
+ */
+void
+attrd_cleanup_xml_ids(void)
+{
+ if (node_xml_ids != NULL) {
+ g_hash_table_destroy(node_xml_ids);
+ node_xml_ids = NULL;
+ }
+}
diff --git a/daemons/attrd/attrd_utils.c b/daemons/attrd/attrd_utils.c
index 3621f5f354..f219b8862d 100644
--- a/daemons/attrd/attrd_utils.c
+++ b/daemons/attrd/attrd_utils.c
@@ -232,7 +232,6 @@ attrd_free_attribute_value(gpointer data)
free(v->nodename);
free(v->current);
free(v->requested);
- free(v->node_xml_id);
free(v);
}
diff --git a/daemons/attrd/pacemaker-attrd.c b/daemons/attrd/pacemaker-attrd.c
index a5dac1272a..3c31bcd932 100644
--- a/daemons/attrd/pacemaker-attrd.c
+++ b/daemons/attrd/pacemaker-attrd.c
@@ -207,6 +207,8 @@ main(int argc, char **argv)
g_hash_table_destroy(attributes);
}
+ attrd_cleanup_xml_ids();
+
g_strfreev(processed_args);
pcmk__free_arg_context(context);
diff --git a/daemons/attrd/pacemaker-attrd.h b/daemons/attrd/pacemaker-attrd.h
index f0535eabaa..57d707c37c 100644
--- a/daemons/attrd/pacemaker-attrd.h
+++ b/daemons/attrd/pacemaker-attrd.h
@@ -252,4 +252,10 @@ bool attrd_request_has_sync_point(xmlNode *xml);
extern gboolean stand_alone;
+// Node utilities (from attrd_nodes.c)
+const char *attrd_get_node_xml_id(const char *node_name);
+void attrd_set_node_xml_id(const char *node_name, const char *node_xml_id);
+void attrd_forget_node_xml_id(const char *node_name);
+void attrd_cleanup_xml_ids(void);
+
#endif /* PACEMAKER_ATTRD__H */
--
2.43.0

View File

@@ -0,0 +1,31 @@
From 5025e575cfb6118b4fa4d55e80e6425de03f41d2 Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Tue, 14 Jan 2025 09:24:15 -0600
Subject: [PATCH 13/16] Refactor: pacemaker-attrd: drop unused struct member
---
daemons/attrd/pacemaker-attrd.h | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/daemons/attrd/pacemaker-attrd.h b/daemons/attrd/pacemaker-attrd.h
index 57d707c37c..cc0dcf29ee 100644
--- a/daemons/attrd/pacemaker-attrd.h
+++ b/daemons/attrd/pacemaker-attrd.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2013-2024 the Pacemaker project contributors
+ * Copyright 2013-2025 the Pacemaker project contributors
*
* The version control history for this file may have further details.
*
@@ -163,7 +163,6 @@ typedef struct attribute_value_s {
char *nodename; // Node that this value is for
char *current; // Attribute value
char *requested; // Value specified in pending CIB write, if any
- char *node_xml_id; // XML ID used for node in CIB
uint32_t flags; // Group of attrd_value_flags
} attribute_value_t;
--
2.43.0

View File

@@ -0,0 +1,32 @@
From c709b083d2e798970de0d4df5758764203d105b9 Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Tue, 14 Jan 2025 14:11:04 -0600
Subject: [PATCH 14/16] Low: libcrmcluster: better detect remote nodes in peer
cache
---
lib/cluster/membership.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/lib/cluster/membership.c b/lib/cluster/membership.c
index e033f4e754..04bcc396f7 100644
--- a/lib/cluster/membership.c
+++ b/lib/cluster/membership.c
@@ -158,7 +158,13 @@ pcmk__cluster_lookup_remote_node(const char *node_name)
*/
node = pcmk__search_node_caches(0, node_name, NULL,
pcmk__node_search_cluster_member);
- if ((node != NULL) && (node->xml_id == NULL)) {
+ if ((node != NULL)
+ && ((node->xml_id == NULL)
+ /* This assumes only Pacemaker Remote nodes have their XML ID the
+ * same as their node name
+ */
+ || pcmk__str_eq(node->name, node->xml_id, pcmk__str_none))) {
+
/* node_name could be a pointer into the cache entry being removed, so
* reassign it to a copy before the original gets freed
*/
--
2.43.0

View File

@@ -0,0 +1,62 @@
From 200b0896455e243f2840b9849eb3a9230315c85f Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Tue, 14 Jan 2025 14:11:58 -0600
Subject: [PATCH 15/16] Refactor: controller: drop unused argument
---
daemons/controld/controld_fencing.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/daemons/controld/controld_fencing.c b/daemons/controld/controld_fencing.c
index 7565b6c6c4..e5f03ef51c 100644
--- a/daemons/controld/controld_fencing.c
+++ b/daemons/controld/controld_fencing.c
@@ -208,8 +208,7 @@ cib_fencing_updated(xmlNode *msg, int call_id, int rc, xmlNode *output,
}
static void
-send_stonith_update(pcmk__graph_action_t *action, const char *target,
- const char *uuid)
+send_stonith_update(const char *target, const char *uuid)
{
int rc = pcmk_ok;
pcmk__node_status_t *peer = NULL;
@@ -387,7 +386,7 @@ execute_stonith_cleanup(void)
const char *uuid = pcmk__cluster_get_xml_id(target_node);
crm_notice("Marking %s, target of a previous stonith action, as clean", target);
- send_stonith_update(NULL, target, uuid);
+ send_stonith_update(target, uuid);
free(target);
}
g_list_free(stonith_cleanup_list);
@@ -602,7 +601,7 @@ handle_fence_notification(stonith_t *st, stonith_event_t *event)
if (AM_I_DC) {
/* The DC always sends updates */
- send_stonith_update(NULL, event->target, uuid);
+ send_stonith_update(event->target, uuid);
/* @TODO Ideally, at this point, we'd check whether the fenced node
* hosted any guest nodes, and call remote_node_down() for them.
@@ -639,7 +638,7 @@ handle_fence_notification(stonith_t *st, stonith_event_t *event)
* have them do so too after the election
*/
if (controld_is_local_node(event->executioner)) {
- send_stonith_update(NULL, event->target, uuid);
+ send_stonith_update(event->target, uuid);
}
add_stonith_cleanup(event->target);
}
@@ -887,7 +886,7 @@ tengine_stonith_callback(stonith_t *stonith, stonith_callback_data_t *data)
is_remote_node);
} else if (!(pcmk_is_set(action->flags, pcmk__graph_action_sent_update))) {
- send_stonith_update(action, target, uuid);
+ send_stonith_update(target, uuid);
pcmk__set_graph_action_flags(action,
pcmk__graph_action_sent_update);
}
--
2.43.0

View File

@@ -0,0 +1,147 @@
From 3c1145cc6b520cca5180fc91c8345e666b09ebce Mon Sep 17 00:00:00 2001
From: Ken Gaillot <kgaillot@redhat.com>
Date: Tue, 14 Jan 2025 14:19:23 -0600
Subject: [PATCH 16/16] Refactor: controller: best practices for
send_stonith_update()
Add a doxygen block, rename function to
update_node_state_after_fencing() and uuid argument to target_xml_id for
readability, and improve log messages, comments, and formatting.
---
daemons/controld/controld_fencing.c | 53 ++++++++++++-----------------
1 file changed, 21 insertions(+), 32 deletions(-)
diff --git a/daemons/controld/controld_fencing.c b/daemons/controld/controld_fencing.c
index e5f03ef51c..49d1142cb3 100644
--- a/daemons/controld/controld_fencing.c
+++ b/daemons/controld/controld_fencing.c
@@ -207,11 +207,19 @@ cib_fencing_updated(xmlNode *msg, int call_id, int rc, xmlNode *output,
}
}
+/*!
+ * \internal
+ * \brief Update a fencing target's node state
+ *
+ * \param[in] target Node that was successfully fenced
+ * \param[in] target_xml_id CIB XML ID of target
+ */
static void
-send_stonith_update(const char *target, const char *uuid)
+update_node_state_after_fencing(const char *target, const char *target_xml_id)
{
int rc = pcmk_ok;
pcmk__node_status_t *peer = NULL;
+ xmlNode *node_state = NULL;
/* We (usually) rely on the membership layer to do node_update_cluster,
* and the peer status callback to do node_update_peer, because the node
@@ -219,18 +227,10 @@ send_stonith_update(const char *target, const char *uuid)
*/
int flags = node_update_join | node_update_expected;
- /* zero out the node-status & remove all LRM status info */
- xmlNode *node_state = NULL;
-
- CRM_CHECK(target != NULL, return);
- CRM_CHECK(uuid != NULL, return);
-
- /* Make sure the membership and join caches are accurate.
- * Try getting any existing node cache entry also by node uuid in case it
- * doesn't have an uname yet.
- */
- peer = pcmk__get_node(0, target, uuid, pcmk__node_search_any);
+ CRM_CHECK((target != NULL) && (target_xml_id != NULL), return);
+ // Ensure target is cached
+ peer = pcmk__get_node(0, target, target_xml_id, pcmk__node_search_any);
CRM_CHECK(peer != NULL, return);
if (peer->state == NULL) {
@@ -242,16 +242,15 @@ send_stonith_update(const char *target, const char *uuid)
}
if (peer->xml_id == NULL) {
- crm_info("Recording XML ID '%s' for node '%s'", uuid, target);
- peer->xml_id = pcmk__str_copy(uuid);
+ crm_info("Recording XML ID '%s' for node '%s'", target_xml_id, target);
+ peer->xml_id = pcmk__str_copy(target_xml_id);
}
crmd_peer_down(peer, TRUE);
- /* Generate a node state update for the CIB */
node_state = create_node_state_update(peer, flags, NULL, __func__);
+ crm_xml_add(node_state, PCMK_XA_ID, target_xml_id);
- /* we have to mark whether or not remote nodes have already been fenced */
if (pcmk_is_set(peer->flags, pcmk__node_status_remote)) {
char *now_s = pcmk__ttoa(time(NULL));
@@ -259,25 +258,15 @@ send_stonith_update(const char *target, const char *uuid)
free(now_s);
}
- /* Force our known ID */
- crm_xml_add(node_state, PCMK_XA_ID, uuid);
-
rc = controld_globals.cib_conn->cmds->modify(controld_globals.cib_conn,
PCMK_XE_STATUS, node_state,
cib_can_create);
+ pcmk__xml_free(node_state);
- /* Delay processing the trigger until the update completes */
- crm_debug("Sending fencing update %d for %s", rc, target);
+ crm_debug("Updating node state for %s after fencing (call %d)", target, rc);
fsa_register_cib_callback(rc, pcmk__str_copy(target), cib_fencing_updated);
- // Make sure it sticks
- /* controld_globals.cib_conn->cmds->bump_epoch(controld_globals.cib_conn,
- * cib_none);
- */
-
controld_delete_node_state(peer->name, controld_section_all, cib_none);
- pcmk__xml_free(node_state);
- return;
}
/*!
@@ -386,7 +375,7 @@ execute_stonith_cleanup(void)
const char *uuid = pcmk__cluster_get_xml_id(target_node);
crm_notice("Marking %s, target of a previous stonith action, as clean", target);
- send_stonith_update(target, uuid);
+ update_node_state_after_fencing(target, uuid);
free(target);
}
g_list_free(stonith_cleanup_list);
@@ -601,7 +590,7 @@ handle_fence_notification(stonith_t *st, stonith_event_t *event)
if (AM_I_DC) {
/* The DC always sends updates */
- send_stonith_update(event->target, uuid);
+ update_node_state_after_fencing(event->target, uuid);
/* @TODO Ideally, at this point, we'd check whether the fenced node
* hosted any guest nodes, and call remote_node_down() for them.
@@ -638,7 +627,7 @@ handle_fence_notification(stonith_t *st, stonith_event_t *event)
* have them do so too after the election
*/
if (controld_is_local_node(event->executioner)) {
- send_stonith_update(event->target, uuid);
+ update_node_state_after_fencing(event->target, uuid);
}
add_stonith_cleanup(event->target);
}
@@ -886,7 +875,7 @@ tengine_stonith_callback(stonith_t *stonith, stonith_callback_data_t *data)
is_remote_node);
} else if (!(pcmk_is_set(action->flags, pcmk__graph_action_sent_update))) {
- send_stonith_update(target, uuid);
+ update_node_state_after_fencing(target, uuid);
pcmk__set_graph_action_flags(action,
pcmk__graph_action_sent_update);
}
--
2.43.0

View File

@@ -0,0 +1,58 @@
From 2cad441b37a6aff8a695754332793ac569ad54ba Mon Sep 17 00:00:00 2001
From: Reid Wahl <nrwahl@protonmail.com>
Date: Fri, 24 Jan 2025 13:20:46 -0800
Subject: [PATCH] Low: libcrmcommon: Fix memory leak in
text_end_list()/curses_end_list()
We were freeing the string members of text_list_data_t, but not the
text_list_data_t object itself. Similarly for curses_list_data_t.
Ref T704
Signed-off-by: Reid Wahl <nrwahl@protonmail.com>
---
lib/common/output_text.c | 3 ++-
tools/crm_mon_curses.c | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/lib/common/output_text.c b/lib/common/output_text.c
index 5b557834b7..4e0024c95a 100644
--- a/lib/common/output_text.c
+++ b/lib/common/output_text.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2019-2024 the Pacemaker project contributors
+ * Copyright 2019-2025 the Pacemaker project contributors
*
* The version control history for this file may have further details.
*
@@ -34,6 +34,7 @@ free_list_data(gpointer data) {
free(list_data->singular_noun);
free(list_data->plural_noun);
+ free(list_data);
}
static void
diff --git a/tools/crm_mon_curses.c b/tools/crm_mon_curses.c
index 325ae03515..0654322cbe 100644
--- a/tools/crm_mon_curses.c
+++ b/tools/crm_mon_curses.c
@@ -1,5 +1,5 @@
/*
- * Copyright 2019-2024 the Pacemaker project contributors
+ * Copyright 2019-2025 the Pacemaker project contributors
*
* The version control history for this file may have further details.
*
@@ -40,6 +40,7 @@ free_list_data(gpointer data) {
free(list_data->singular_noun);
free(list_data->plural_noun);
+ free(list_data);
}
static void
--
2.43.0

View File

@@ -0,0 +1,69 @@
From e8ab7135f77f22ec494a202a66c7a5e9b74630d0 Mon Sep 17 00:00:00 2001
From: Chris Lumens <clumens@redhat.com>
Date: Fri, 31 Jan 2025 10:06:04 -0500
Subject: [PATCH] Low: python: Add python value for new CRM_EX_NO_DC exit code.
---
doc/sphinx/Pacemaker_Development/c.rst | 2 ++
include/crm/common/results.h | 5 ++++-
python/pacemaker/exitstatus.py | 3 ++-
3 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/doc/sphinx/Pacemaker_Development/c.rst b/doc/sphinx/Pacemaker_Development/c.rst
index bfdff64633..8d879617f1 100644
--- a/doc/sphinx/Pacemaker_Development/c.rst
+++ b/doc/sphinx/Pacemaker_Development/c.rst
@@ -850,6 +850,8 @@ messages and converting from one to another, can be found in
* ``crm_exit_t`` (the ``CRM_EX_*`` enum values) is a system-independent code
suitable for the exit status of a process, or for interchange between nodes.
+ These values need to be kept in sync with the ``ExitStatus`` enum in
+ ``python/pacemaker/exitstatus.py``.
* Other special-purpose status codes exist, such as ``enum ocf_exitcode`` for
the possible exit statuses of OCF resource agents (along with some
diff --git a/include/crm/common/results.h b/include/crm/common/results.h
index a671cb8efd..60a88ddbc0 100644
--- a/include/crm/common/results.h
+++ b/include/crm/common/results.h
@@ -1,5 +1,5 @@
/*
- * Copyright 2012-2024 the Pacemaker project contributors
+ * Copyright 2012-2025 the Pacemaker project contributors
*
* The version control history for this file may have further details.
*
@@ -226,6 +226,9 @@ enum ocf_exitcode {
* tldp.org recommends 64-113 for application use.
*
* We try to overlap with the above conventions when practical.
+ *
+ * NOTE: When new exit codes are added here, remember to also update
+ * python/pacemaker/exitstatus.py.
*/
typedef enum crm_exit_e {
// Common convention
diff --git a/python/pacemaker/exitstatus.py b/python/pacemaker/exitstatus.py
index 03f7d2c8e2..3f951ce465 100644
--- a/python/pacemaker/exitstatus.py
+++ b/python/pacemaker/exitstatus.py
@@ -1,7 +1,7 @@
"""A module providing constants relating to why a process or function exited."""
__all__ = ["ExitStatus"]
-__copyright__ = "Copyright 2023-2024 the Pacemaker project contributors"
+__copyright__ = "Copyright 2023-2025 the Pacemaker project contributors"
__license__ = "GNU Lesser General Public License version 2.1 or later (LGPLv2.1+)"
from enum import IntEnum, unique
@@ -57,6 +57,7 @@ class ExitStatus(IntEnum):
NOT_YET_IN_EFFECT = 111
INDETERMINATE = 112
UNSATISFIED = 113
+ NO_DC = 114
TIMEOUT = 124
DEGRADED = 190
DEGRADED_PROMOTED = 191
--
2.43.0

View File

@@ -0,0 +1,34 @@
From 51a93e7716566f78ba6f3b8fda34d0547e49d449 Mon Sep 17 00:00:00 2001
From: Chris Lumens <clumens@redhat.com>
Date: Mon, 3 Feb 2025 12:25:30 -0500
Subject: [PATCH 1/2] Low: libcrmservices: Don't leak msg if systemd_proxy is
NULL.
---
lib/services/systemd.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lib/services/systemd.c b/lib/services/systemd.c
index b1ab9ea49c..282e588fdd 100644
--- a/lib/services/systemd.c
+++ b/lib/services/systemd.c
@@ -104,13 +104,15 @@ systemd_send_recv(DBusMessage *msg, DBusError *error, int timeout)
static DBusMessage *
systemd_call_simple_method(const char *method)
{
- DBusMessage *msg = systemd_new_method(method);
+ DBusMessage *msg = NULL;
DBusMessage *reply = NULL;
DBusError error;
/* Don't call systemd_init() here, because that calls this */
CRM_CHECK(systemd_proxy, return NULL);
+ msg = systemd_new_method(method);
+
if (msg == NULL) {
crm_err("Could not create message to send %s to systemd", method);
return NULL;
--
2.43.0

View File

@@ -0,0 +1,37 @@
From 4a4e721520a7c72afc42ab2ffa944327edab7325 Mon Sep 17 00:00:00 2001
From: Chris Lumens <clumens@redhat.com>
Date: Mon, 3 Feb 2025 12:46:41 -0500
Subject: [PATCH 2/2] Refactor: libcrmservices: Unref the dbus connection...
...when we disconnect from the bus. We aren't allowed to close the
connection since we acquired it with dbus_bus_get which makes it a
shared connection. So, this is the best cleanup we can do.
---
lib/services/dbus.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/lib/services/dbus.c b/lib/services/dbus.c
index 8befef8d2e..9033d3cea6 100644
--- a/lib/services/dbus.c
+++ b/lib/services/dbus.c
@@ -294,12 +294,12 @@ pcmk_dbus_connect(void)
void
pcmk_dbus_disconnect(DBusConnection *connection)
{
- /* Per the DBus documentation, connections created with
- * dbus_connection_open() are owned by libdbus and should never be closed.
- *
- * @TODO Should we call dbus_connection_unref() here?
+ /* We acquire our dbus connection with dbus_bus_get(), which makes it a
+ * shared connection. Therefore, we can't close or free it here. The
+ * best we can do is decrement the reference count so dbus knows when
+ * there are no more clients connected to it.
*/
- return;
+ dbus_connection_unref(connection);
}
// Custom DBus error names to use
--
2.43.0

View File

@@ -0,0 +1,41 @@
From e128ae183337327ff62012a0a11125ddbe71f06b Mon Sep 17 00:00:00 2001
From: "Gao,Yan" <ygao@suse.com>
Date: Thu, 6 Feb 2025 16:45:29 +0100
Subject: [PATCH] Fix: libcrmcluster: prevent external callers from triggering
assertion when connecting to cluster
When sbd is connecting to cluster by calling crm_cluster_connect() ->
pcmk_cluster_connect() -> pcmk__corosync_connect() ->
pcmk__cpg_connect() -> pcmk__server_message_type()
, it triggers assertion:
error: log_assertion_as: pcmk__server_message_type: Triggered fatal
assertion at servers.c:165 : (server > 0) && (server <
PCMK__NELEM(server_info))
This fixes it by avoiding calling pcmk__server_message_type() in
pcmk__cpg_connect().
---
lib/cluster/cpg.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/lib/cluster/cpg.c b/lib/cluster/cpg.c
index db051fc9e4..9d84286828 100644
--- a/lib/cluster/cpg.c
+++ b/lib/cluster/cpg.c
@@ -805,7 +805,10 @@ pcmk__cpg_connect(pcmk_cluster_t *cluster)
cpg_evicted = false;
- cpg_group_name = pcmk__server_message_type(cluster->priv->server);
+ if (cluster->priv->server != pcmk_ipc_unknown) {
+ cpg_group_name = pcmk__server_message_type(cluster->priv->server);
+ }
+
if (cpg_group_name == NULL) {
/* The name will already be non-NULL for Pacemaker servers. If a
* command-line tool or external caller connects to the cluster,
--
2.43.0

View File

@@ -0,0 +1,27 @@
From f36e0de53d4a3c3a0e770f49bfa50f23fe6c1225 Mon Sep 17 00:00:00 2001
From: Reid Wahl <nrwahl@protonmail.com>
Date: Mon, 3 Mar 2025 16:39:12 -0800
Subject: [PATCH] Low: tools: Fix memory leak in cli_resource_delete()
pcmk__copy_node_list() made a copy of each pcmk_node_t object, but we
never freed those copies. Since we don't modify the nodes in this
function, we can make a shallow copy using g_list_copy().
Signed-off-by: Reid Wahl <nrwahl@protonmail.com>
---
tools/crm_resource_runtime.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
Index: pacemaker-3.0.0+20250218.64cd85422c/tools/crm_resource_runtime.c
===================================================================
--- pacemaker-3.0.0+20250218.64cd85422c.orig/tools/crm_resource_runtime.c
+++ pacemaker-3.0.0+20250218.64cd85422c/tools/crm_resource_runtime.c
@@ -970,7 +970,7 @@ cli_resource_delete(pcmk_ipc_api_t *cont
GList *nodes = g_hash_table_get_values(rsc->priv->probed_nodes);
if(nodes == NULL && force) {
- nodes = pcmk__copy_node_list(scheduler->nodes, false);
+ nodes = g_list_copy(scheduler->nodes);
} else if ((nodes == NULL)
&& pcmk_is_set(rsc->flags, pcmk__rsc_exclusive_probes)) {

View File

@@ -0,0 +1,74 @@
From 6265e99e4acab136ba18ba4db3efdaa48912e64d Mon Sep 17 00:00:00 2001
From: "Gao,Yan" <ygao@suse.com>
Date: Tue, 18 Mar 2025 23:08:20 +0100
Subject: [PATCH] Fix: libcrmcommon: provide a description for pcmk_rc_no_dc
return code
This adds an info entry for `pcmk_rc_no_dc` return code so that
pcmk_rc_str() provides an informative description for it rather than
just an "Error".
This should have been done with a1d94f7ab5.
In particular for the output of `crmadmin --dc_lookup/-D`, dc() function
outputs somewhat redundant information when DC is not yet elected. But
I'm not sure whether/how we should change the output format there.
---
cts/cli/regression.error_codes.exp | 4 ++++
lib/common/results.c | 4 ++++
2 files changed, 8 insertions(+)
diff --git a/cts/cli/regression.error_codes.exp b/cts/cli/regression.error_codes.exp
index 3c330eda3f..9fe5cc7ed3 100644
--- a/cts/cli/regression.error_codes.exp
+++ b/cts/cli/regression.error_codes.exp
@@ -145,6 +145,7 @@ pcmk_rc_node_unknown - Node not found
=#=#=#= End test: Get negative Pacemaker return code (with name) (XML) - OK (0) =#=#=#=
* Passed: crm_error - Get negative Pacemaker return code (with name) (XML)
=#=#=#= Begin test: List Pacemaker return codes (non-positive) =#=#=#=
+-1040: DC is not yet elected
-1039: Compression/decompression error
-1038: Nameserver resolution error
-1037: No active transaction found
@@ -189,6 +190,7 @@ pcmk_rc_node_unknown - Node not found
* Passed: crm_error - List Pacemaker return codes (non-positive)
=#=#=#= Begin test: List Pacemaker return codes (non-positive) (XML) =#=#=#=
<pacemaker-result api-version="X" request="crm_error -l -r --output-as=xml">
+ <result-code code="-1040" description="DC is not yet elected"/>
<result-code code="-1039" description="Compression/decompression error"/>
<result-code code="-1038" description="Nameserver resolution error"/>
<result-code code="-1037" description="No active transaction found"/>
@@ -233,6 +235,7 @@ pcmk_rc_node_unknown - Node not found
=#=#=#= End test: List Pacemaker return codes (non-positive) (XML) - OK (0) =#=#=#=
* Passed: crm_error - List Pacemaker return codes (non-positive) (XML)
=#=#=#= Begin test: List Pacemaker return codes (non-positive) (with names) =#=#=#=
+-1040: pcmk_rc_no_dc DC is not yet elected
-1039: pcmk_rc_compression Compression/decompression error
-1038: pcmk_rc_ns_resolution Nameserver resolution error
-1037: pcmk_rc_no_transaction No active transaction found
@@ -277,6 +280,7 @@ pcmk_rc_node_unknown - Node not found
* Passed: crm_error - List Pacemaker return codes (non-positive) (with names)
=#=#=#= Begin test: List Pacemaker return codes (non-positive) (with names) (XML) =#=#=#=
<pacemaker-result api-version="X" request="crm_error -n -l -r --output-as=xml">
+ <result-code code="-1040" name="pcmk_rc_no_dc" description="DC is not yet elected"/>
<result-code code="-1039" name="pcmk_rc_compression" description="Compression/decompression error"/>
<result-code code="-1038" name="pcmk_rc_ns_resolution" description="Nameserver resolution error"/>
<result-code code="-1037" name="pcmk_rc_no_transaction" description="No active transaction found"/>
diff --git a/lib/common/results.c b/lib/common/results.c
index 226ba40c5b..568b8d448f 100644
--- a/lib/common/results.c
+++ b/lib/common/results.c
@@ -426,6 +426,10 @@ static const struct pcmk__rc_info {
"Compression/decompression error",
-pcmk_err_generic,
},
+ { "pcmk_rc_no_dc",
+ "DC is not yet elected",
+ -pcmk_err_generic,
+ },
};
/*!
--
2.43.0

View File

@@ -0,0 +1,34 @@
From 438b66c68760df318551ce34068278ca8be3917d Mon Sep 17 00:00:00 2001
From: xin liang <xliang@suse.com>
Date: Tue, 25 Mar 2025 20:23:34 +0800
Subject: [PATCH] remote.in: Add a default interval value for monitor action
---
agents/ocf/remote.in | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/agents/ocf/remote.in b/agents/ocf/remote.in
index 048b504344..8541d0e18e 100755
--- a/agents/ocf/remote.in
+++ b/agents/ocf/remote.in
@@ -2,7 +2,7 @@
#
# ocf:pacemaker:remote OCF resource agent
#
-# Copyright 2013-2023 the Pacemaker project contributors
+# Copyright 2013-2025 the Pacemaker project contributors
#
# The version control history for this file may have further details.
#
@@ -56,7 +56,7 @@ meta_data() {
<actions>
<action name="start" timeout="60s" />
<action name="stop" timeout="60s" />
- <action name="monitor" timeout="30s" />
+ <action name="monitor" timeout="30s" interval="30s" />
<action name="migrate_to" timeout="60s" />
<action name="migrate_from" timeout="60s" />
<action name="reload" timeout="60s" />
--
2.43.0

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4aa7338fc3569acfb361d80e242da16c13bb412e64dc3cd6bcd2f9431f85dc7c
size 4378168

Binary file not shown.

Binary file not shown.

View File

@@ -1,19 +0,0 @@
commit f813880dd1b6d1614393128a7f5f745437bea121
Author: Gao,Yan <ygao@suse.com>
Date: Wed Mar 27 22:03:56 2013 +0800
Build: lrmd: Change the default directory for nagios plugins
Index: pacemaker-2.1.4+20220720.3b57f9b58/configure.ac
===================================================================
--- pacemaker-2.1.4+20220720.3b57f9b58.orig/configure.ac
+++ pacemaker-2.1.4+20220720.3b57f9b58/configure.ac
@@ -1523,7 +1523,7 @@ AC_DEFINE_UNQUOTED([SUPPORT_NAGIOS], [$w
AM_CONDITIONAL([BUILD_NAGIOS], [test $with_nagios -eq $REQUIRED])
AS_IF([test x"$NAGIOS_PLUGIN_DIR" = x""],
- [NAGIOS_PLUGIN_DIR="${libexecdir}/nagios/plugins"])
+ [NAGIOS_PLUGIN_DIR="${prefix}/lib/nagios/plugins"])
AC_DEFINE_UNQUOTED(NAGIOS_PLUGIN_DIR, "$NAGIOS_PLUGIN_DIR", Directory for nagios plugins)
AC_SUBST(NAGIOS_PLUGIN_DIR)

View File

@@ -1,3 +1,665 @@
-------------------------------------------------------------------
Wed Apr 23 07:19:55 UTC 2025 - Yan Gao <ygao@suse.com>
- spec: Provides user(hacluster) and group(haclient)
-------------------------------------------------------------------
Tue Apr 01 06:29:48 UTC 2025 - Yan Gao <ygao@suse.com>
- pacemaker-attrd: make a peer learn our node name once it has joined (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
* bsc#1239629-0008-Fix-pacemaker-attrd-make-a-peer-learn-our-node-name-.patch
- pacemaker-attrd: ability to send a protocol message to a single peer (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
* bsc#1239629-0007-Refactor-pacemaker-attrd-ability-to-send-a-protocol-.patch
- pacemaker-attrd: make attrd_send_message()'s node argument const (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
* bsc#1239629-0006-Refactor-pacemaker-attrd-make-attrd_send_message-s-n.patch
- pacemaker-attrd: remember names of peers from attribute update in case unknown (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
* bsc#1239629-0005-Fix-pacemaker-attrd-remember-names-of-peers-from-att.patch
- pacemaker-attrd: use %PRIu32 format specifier instead of %u for node id (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
* bsc#1239629-0004-Log-pacemaker-attrd-use-PRIu32-format-specifier-inst.patch
- libcrmcluster: correctly log node id (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
* bsc#1239629-0003-Log-libcrmcluster-correctly-log-node-id.patch
- pacemaker-attrd: log the cluster layer id of the changed peer (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
* bsc#1239629-0002-Log-pacemaker-attrd-log-the-cluster-layer-id-of-the-.patch
- pacemaker-attrd: prevent segfault if a peer leaves when its name is unknown yet (bsc#1239629, gh#ClusterLabs/pacemaker#3847)
* bsc#1239629-0001-Fix-pacemaker-attrd-prevent-segfault-if-a-peer-leave.patch
-------------------------------------------------------------------
Thu Mar 27 10:00:32 UTC 2025 - Yan Gao <ygao@suse.com>
- spec: create a temporary file in /run directory (bsc#1239770)
-------------------------------------------------------------------
Thu Mar 27 08:18:44 UTC 2025 - Yan Gao <ygao@suse.com>
- agents: Add an advised interval value for monitor action in remote RA (gh#ClusterLabs/pacemaker#3854)
* pacemaker#3854-0001-remote.in-Add-a-default-interval-value-for-monitor-a.patch
-------------------------------------------------------------------
Mon Mar 24 18:38:04 UTC 2025 - Yan Gao <ygao@suse.com>
- libcrmcommon: provide a description for pcmk_rc_no_dc return code (gh#ClusterLabs/pacemaker#3848)
* pacemaker#3848-0001-Fix-libcrmcommon-provide-a-description-for-pcmk_rc_n.patch
-------------------------------------------------------------------
Thu Mar 13 12:38:44 UTC 2025 - Yan Gao <ygao@suse.com>
- cts-scheduler: update tests for considering parents of an unmanaged resource active on the node (gh#ClusterLabs/pacemaker#3836, bsc#1238519)
* bsc#1238519-0002-Test-cts-scheduler-update-tests-for-considering-pare.patch
- libpe_status: consider parents of an unmanaged resource active on the node (gh#ClusterLabs/pacemaker#3836, bsc#1238519)
* bsc#1238519-0001-Fix-libpe_status-consider-parents-of-an-unmanaged-re.patch
-------------------------------------------------------------------
Thu Mar 13 12:27:46 UTC 2025 - Yan Gao <ygao@suse.com>
- tools: Fix memory leak in cli_resource_delete() (gh#ClusterLabs/pacemaker#3835)
* pacemaker#3835-0001-Low-tools-Fix-memory-leak-in-cli_resource_delete.patch
-------------------------------------------------------------------
Tue Mar 11 18:29:46 UTC 2025 - Yan Gao <ygao@suse.com>
- spec: specify 189 as uid/gid of hacluster/haclient (bsc#1239084)
-------------------------------------------------------------------
Tue Mar 11 17:24:00 UTC 2025 - Yan Gao <ygao@suse.com>
- spec: specify /var/lib/pacemaker as home directory of hacluster user (bsc#1239084)
-------------------------------------------------------------------
Fri Feb 21 09:34:47 UTC 2025 - Yan Gao <ygao@suse.com>
- Update to version 3.0.0+20250218.64cd85422c:
- build: Fix default pacemaker-remoted path
-------------------------------------------------------------------
Fri Feb 21 09:12:35 UTC 2025 - Yan Gao <ygao@suse.com>
- libcrmcluster: prevent external callers from triggering assertion when connecting to cluster (gh#ClusterLabs/pacemaker#3821)
* pacemaker#3821-0001-Fix-libcrmcluster-prevent-external-callers-from-trig.patch
-------------------------------------------------------------------
Wed Feb 19 17:01:34 UTC 2025 - Yan Gao <ygao@suse.com>
- libcrmservices: Unref the dbus connection... (gh#ClusterLabs/pacemaker#3816)
* pacemaker#3816-0002-Refactor-libcrmservices-Unref-the-dbus-connection.patch
- libcrmservices: Don't leak msg if systemd_proxy is NULL. (gh#ClusterLabs/pacemaker#3816)
* pacemaker#3816-0001-Low-libcrmservices-Don-t-leak-msg-if-systemd_proxy-i.patch
-------------------------------------------------------------------
Wed Feb 19 13:58:59 UTC 2025 - Yan Gao <ygao@suse.com>
- python: Add python value for new CRM_EX_NO_DC exit code. (gh#ClusterLabs/pacemaker#3815)
* pacemaker#3815-0001-Low-python-Add-python-value-for-new-CRM_EX_NO_DC-exi.patch
- libcrmcommon: Fix memory leak in text_end_list()/curses_end_list() (gh#ClusterLabs/pacemaker#3814)
* pacemaker#3814-0001-Low-libcrmcommon-Fix-memory-leak-in-text_end_list-cu.patch
- crmadmin: return error if DC is not elected #2902 #3606 (gh#ClusterLabs/pacemaker#3716)
* pacemaker#3716-0001-Fix-crmadmin-return-error-if-DC-is-not-elected-2902-.patch
-------------------------------------------------------------------
Mon Feb 17 20:29:03 UTC 2025 - Yan Gao <ygao@suse.com>
- controller: best practices for send_stonith_update() (gh#ClusterLabs/pacemaker#3796)
* pacemaker#3796-0016-Refactor-controller-best-practices-for-send_stonith_.patch
- controller: drop unused argument
* pacemaker#3796-0015-Refactor-controller-drop-unused-argument.patch
- libcrmcluster: better detect remote nodes in peer cache
* pacemaker#3796-0014-Low-libcrmcluster-better-detect-remote-nodes-in-peer.patch
- pacemaker-attrd: drop unused struct member
* pacemaker#3796-0013-Refactor-pacemaker-attrd-drop-unused-struct-member.patch
- pacemaker-attrd: track node XML IDs independent of attribute values
* pacemaker#3796-0012-Low-pacemaker-attrd-track-node-XML-IDs-independent-o.patch
- pacemaker-attrd: use variable for whether to write
* pacemaker#3796-0011-Refactor-pacemaker-attrd-use-variable-for-whether-to.patch
- pacemaker-attrd: rename flag to match recent change
* pacemaker#3796-0010-Refactor-pacemaker-attrd-rename-flag-to-match-recent.patch
- pacemaker-attrd: track node CIB ID rather than cluster ID
* pacemaker#3796-0009-Refactor-pacemaker-attrd-track-node-CIB-ID-rather-th.patch
- libcrmcluster: track local node XML ID in cluster object
* pacemaker#3796-0008-Refactor-libcrmcluster-track-local-node-XML-ID-in-cl.patch
- libcrmcluster: use pcmk__cluster_get_xml_id() when possible
* pacemaker#3796-0007-Low-libcrmcluster-use-pcmk__cluster_get_xml_id-when-.patch
- libcrmcluster: rename pcmk__cluster_node_uuid()
* pacemaker#3796-0006-Refactor-libcrmcluster-rename-pcmk__cluster_node_uui.patch
- libcrmcluster: allow searching by XML ID in pcmk__search_node_caches()
* pacemaker#3796-0005-Refactor-libcrmcluster-allow-searching-by-XML-ID-in-.patch
- pacemaker-attrd: bail earlier if value won't be written
* pacemaker#3796-0004-Low-pacemaker-attrd-bail-earlier-if-value-won-t-be-w.patch
- pacemaker-attrd: use API to get peer XML ID
* pacemaker#3796-0003-Low-pacemaker-attrd-use-API-to-get-peer-XML-ID.patch
- pacemaker-attrd: don't use "uuid" to mean "XML ID"
* pacemaker#3796-0002-Refactor-pacemaker-attrd-don-t-use-uuid-to-mean-XML-.patch
- pacemaker-attrd: always add remoteness to attribute value XML (gh#ClusterLabs/pacemaker#3796)
* pacemaker#3796-0001-Refactor-pacemaker-attrd-always-add-remoteness-to-at.patch
-------------------------------------------------------------------
Mon Feb 17 19:50:01 UTC 2025 - Yan Gao <ygao@suse.com>
- controller: address format-overflow warnings (gh#ClusterLabs/pacemaker#3794)
* pacemaker#3794-0001-Low-controller-address-format-overflow-warnings.patch
- libcrmcommon: Catch correct errors for remote connection sockets (gh#ClusterLabs/pacemaker#3793)
* pacemaker#3793-0002-Low-libcrmcommon-Catch-correct-errors-for-remote-con.patch
- various: Correct some printf specifiers (gh#ClusterLabs/pacemaker#3793)
* pacemaker#3793-0001-Low-various-Correct-some-printf-specifiers.patch
- schedulerd: Resetting error and warning flags. (gh#ClusterLabs/pacemaker#3791)
* pacemaker#3791-0001-Mid-schedulerd-Resetting-error-and-warning-flags.patch
- controller: round timeout when checking remaining remote command time (gh#ClusterLabs/pacemaker#3781)
* pacemaker#3781-0001-Low-controller-round-timeout-when-checking-remaining.patch
- systemd: If the state is Pending at the time of probe, execute follow up monitor. (gh#ClusterLabs/pacemaker#3746)
* pacemaker#3746-0002-Mid-systemd-If-the-state-is-Pending-at-the-time-of-p.patch
- systemd: Fix when monitor of systemd resource continues to be pending. (gh#ClusterLabs/pacemaker#3746)
* pacemaker#3746-0001-Mid-systemd-Fix-when-monitor-of-systemd-resource-con.patch
-------------------------------------------------------------------
Mon Feb 03 10:44:36 UTC 2025 - Yan Gao <ygao@suse.com>
- Update to version 3.0.0+20250128.fa492f5181:
- libraries: Update version numbers in so names
-------------------------------------------------------------------
Thu Jan 09 12:12:10 UTC 2025 - Yan Gao <ygao@suse.com>
- Update to version 3.0.0+20250108.d8340737c4 (Pacemaker-3.0.0):
- Build: raise minimum GnuTLS dependency to 3.4.6
-------------------------------------------------------------------
Wed Dec 25 09:59:10 UTC 2024 - Yan Gao <ygao@suse.com>
- Update to version 2.1.9+20241223.2587987be9 (Pacemaker-3.0.0-rc3):
- agents: Replace the egrep command with the EGREP definition in ping RA
- libcrmcluster: fix format typos
- doc: drop Inkscape dependency
- tools: validate stonith_admin --timeout value
- libpacemaker: set fail-count to INFINITY for fatal failures (gh#ClusterLabs/pacemaker#3771)
- libpacemaker: add PCMK__XA_FAILED_START_OFFSET and PCMK__XA_FAILED_STOP_OFFSET (gh#ClusterLabs/pacemaker#3771)
- OCF: controld.in: Remove gfs_controld command as it's already obsoleted (gh#ClusterLabs/pacemaker#3767)
-------------------------------------------------------------------
Thu Dec 12 10:21:23 UTC 2024 - Yan Gao <ygao@suse.com>
- Update to version 2.1.9+20241211.4ae3a303e5 (Pacemaker-3.0.0-rc2):
- sysconfig: Document using certificates for remote nodes.
- sysconfig: Explain permissions needed on TLS-related files.
- liblrmd: Enable TLS support for Pacemaker Remote clients.
- daemons: Enable TLS support for Pacemaker Remote nodes.
- libcrmcommon: Set *tls = NULL in a few more locations.
- xml: Warn about post-transform behavior changes for ACLs with xpath
- libcrmcluster: restore CPG header size compatibility
- libcrmcluster: improve messages in pcmk__cpg_message_data()
- libcrmcluster: don't assert for CPG decompression error
- libcrmcluster: avoid redundant log for invalid CPG messages
- libcrmcluster: initialize from in pcmk__cpg_message_data()
- scheduler: avoid memory leak in bundles
- libcib: Enable TLS certs for remote CIB operations.
- libs: Log if a TLS certificate is close to expiration.
- libcrmcommon: If the server supports certs, require them...
- daemons: Set up X509 auth in based if enabled.
- sysconfig: Add env settings needed for X509 authentication.
- xml: Preserve ACL reference behavior for replaced constraints
- xml: Ensure ACL permissions are valid after XSL transformations
- xml: Warn if schema transformation drops remove-after-stop property
- xml: Warn if schema transformation drops moon phase
- xml: Info if schema transformation drops empty groups or clones
- xml: Warn if schema transformation drops colocation/order lifetimes
- xml: Warn if schema transformation drops can_fail or...
- xml: Warn if schema transformation drops restart-type meta-attr
- xml: Warn if schema transformation drops rkt bundles
- xml: Warn if schema transformation drops nagios/upstart resources
- log: Allow CIB upgrade messages to start with W, I, D
- various: clean up library memory at child exit
- pacemaker-remoted: improve exit codes for schema failures
- controller: avoid memory leak when updating join phase
- scheduler: avoid memory leak when freeing node copies
-------------------------------------------------------------------
Fri Dec 06 11:41:46 UTC 2024 - Yan Gao <ygao@suse.com>
- Update to version 2.1.9+20241118.394d77ec98 (Pacemaker-3.0.0-rc1):
- NLS: update translations before 3.0.0-rc1
- libstonithd: drop unknown agent message
- controller: downgrade "Not registering" message
- tools: improve crm_mon "Retrying" message
- libcrmcluster: improve XML ID logs in pcmk__get_node()
- scheduler,libcrmservice,tools: compare resource IDs case-sensitively
- python: Always use generated corosync config in regression tests
- tools: crm_resource --restart works with master resources
- tools: crm_resource --set-parameter works with master resources
- tools: crm_resource --delete-parameter --element works with master
- libcrmcommon: allow NULL unpack_data in pcmk__cmp_nvpair_blocks()
- libcrmcommon: ignore NULL first ID in pcmk__cmp_nvpair_blocks()
- libcrmcommon: bump feature set to 3.20.0
- rpm: drop no-longer-needed support tests from spec file
- liblrmd: Perform the API handshake asynchronously.
- libcrmcommon: always respect overwrite in pcmk__cmp_nvpair_blocks()
- executor: avoid use-after-free upon shutdown (gh#ClusterLabs/pacemaker#3718)
- Change
- tools: Drop crm_resource --set-property option
- tools: Drop crm_resource --get-property option
- tools: Drop deprecated crm_resource --xml-file option
- daemons: execd should read remote client messages async.
- CIB: deprecate record-pending operation option
- tools: restore crmadmin default timeout to 30 seconds
- libcrmcommon: any negative interval is an error
- agents: always allow attribute agent to show metadata
- agents: use RESOURCENAME in attribute agent metadata
- agents: use configured run directory in attribute agent
- controld: leave xml-src attribute empty when no DC selected #2902
- schemas: Disallow fencing-level index greater than 9
- various: Drop support for phase of the moon in rule date_spec
- schemas: nvpair value should not be optional
- tools: Define behavior of attrd_updater -Q without -N
- tools: crm_resource returns error on failed schema upgrade
- libpe_status: Drop support for role_after_failure op meta-attr
- libpacemaker: Drop support for can_fail op meta-attribute
- various: Drop support for restart-type resource meta-attribute
- schemas: Disallow phase of the moon in rule date_spec
- libcib: Perform server-side remote CIB reads asynchronously.
- pacemakerd: combine subdaemon start-up logs
- libcrmcommon: avoid potential overflow when adding seconds
- libcib: Perform client-side remote CIB reads asynchronously.
- schemas: Disallow role_after_failure resource meta-attribute
- schemas: Disallow can_fail operation meta-attribute
- schemas: Disallow restart-type resource meta-attribute
- libcrmcommon: Don't assert on failure to write errors.
- CIB: ignore node expressions for meta-attributes
- libpacemaker: don't pass node attributes with fence actions
- libcrmcommon: Ignore crmd-transition-delay property
- libcrmcommon: Ignore crmd-finalization-timeout property
- libcrmcommon: Ignore crmd-integration-timeout property
- various: Ignore stonith-action=poweroff property
- various: Ignore remove-after-stop property
- all: use consistent capitalization in execution status strings
- tools: crm_shadow --reset now requires --force
- scheduler: ignore unknown actions for resource state
- libcrmcommon: bounds-check when adding to years
- controller: avoid overflow in recheck time
- libcrmservice: accept no more than around 10MiB stdout/stderr
- schemas: Disallow crmd-transition-delay property
- schemas: Disallow crmd-finalization-timeout property
- schemas: Disallow crmd-integration-timeout property
- schemas: Disallow stonith-action=poweroff property
- schemas: Disallow remove-after-stop cluster property
- libpe_status: Drop support for ping nodes
- schemas: Disallow ping nodes
- scheduler: Fixed memory leak when searching for unfencing devices.
- CIB: drop support for unset or unknown validate-with
- pacemaker-based,libcib: warn for invalid call options
- controller,liblrmd: warn for invalid remote proxy IPC flags
- fencer: warn for invalid call options
- fencer: warn if device support flags invalid
- libcrmservice: use proper types with write()
- libcrmcommon,libcib,scheduler: use unsigned int for CIB sequence number
- scheduler: avoid overflow in utilization values
- CIB: drop support for rkt bundles
- CIB: drop support for nagios-class resources
- CIB: drop support for Upstart
- libcrmcommon: handle corner cases better in crm_time_add_days()
- libcrmcommon: handle too-negative components of ISO8601 durations
- various: Drop support for masters attribute in bundles
- various: Drop support for master resources
- schemas: Disallow rkt bundles
- schemas: Disallow nagios-class resources
- schemas: Disallow upstart-class resources
- cts, xml: New upgrade-3.10-4.xsl XSLT stylesheet
- controller: avoid memory leak on scheduler API error
- libcib: treat empty variant variables same as unset
- pacemaker-based: reject remote users if PAM not available
- pacemaker-based: compare remote user names case-sensitively
- pacemaker-based: improve remote client connection messages
- lrmd: Report the result of add_tls_to_mainloop...
- cts-lab: Allow running multiple tests with the --choose argument.
- CIB: do not recover from XML syntax errors
- libcrmcommon: do not return partially parsed XML
- CIB: ignore colocation constraints with invalid scores
- CIB: ignore location constraints if score attribute is unset or invalid
- CIB: ignore location constraints with invalid scores
- scheduler: warn for invalid promotion scores
- scheduler: warn if node score is invalid
- scheduler: warn if nvpair block score is invalid
- various: Drop support for lifetime elements in constraints
- scheduler: warn for invalid fail counts
- CIB: treat negative migration-threshold as invalid and use default
- scheduler: warn if resource stickiness is invalid
- scheduler: warn if resource priority is invalid
- scheduler: ignore and warn for invalid node health attributes
- scheduler: warn for invalid health cluster option values
- controller: improve stonith-max-attempts logs
- pacemaker-attrd: use pcmk_parse_score() in attrd_expand_value()
- schemas: Disallow masters attribute in bundle containers
- schemas: Disallow master resources
- all: improve messages when parsing long integers
- pacemaker-based: log cluster-ipc-limit errors
- libcrmcommon: improve IPC buffer size messages
- libcrmcommon: Drop xmlRegisterNodeDefault()
- libcrmcommon: NULL-check pcmk__xml_tree_foreach() argument
- libpe_rules: Drop support for multiple top-level location rules
- schemas: Disallow lifetime elements in constraints
- cts, xml: New upgrade-3.10-3.xsl XSLT stylesheet
- libcrmcommon: tweak parse_date() validations
- pacemakerd: fix Corosync support check
- libcrmcommon: handle out-of-range better when parsing integers
- CIB: globally-unique defaults to true if clone-node-max > 1
- fencing: default pcmk_host_argument to "none" if "port" not advertised
- CIB: deprecate concurrent-fencing cluster property
- configure: deprecate --with-concurrent-fencing-default and default it to true
- scheduler: best practices for get_rsc_attributes()
- schemas: Disallow multiple top-level location rules
- scheduler: ignore instance attributes in rsc_defaults
- CTS: Fix cts-lab --list.
- xml: Drop duplicate nvpairs within a given nvset
- cts, xml: New upgrade-3.10-2.xsl XSLT stylesheet
- libpe_rules: Drop support for name with id-ref attribute
- tools: improve crm_verify error messages
- alerts: don't send deprecated alert environment variables
- fencer: rename -c/--stand-alone-w-cpg option
- fencer: drop support for non-clustered mode in fencer
- libcrmcommon: add pcmk_cib_node_shutdown()
- libcrmcommon: bounds-check seconds in pcmk_parse_interval_spec()
- libcrmcommon: return int from get_ordinal_days()
- libcrmcommon: use uint32_t in parse_date()
- libcib: improve error handling in cib_file_new()
- tools: update terminology in no-quorum-policy status output
- CIB: allow no-quorum-policy "fence" and deprecate "suicide"
- fencer: update terminology in trace message
- scheduler: create local node after unpacking everything
- libcrmcommon: log panic reason instead of caller name
- libcrmcommon: don't treat tracing differently for panics
- sysconfig: improve PCMK_panic_action description
- libcrmcommon: preserve api dispatch in connect_and_send_attrd_request()
- libcrmcommon: Detect newly created alerts section
- schemas: Disallow nvpairs without value attributes
- xml: Sort nvset elements by score within a given parent
- xml: Bump validate-with cib attribute in 3.10 XSL transformation
- cts, xml: New upgrade-3.10-1.xsl XSLT stylesheet
- schemas: Disallow nvpair name with id-ref attribute
- lrmd: Perform the TLS handshake asynchronously.
- lrmd: Report connection failures in tls_handshake_failed.
- tools: handle orphans when outputting node history in crm_mon
- libpe_status: Drop support for nodes with invalid type
- CIB: always compare validate-with schema names case-sensitively
- CIB: drop support for rsc-instance, with-rsc-instance, first-instance, and then-instance
- CIB: drop support for validate-with="pacemaker-next"
- CIB: drop support for pacemaker-0.6, pacemaker-0.7, pacemaker-1.1, and transitional-0.6 schemas
- libpe_status: Drop support for multiple top-level nvset rules
- libpe_status: Don't look for value in nvpair with id-ref
- libpe_status: Ignore nvpair with invalid id-ref
- xml: Allow previously disallowed primitive meta-attributes
- xml: Allow previously disallowed "required" op meta-attribute
- xml: Allow previously disallowed cluster properties
- xml: New upgrade-3.10-0.xsl XSLT stylesheet
- Pacemaker Remote: drop "short fuse" shutdown timer
- scheduler: ignore ticket constraints with invalid roles
- scheduler: ignore colocation constraints with invalid roles
- scheduler: ignore invalid location constraints
- libcrmcommon: compare empty strings correctly in attribute expressions
- sysconfig: interpret PCMK_panic_action more strictly
- rpm: Require python3-psutil for running tests.
- tools: fix crm_rule man page section division
- schemas: Add additional node types to the crmadmin schema.
- controller: drop controld_globals.our_nodename
- tools: return more specific error code for crm_shadow file errors
- scheduler: ignore groups with no members
- scheduler: ignore malformed resource history entries
- tools: drop --text-fancy command-line option
- scheduler: correct format arguments
- CIB: treat misconfigured rule as not passing
- CIB: treat misconfigured operation expression as not passing
- CIB: treat misconfigured resource expression as not passing
- CIB: treat misconfigured attribute expression as not passing
- CIB: treat misconfigured date expression as not passing
- CIB: treat misconfigured duration as not passing
- CIB: treat misconfigured date specification as not passing
- pacemaker-based: client name can be NULL
- various: ensure there are spaces around QB_XS
- controller,libpacemaker: transition graph IDs should be positive
- libcrmcluster: use correct specifier for guint count
- controller: free cluster object at exit
- libcrmcluster: assert on election_init() errors
- tools: crm_ticket should return CRM_EX_UNSAFE with --force warning.
- lrmd: Remove support for undocumented key loading behavior.
- libcrmcluster: don't hardcode controller in vote messages
- libcrmcluster: set appropriate message type in election messages
- libcrmcommon: use proper message type for node purge requests
- libcrmcommon: specify "scheduler" as scheduler IPC message protocol
- libcrmcommon: specify "pacemakerd" as pacemakerd IPC message protocol
- controller: use pcmk__new_message() to create direct acks
- controller: use pcmk__new_reply() to create reprobe reply
- libpacemaker: Don't apply colocation twice for promotion priority
- libpacemaker: Apply promotion priority to cloned group instance
- libpe_status: Use first action meta-attr within nvset if duplicates
- libcib: Don't overwrite property values for CIB config hash
- various: Don't set cluster-layer node ID as XML ID
- tools: crm_node -i must initialize nodeid before passing pointer
- libpacemaker: Log correct score in pcmk__apply_coloc_to_priority()
- scheduler: store default fencing action timeout as guint
- crm_verify: Improve checking of fencing level IDs
- tools: Drop crm_mon --web-cgi option
- tools: Drop crm_mon --disable-ncurses option
- tools: Drop crm_mon --simple-status option
- tools: Drop crm_mon --as-html option
- sysconfig: drop support for PCMK_dh_min_bits environment variable
- dependencies: require GnuTLS 3.1.7 or later
- tools: CIB clients retry signon upon an EAGAIN error (gh#ClusterLabs/pacemaker#3546)
- libcib: new function cib__signon_attempts() (gh#ClusterLabs/pacemaker#3546)
- libcrmcluster: Ensure priv is non-NULL in crm_cluster_connect() (gh#ClusterLabs/pacemaker#3548)
- libcrmcluster: use local hostname for node name if not configured in corosync (gh#ClusterLabs/pacemaker#3547)
- tools: Don't double-free XML in crm_verify after schema update
- libcrmcommon: Use glib for calculating MD5 checksums.
- cts-cli: update expected output for crm_verify to distinguish configuration warnings and errors (gh#ClusterLabs/pacemaker#3538)
- tools: crm_verify distinguishes configuration warnings and errors (gh#ClusterLabs/pacemaker#3538)
- libcrmcommon: don't try to add to full string in pcmk__time_format_hr()
- libcrmcommon: handle formatting errors in pcmk__time_format_hr()
- libraries: ensure private headers follow usual header conventions
- libraries: ensure includes are outside extern in public headers
- scheduler: consider group locations when member is explicit colocation dependent
- scheduler: consolidate pcmk__apply_location() trace messages
- libcib: don't bother with pcmk__config_err() for live CIB
- scheduler: drop incorrect error logs in pcmk__colocation_affects()
- liblrmd,libstonithd: use standard default timeout (20s) for meta-data actions
- tools: Don't skip formatting if running crm_simulate interactively.
- tools: crm_resource rejects invalid timeouts
- tools: crm_resource --option throws usage error if appropriate
- tools: crm_resource --delete does not accept clone instances
- tools: crm_resource --delete exits with CRM_EX_USAGE without -t opt
- tools: crm_resource --delete now succeeds if resource doesn't exist
- libpacemaker: Include on_node in injected lrm_rsc_op entries
- daemons: Clean up memory when attrd exits. (gh#ClusterLabs/pacemaker#3507)
- libcrmcommon: reject ISO 8601 duration without any values
- libcrmcommon: bounds-check ISO 8601 duration elements
- scheduler: improve promotion score message for inactive instances
- scheduler: use -INFINITY promotion score for inactive instances
- scheduler: avoid core-dump on trace message
- pacemakerd: Drop {PCMK,HA}_shutdown_delay environment variable
- libcrmcommon: Drop {PCMK,HA}_cib_timeout environment variable
- libcrmcommon: Drop PCMK_mcp and HA_mcp environment variables
- fencer, libstonithd: Drop support for "action" fencing param
- tools: cibadmin --md5-sum-versioned no longer prints feature set
- libcrmcluster: Default remote_state_from_cib() to false
- libstonithd: prevent to free 'op_reply' repeatedly in 'stonith_send_command'
- tools: Deprecate cibadmin --local
- tools: Drop cibadmin --host option
- tools: Drop cibadmin --no-bcast option
- doc: Drop support for v1 cluster nodes with v3 remote nodes
- libpacemaker: correctly retrieve any existing fail-count for increment (gh#ClusterLabs/pacemaker#3510)
- build: Drop pacemaker_remoted link creation
- python: Support systems where rsyslog is not installed.
- libpacemaker: Add spaces back to attrd_updater query output.
- agents: drop ocf:pacemaker:o2cb resource agent
- rpm: rename --with-stonithd option to --with-linuxha
- configure: drop --legacy-links option
- configure: drop --enable-compat-2.0 option
- dependencies: require pkg-config 0.28 or later
- dependencies: require libxml2 2.9.2 or later
- dependencies: require libqb 1.0.1 or later
- dependencies: require libdbus 1.5.12 or later
- libcrmcommon,libpe_status: correct typos
- libcib,liblrmd: improve TLS handshake error messages
- attrd: Ensure set ID is non-empty
- libcrmcommon: Check scan_ll() return value in crm_get_msec()
- libstonithd: free escaped metadata descriptions with g_free() (gh#ClusterLabs/pacemaker#3492)
- liblrmd: make TLS handshake error handling consistent
- libcrmcommon: interpret pcmk__remote_ready() return code correctly
- pacemakerd: improve subdaemon check messages
- pacemaker-based: improve local notification messages
- scheduler: parenthesize arguments in action macros
- libcrmcommon: support PCMK_panic_action="off" or "sync-off"
- tools: cibadmin incorrect example for score update
- libstonithd: avoid use-after-free when retrieving metadata of Linux-HA fence agents (gh#ClusterLabs/pacemaker#3476)
- NLS: drop removed file from POTFILES
- libcrmcommon: avoid possible buffer overflow in pcmk__time_format_hr()
- libcrmcommon: avoid possible buffer overflow in parse_date()
- tools: Fix spacing in crm_resource help output
- includes: Bump CRM_FEATURE_SET for iso8601 formatted output.
- schemas: Add an XML schema for iso8601 output.
- tools: Convert iso8601 to formatted output.
- Rebase:
* bug-806256_pacemaker-log-level-notice.patch
- Drop obsolete:
* pacemaker-nagios-plugin-dir.patch
-------------------------------------------------------------------
Thu Nov 07 15:40:34 UTC 2024 - Yan Gao <ygao@suse.com>
- Update to version 2.1.9+20241107.c3b66b02d0:
- CTS: Fix cts-lab --list. (gh#ClusterLabs/pacemaker#3723)
-------------------------------------------------------------------
Thu Nov 07 11:10:26 UTC 2024 - Yan Gao <ygao@suse.com>
- Update to version 2.1.9+20241105.e043e6816a:
- executor: avoid use-after-free upon shutdown (bsc#1232613, gh#ClusterLabs/pacemaker#3719)
-------------------------------------------------------------------
Mon Nov 04 11:52:55 UTC 2024 - Yan Gao <ygao@suse.com>
- Update to version 2.1.9+20241031.49aab99839 (Pacemaker-2.1.9):
- includes: Bump CRM_FEATURE_SET for iso8601 formatted output.
- schemas: Add an XML schema for iso8601 output.
- tools: Convert iso8601 to formatted output.
-------------------------------------------------------------------
Mon Nov 04 11:03:41 UTC 2024 - Yan Gao <ygao@suse.com>
- Update to version 2.1.8+20241021.40d69ff424 (Pacemaker-2.1.9-rc3):
- tools: restore crmadmin default timeout to 30 seconds (bsc#1217259, bsc#1228781, jsc#PED-8311, gh#ClusterLabs/pacemaker#3703)
- libcrmcommon: any negative interval is an error
- agents: always allow attribute agent to show metadata
- agents: use RESOURCENAME in attribute agent metadata
- agents: use configured run directory in attribute agent
- controld: leave xml-src attribute empty when no DC selected #2902 (bsc#1217259, bsc#1228781, jsc#PED-8311, gh#ClusterLabs/pacemaker#3702)
-------------------------------------------------------------------
Fri Oct 25 17:04:35 UTC 2024 - Yan Gao <ygao@suse.com>
- Update to version 2.1.8+20241015.33f3052b89 (Pacemaker-2.1.9-rc2):
- pacemakerd: combine subdaemon start-up logs
- libcrmcommon: avoid potential overflow when adding seconds
- libcib: Perform server-side remote CIB reads asynchronously.
- libcib: Perform client-side remote CIB reads asynchronously.
- tools: crm_resource returns error on failed schema upgrade
- libcrmcommon: Don't assert on failure to write errors. (gh#ClusterLabs/pacemaker#3684)
-------------------------------------------------------------------
Fri Oct 25 11:02:37 UTC 2024 - Yan Gao <ygao@suse.com>
- Update to version 2.1.8+20241003.95cef6b307 (Pacemaker-2.1.9-rc1):
- NLS: update translations for current code base
- scheduler: Fixed memory leak when searching for unfencing devices. (gh#ClusterLabs/pacemaker#3678)
- libcrmcommon: bounds-check when adding to years
- controller: avoid overflow in recheck time
- libcrmservice: accept no more than around 10MiB stdout/stderr
- pacemaker-based,libcib: warn for invalid call options
- controller,liblrmd: warn for invalid remote proxy IPC flags
- fencer: warn for invalid call options
- fencer: warn if device support flags invalid
- libcrmservice: use proper types with write()
- libcrmcommon,libcib,scheduler: use unsigned int for CIB sequence number
- scheduler: avoid overflow in utilization values
- libcrmcommon: handle corner cases better in crm_time_add_days()
- libcrmcommon: handle too-negative components of ISO8601 durations
- controller: avoid memory leak on scheduler API error
- libcib: treat empty variant variables same as unset (gh#ClusterLabs/pacemaker#3658)
- pacemaker-based: compare remote user names case-sensitively
- pacemaker-based: improve remote client connection messages
- scheduler: ignore and warn for invalid node health attributes
- scheduler: warn for invalid promotion scores
- scheduler: warn if node score is invalid
- scheduler: warn if nvpair block score is invalid
- scheduler: warn for invalid fail counts
- scheduler: warn if resource stickiness is invalid
- scheduler: warn if resource priority is invalid
- scheduler: warn for invalid health cluster option values
- controller: improve stonith-max-attempts logs
- all: improve messages when parsing long integers
- pacemaker-based: log cluster-ipc-limit errors
- libcrmcommon: improve IPC buffer size messages
-------------------------------------------------------------------
Fri Oct 25 10:28:12 UTC 2024 - Yan Gao <ygao@suse.com>
- Update to version 2.1.8+20240916.5936f92119:
- lrmd: Report the result of add_tls_to_mainloop...
- libcrmcommon: NULL-check pcmk__xml_tree_foreach() argument
- libcrmcommon: tweak parse_date() validations
- libcrmcommon: bounds-check seconds in pcmk_parse_interval_spec()
- libcrmcommon: return int from get_ordinal_days()
- libcrmcommon: use uint32_t in parse_date()
- libcib: improve error handling in cib_file_new()
- CIB: allow no-quorum-policy "fence" and deprecate "suicide"
- tools: handle orphans when outputting node history in crm_mon
-------------------------------------------------------------------
Fri Oct 04 16:20:24 UTC 2024 - Yan Gao <ygao@suse.com>
- Update to version 2.1.8+20240829.2c01183c93:
- libcrmcommon: Detect newly created alerts section (gh#ClusterLabs/pacemaker#3628)
- lrmd: Perform the TLS handshake asynchronously.
- schemas: Add additional node types to the crmadmin schema.
- tools: fix crm_rule man page section division (gh#ClusterLabs/pacemaker#3612)
- pacemaker-based: client name can be NULL (gh#ClusterLabs/pacemaker#3608)
- various: ensure there are spaces around CRM_XS
- controller,libpacemaker: transition graph IDs should be positive
-------------------------------------------------------------------
Tue Oct 01 11:36:55 UTC 2024 - Yan Gao <ygao@suse.com>
- Update to version 2.1.8+20240808.3980678f03 (Pacemaker-2.1.8):
- scheduler: correct format arguments (gh#ClusterLabs/pacemaker#3600)
- libpacemaker: Don't apply colocation twice for promotion priority
- libpacemaker: Apply promotion priority to cloned group instance
-------------------------------------------------------------------
Fri Jul 12 11:13:38 UTC 2024 - Yan Gao <ygao@suse.com>
@@ -115,7 +777,7 @@ Mon Jun 03 14:15:26 UTC 2024 - Yan Gao <ygao@suse.com>
- libcib: Fix memory leak in cib_client_fetch_schemas()
- libpacemaker: Fix mem leak in pcmk__acl_evaled_render()
- libcrmcommon: avoid memory leaks when loading and freeing schemas
- libcib: avoid memory leak in async calls
- libcib: avoid memory leak in async calls (bsc#1233544)
- scheduler,tools: compare resource history IDs case-sensitively
- executor: avoid pacemaker-remoted crash
- libcrmcommon: Fix memory leak in pcmk__build_schema_xml_node()

View File

@@ -1,7 +1,7 @@
#
# spec file for package pacemaker
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -35,8 +35,12 @@
# Define conditionals so that "rpmbuild --with <feature>" and
# "rpmbuild --without <feature>" can enable and disable specific features
## Add option to enable support for stonith/external fencing agents
%bcond_without stonithd
## Add option for Linux-HA (stonith/external) fencing agent support
%if 0%{?suse_version} < 1600
%bcond_without linuxha
%else
%bcond_with linuxha
%endif
## Add option to enable support for storing sensitive information outside CIB
%bcond_without cibsecrets
@@ -66,13 +70,6 @@
## Add option to turn off hardening of libraries and daemon executables
%bcond_with hardening
## Add option to disable links for legacy daemon names
%if 0%{?suse_version} < 1600
%bcond_without legacy_links
%else
%bcond_with legacy_links
%endif
# Define globals for convenient use later
%if 0%{?suse_version} >= 1560 || 0%{?sle_version} >= 150600
@@ -81,15 +78,10 @@
%define gnutls_priorities %{?pcmk_gnutls_priorities}%{!?pcmk_gnutls_priorities:@SYSTEM}
%endif
%global hacluster_id 90
%global hacluster_id 189
## Distro-specific configuration choices
### Use 2.0-style output when other distro packages don't support current output
%if 0%{?suse_version} < 1600
%global compat20 --enable-compat-2.0
%endif
### Default concurrent-fencing to true when distro prefers that
%if 0%{?suse_version} >= 1540 || 0%{?sle_version} >= 150400
%global concurrent_fencing --with-concurrent-fencing-default=true
@@ -129,7 +121,7 @@
%define with_regression_tests 0
Name: pacemaker
Version: 2.1.7+20240711.239cba384
Version: 3.0.0+20250218.64cd85422c
Release: 0
Summary: Scalable High-Availability cluster resource manager
# AGPL-3.0 licensed extra/clustermon.sh is not present in the binary
@@ -141,14 +133,55 @@ Source1: crm_report.in
Source100: pacemaker.rpmlintrc
Patch1: bug-806256_pacemaker-log-level-notice.patch
Patch2: bug-728579_pacemaker-stonith-dev-id.patch
Patch3: pacemaker-nagios-plugin-dir.patch
Patch4: bug-812269_pacemaker-fencing-device-register-messages.patch
Patch5: pacemaker-Wno-format-signedness.patch
Patch6: bug-943295_pacemaker-lrmd-log-notice.patch
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
Patch3: bug-812269_pacemaker-fencing-device-register-messages.patch
Patch4: pacemaker-Wno-format-signedness.patch
Patch5: bug-943295_pacemaker-lrmd-log-notice.patch
Patch6: bug-977201_pacemaker-controld-self-fencing.patch
Patch7: bug-995365_pacemaker-cts-restart-systemd-journald.patch
Patch8: pacemaker-cts-StartCmd.patch
Patch9: bsc#1180966-0001-Log-pacemakerd-downgrade-the-warning-about-SBD_SYNC_.patch
Patch10: pacemaker#3746-0001-Mid-systemd-Fix-when-monitor-of-systemd-resource-con.patch
Patch11: pacemaker#3746-0002-Mid-systemd-If-the-state-is-Pending-at-the-time-of-p.patch
Patch12: pacemaker#3781-0001-Low-controller-round-timeout-when-checking-remaining.patch
Patch13: pacemaker#3791-0001-Mid-schedulerd-Resetting-error-and-warning-flags.patch
Patch14: pacemaker#3793-0001-Low-various-Correct-some-printf-specifiers.patch
Patch15: pacemaker#3793-0002-Low-libcrmcommon-Catch-correct-errors-for-remote-con.patch
Patch16: pacemaker#3794-0001-Low-controller-address-format-overflow-warnings.patch
Patch17: pacemaker#3796-0001-Refactor-pacemaker-attrd-always-add-remoteness-to-at.patch
Patch18: pacemaker#3796-0002-Refactor-pacemaker-attrd-don-t-use-uuid-to-mean-XML-.patch
Patch19: pacemaker#3796-0003-Low-pacemaker-attrd-use-API-to-get-peer-XML-ID.patch
Patch20: pacemaker#3796-0004-Low-pacemaker-attrd-bail-earlier-if-value-won-t-be-w.patch
Patch21: pacemaker#3796-0005-Refactor-libcrmcluster-allow-searching-by-XML-ID-in-.patch
Patch22: pacemaker#3796-0006-Refactor-libcrmcluster-rename-pcmk__cluster_node_uui.patch
Patch23: pacemaker#3796-0007-Low-libcrmcluster-use-pcmk__cluster_get_xml_id-when-.patch
Patch24: pacemaker#3796-0008-Refactor-libcrmcluster-track-local-node-XML-ID-in-cl.patch
Patch25: pacemaker#3796-0009-Refactor-pacemaker-attrd-track-node-CIB-ID-rather-th.patch
Patch26: pacemaker#3796-0010-Refactor-pacemaker-attrd-rename-flag-to-match-recent.patch
Patch27: pacemaker#3796-0011-Refactor-pacemaker-attrd-use-variable-for-whether-to.patch
Patch28: pacemaker#3796-0012-Low-pacemaker-attrd-track-node-XML-IDs-independent-o.patch
Patch29: pacemaker#3796-0013-Refactor-pacemaker-attrd-drop-unused-struct-member.patch
Patch30: pacemaker#3796-0014-Low-libcrmcluster-better-detect-remote-nodes-in-peer.patch
Patch31: pacemaker#3796-0015-Refactor-controller-drop-unused-argument.patch
Patch32: pacemaker#3796-0016-Refactor-controller-best-practices-for-send_stonith_.patch
Patch33: pacemaker#3716-0001-Fix-crmadmin-return-error-if-DC-is-not-elected-2902-.patch
Patch34: pacemaker#3814-0001-Low-libcrmcommon-Fix-memory-leak-in-text_end_list-cu.patch
Patch35: pacemaker#3815-0001-Low-python-Add-python-value-for-new-CRM_EX_NO_DC-exi.patch
Patch36: pacemaker#3816-0001-Low-libcrmservices-Don-t-leak-msg-if-systemd_proxy-i.patch
Patch37: pacemaker#3816-0002-Refactor-libcrmservices-Unref-the-dbus-connection.patch
Patch38: pacemaker#3821-0001-Fix-libcrmcluster-prevent-external-callers-from-trig.patch
Patch39: pacemaker#3835-0001-Low-tools-Fix-memory-leak-in-cli_resource_delete.patch
Patch40: bsc#1238519-0001-Fix-libpe_status-consider-parents-of-an-unmanaged-re.patch
Patch41: bsc#1238519-0002-Test-cts-scheduler-update-tests-for-considering-pare.patch
Patch42: pacemaker#3848-0001-Fix-libcrmcommon-provide-a-description-for-pcmk_rc_n.patch
Patch43: pacemaker#3854-0001-remote.in-Add-a-default-interval-value-for-monitor-a.patch
Patch44: bsc#1239629-0001-Fix-pacemaker-attrd-prevent-segfault-if-a-peer-leave.patch
Patch45: bsc#1239629-0002-Log-pacemaker-attrd-log-the-cluster-layer-id-of-the-.patch
Patch46: bsc#1239629-0003-Log-libcrmcluster-correctly-log-node-id.patch
Patch47: bsc#1239629-0004-Log-pacemaker-attrd-use-PRIu32-format-specifier-inst.patch
Patch48: bsc#1239629-0005-Fix-pacemaker-attrd-remember-names-of-peers-from-att.patch
Patch49: bsc#1239629-0006-Refactor-pacemaker-attrd-make-attrd_send_message-s-n.patch
Patch50: bsc#1239629-0007-Refactor-pacemaker-attrd-ability-to-send-a-protocol-.patch
Patch51: bsc#1239629-0008-Fix-pacemaker-attrd-make-a-peer-learn-our-node-name-.patch
# Required basic build tools
BuildRequires: autoconf
BuildRequires: automake
@@ -162,8 +195,9 @@ BuildRequires: help2man
BuildRequires: libtool
BuildRequires: make
BuildRequires: pam-devel
BuildRequires: pkgconfig
BuildRequires: pkgconfig >= 0.28
BuildRequires: python-rpm-macros
BuildRequires: python3-psutil
BuildRequires: python3-setuptools
# Required for agent_config.h which specifies the correct scratch directory
BuildRequires: resource-agents
@@ -172,13 +206,13 @@ BuildRequires: pkgconfig(bzip2)
# Required for "make check"
BuildRequires: pkgconfig(cmocka) >= 1.1.0
BuildRequires: pkgconfig(corosync) >= 2.0.0
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(dbus-1) >= 1.5.12
# Required for core functionality
BuildRequires: pkgconfig(glib-2.0) >= 2.42
BuildRequires: pkgconfig(gnutls)
BuildRequires: pkgconfig(gnutls) >= 3.4.6
# Pacemaker requires a minimum libqb functionality
BuildRequires: pkgconfig(libqb) >= 0.17.0
BuildRequires: pkgconfig(libxml-2.0) >= 2.6.0
BuildRequires: pkgconfig(libqb) >= 1.0.1
BuildRequires: pkgconfig(libxml-2.0) >= 2.9.2
BuildRequires: pkgconfig(libxslt)
BuildRequires: pkgconfig(ncurses)
# Pacemaker requires a minimum Python functionality
@@ -192,7 +226,9 @@ Requires: %{name}-cluster-libs = %{version}-%{release}
Requires: %{name}-libs = %{version}-%{release}
Requires: corosync >= 2.0.0
Requires: python3
%if %{with linuxha}
Requires: python3-%{name} = %{version}-%{release}
%endif
Requires: resource-agents
Recommends: crmsh
Recommends: fence-agents
@@ -211,7 +247,7 @@ BuildRequires: docbook-xsl-stylesheets
%else
BuildRequires: docbook-style-xsl
%endif
%if %{with stonithd}
%if %{with linuxha}
%if 0%{?suse_version}
BuildRequires: cluster-glue-devel
%else
@@ -220,7 +256,6 @@ BuildRequires: cluster-glue-libs-devel
%endif
%if %{with doc}
BuildRequires: asciidoc
BuildRequires: inkscape
BuildRequires: python3-sphinx
%endif
%if %{with_regression_tests}
@@ -274,6 +309,8 @@ Requires: %{name}-schemas = %{version}-%{release}
Conflicts: sbd < 1.5.1
Provides: libpacemaker3 = %version-%release
Obsoletes: libpacemaker3 < %version-%release
Provides: user(%{uname})
Provides: group(%{gname})
%description libs
Pacemaker is an advanced, scalable High-Availability cluster resource
@@ -328,12 +365,12 @@ Summary: Pacemaker development package
Group: Development/Libraries/C and C++
Requires: %{name}-libs = %{version}-%{release}
Requires: libtool-ltdl-devel
Requires: pkgconfig
Requires: pkgconfig >= 0.28
Requires: pkgconfig(bzip2)
Requires: pkgconfig(corosync) >= 2.0.0
Requires: pkgconfig(glib-2.0)
Requires: pkgconfig(libqb)
Requires: pkgconfig(libxml-2.0) >= 2.6.0
Requires: pkgconfig(libqb) >= 1.0.1
Requires: pkgconfig(libxml-2.0) >= 2.9.2
Requires: pkgconfig(libxslt)
Requires: pkgconfig(uuid)
%if %{enable_cluster_libs_pkg}
@@ -398,7 +435,7 @@ manager
%build
export systemdsystemunitdir=%{?_unitdir}%{!?_unitdir:no}
export systemdsystemunitdir=%{_unitdir}
%if %{with hardening}
# prefer distro-provided hardening flags in case they are defined
@@ -428,7 +465,6 @@ autoreconf -fvi
%endif
PYTHON=%{python_path} \
%{!?with_hardening: --disable-hardening} \
%{?with_legacy_links: --enable-legacy-links} \
%{?with_profiling: --with-profiling} \
%{?with_cibsecrets: --with-cibsecrets} \
%{?with_nls: --enable-nls} \
@@ -438,7 +474,6 @@ autoreconf -fvi
%{?ocf_root: --with-ocfdir=%{ocf_root}} \
%{?concurrent_fencing} \
%{?resource_stickiness} \
%{?compat20} \
--disable-static \
--with-initdir=%{_initddir} \
--with-runstatedir=%{_rundir} \
@@ -549,7 +584,7 @@ fi
%pre libs
getent group %{gname} >/dev/null || groupadd -r %{gname} -g %{hacluster_id}
getent passwd %{uname} >/dev/null || useradd -r -g %{gname} -u %{hacluster_id} -s /sbin/nologin -c "cluster user" %{uname}
getent passwd %{uname} >/dev/null || useradd -r -g %{gname} -u %{hacluster_id} -d %{_var}/lib/pacemaker -s /sbin/nologin -c "cluster user" %{uname}
exit 0
%if %{defined ldconfig_scriptlets}
@@ -567,8 +602,8 @@ exit 0
%if %{with_regression_tests}
%post devel
if [ ! -e /tmp/.pcmk_regression_tests_ran ]; then
touch /tmp/.pcmk_regression_tests_ran
if [ ! -e %{_rundir}/.pcmk_regression_tests_ran ]; then
touch %{_rundir}/.pcmk_regression_tests_ran
# Needed so that the shell doesn't get stuck on escape
# sequences
export TERM=dumb
@@ -584,14 +619,12 @@ fi
%{_unitdir}/pacemaker.service
%{_sbindir}/rcpacemaker
%exclude %{_libexecdir}/pacemaker/cts-log-watcher
%exclude %{_libexecdir}/pacemaker/cts-support
%exclude %{_sbindir}/pacemaker-remoted
%exclude %{_sbindir}/pacemaker_remoted
%dir %{_libexecdir}/pacemaker
%{_libexecdir}/pacemaker/*
%if %{with stonithd}
%if %{with linuxha}
%{_sbindir}/fence_legacy
%endif
%{_sbindir}/fence_watchdog
@@ -601,9 +634,8 @@ fi
%{_mandir}/man7/pacemaker-schedulerd.7%{ext_man}
%{_mandir}/man7/pacemaker-fenced.7%{ext_man}
%{_mandir}/man7/ocf_pacemaker_controld.7%{ext_man}
%{_mandir}/man7/ocf_pacemaker_o2cb.7%{ext_man}
%{_mandir}/man7/ocf_pacemaker_remote.7%{ext_man}
%if %{with stonithd}
%if %{with linuxha}
%{_mandir}/man8/fence_legacy.8%{ext_man}
%endif
%{_mandir}/man8/fence_watchdog.8%{ext_man}
@@ -613,12 +645,11 @@ fi
#%license licenses/GPLv2
%license COPYING
%doc ChangeLog
%doc ChangeLog.md
%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/cib
%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/pengine
%{ocf_root}/resource.d/pacemaker/controld
%{ocf_root}/resource.d/pacemaker/o2cb
%{ocf_root}/resource.d/pacemaker/remote
%files cli
@@ -654,10 +685,11 @@ fi
%{_datadir}/pacemaker/report.collector
%{_datadir}/pacemaker/report.common
# XXX "dirname" is not owned by any prerequisite
%dir %{_datadir}/snmp
%dir %{_datadir}/snmp/mibs
%{_datadir}/snmp/mibs/PCMK-MIB.txt
%exclude %{ocf_root}/resource.d/pacemaker/controld
%exclude %{ocf_root}/resource.d/pacemaker/o2cb
%exclude %{ocf_root}/resource.d/pacemaker/remote
%dir %{ocf_root}
@@ -672,7 +704,6 @@ fi
%exclude %{_mandir}/man7/pacemaker-schedulerd.*
%exclude %{_mandir}/man7/pacemaker-fenced.*
%exclude %{_mandir}/man7/ocf_pacemaker_controld.*
%exclude %{_mandir}/man7/ocf_pacemaker_o2cb.*
%exclude %{_mandir}/man7/ocf_pacemaker_remote.*
%{_mandir}/man8/crm*.8%{ext_man}
%{_mandir}/man8/attrd_updater.*
@@ -685,7 +716,7 @@ fi
#%license licenses/GPLv2
%license COPYING
%doc ChangeLog
%doc ChangeLog.md
%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker
%dir %attr (750, %{uname}, %{gname}) %{_var}/lib/pacemaker/blackbox
@@ -704,7 +735,7 @@ fi
%{_libdir}/libstonithd.so.*
#%license licenses/LGPLv2.1
%license COPYING
%doc ChangeLog
%doc ChangeLog.md
%if !%{enable_cluster_libs_pkg}
%{_libdir}/libcrmcluster.so.*
%endif
@@ -714,7 +745,7 @@ fi
%{_libdir}/libcrmcluster.so.*
#%license licenses/LGPLv2.1
%license COPYING
%doc ChangeLog
%doc ChangeLog.md
%endif
%files -n python3-%{name}
@@ -723,18 +754,17 @@ fi
%exclude %{python3_sitelib}/pacemaker/_cts/
#%license licenses/LGPLv2.1
%license COPYING
%doc ChangeLog
%doc ChangeLog.md
%files remote
%{_unitdir}/pacemaker_remote.service
%{_sbindir}/rcpacemaker_remote
%{_sbindir}/pacemaker-remoted
%{_sbindir}/pacemaker_remoted
%{_mandir}/man8/pacemaker-remoted.8%{ext_man}
#%license licenses/GPLv2
%license COPYING
%doc ChangeLog
%doc ChangeLog.md
%if %{with doc}
%files doc
@@ -746,12 +776,11 @@ fi
%{python3_sitelib}/pacemaker/_cts/
%{_datadir}/pacemaker/tests
%{_libexecdir}/pacemaker/cts-log-watcher
%{_libexecdir}/pacemaker/cts-support
#%license licenses/GPLv2
%license COPYING
%doc ChangeLog
%doc ChangeLog.md
%files devel
%{_includedir}/pacemaker
@@ -767,7 +796,7 @@ fi
%{_libdir}/pkgconfig/*pacemaker*.pc
#%license licenses/LGPLv2.1
%license COPYING
%doc ChangeLog
%doc ChangeLog.md
%files schemas
#%license licenses/GPLv2