Page MenuHomeClusterLabs Projects
Feed Advanced Search

Mon, Mar 31

clumens closed T981: crm_diff regression test was removed during conversion to Python as Merged by committing rPd12f5579859f: Low: cts: Add missing crm_diff regression test back to cts-cli..
Mon, Mar 31, 2:11 PM · Pacemaker: Tools, Restricted Project, Restricted Project
clumens changed the status of T981: crm_diff regression test was removed during conversion to Python from Open to WIP.
Mon, Mar 31, 12:15 PM · Pacemaker: Tools, Restricted Project, Restricted Project

Wed, Mar 26

nrwahl2 triaged T981: crm_diff regression test was removed during conversion to Python as Normal priority.
Wed, Mar 26, 8:13 PM · Pacemaker: Tools, Restricted Project, Restricted Project

Mar 19 2025

nrwahl2 closed T735: crmadmin -D hangs forever if there is no DC as Merged.

Seems to be closed by b93f0245 and a1d94f7a, both from Aleksei Burlakov.

Mar 19 2025, 9:52 PM · Restricted Project, Pacemaker: Tools, Restricted Project

Mar 5 2025

nrwahl2 added a comment to T973: Get rid of "non-option ARGV-elements" blocks from tools.

crm_resource already uses G_OPTION_REMAINING to collect the remaining arguments into an array. Then after parsing all options, it logs those remaining arguments if they're invalid. However, they're valid if we're running a subcommand that uses options.override_params.

Mar 5 2025, 11:23 AM · Restricted Project, Pacemaker: Tools

Feb 18 2025

clumens triaged T973: Get rid of "non-option ARGV-elements" blocks from tools as Wishlist priority.
Feb 18 2025, 3:41 PM · Restricted Project, Pacemaker: Tools

Jan 23 2025

administrator changed the visibility for Pacemaker: Tools.
Jan 23 2025, 5:03 PM

Jan 15 2025

kgaillot added a parent task for T727: Handle output objects in pcmk_update_configured_schema(): Restricted Maniphest Task.
Jan 15 2025, 3:57 PM · Restricted Project, Restricted Project, Pacemaker: Tools

Jan 2 2025

kgaillot lowered the priority of T734: attrd_updater doesn't write bundle node attributes to CIB from High to Normal.
Jan 2 2025, 5:36 PM · Pacemaker: Tools, Restricted Project
kgaillot added a comment to T734: attrd_updater doesn't write bundle node attributes to CIB.

This is the currently expected behavior before pacemaker-attrd has learned a node is remote. Once it does learn it, it will update the attribute cache entry and write it out.

Jan 2 2025, 5:35 PM · Pacemaker: Tools, Restricted Project
kgaillot added a subtask for T729: Clean up XML schema validation code, and use output object where possible: T727: Handle output objects in pcmk_update_configured_schema().
Jan 2 2025, 4:36 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project, Pacemaker: Tools, Restricted Project
kgaillot added a parent task for T727: Handle output objects in pcmk_update_configured_schema(): T729: Clean up XML schema validation code, and use output object where possible.
Jan 2 2025, 4:36 PM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot lowered the priority of T802: cibadmin --show-access on live cluster gives incorrect results for ACL-restricted user from Normal to Low.
Jan 2 2025, 4:24 PM · Restricted Project, Pacemaker: ACLs, Pacemaker: Tools
kgaillot lowered the priority of T915: crm_resource --delete-parameter returns ENXIO if parameter does not exist from Normal to Low.
Jan 2 2025, 4:04 PM · Pacemaker: Tools, Restricted Project
kgaillot added a parent task for T915: crm_resource --delete-parameter returns ENXIO if parameter does not exist: Restricted Maniphest Task.
Jan 2 2025, 4:04 PM · Pacemaker: Tools, Restricted Project

Dec 17 2024

nrwahl2 closed T817: Deprecate --sync-call cibadmin option as Merged by committing rPf6a8298f5e03: Feature: tools: Deprecate cibadmin --sync-call.
Dec 17 2024, 11:24 AM · Pacemaker (3.0.1), Restricted Project, Pacemaker: Tools
kgaillot added a project to T817: Deprecate --sync-call cibadmin option: Pacemaker (3.0.1).
Dec 17 2024, 11:24 AM · Pacemaker (3.0.1), Restricted Project, Pacemaker: Tools
nrwahl2 changed the status of T817: Deprecate --sync-call cibadmin option from Open to WIP.
Dec 17 2024, 4:21 AM · Pacemaker (3.0.1), Restricted Project, Pacemaker: Tools

Dec 4 2024

kgaillot updated the task description for T727: Handle output objects in pcmk_update_configured_schema().
Dec 4 2024, 12:52 PM · Restricted Project, Restricted Project, Pacemaker: Tools

Nov 12 2024

nrwahl2 triaged T915: crm_resource --delete-parameter returns ENXIO if parameter does not exist as Normal priority.
Nov 12 2024, 11:07 AM · Pacemaker: Tools, Restricted Project

Oct 31 2024

kgaillot changed the status of Restricted Maniphest Task, a subtask of T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables, from Merged to Released.
Oct 31 2024, 5:15 PM · Restricted Project, Restricted Project, Pacemaker: Tools

Oct 23 2024

nrwahl2 triaged T902: crm_resource --force-check fails for clones due to bad OCF_RESOURCE_INSTANCE as Normal priority.
Oct 23 2024, 4:11 AM · Restricted Project, Pacemaker: Tools

Sep 10 2024

kgaillot added a subtask for T727: Handle output objects in pcmk_update_configured_schema(): T873: Create tests for schema validation messages.
Sep 10 2024, 4:48 PM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot added a parent task for T873: Create tests for schema validation messages: T727: Handle output objects in pcmk_update_configured_schema().
Sep 10 2024, 4:48 PM · Restricted Project, Restricted Project, Pacemaker: Tools, Restricted Project
kgaillot changed the status of T873: Create tests for schema validation messages from Open to WIP.
Sep 10 2024, 4:48 PM · Restricted Project, Restricted Project, Pacemaker: Tools, Restricted Project
kgaillot lowered the priority of T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables from High to Normal.
Sep 10 2024, 11:40 AM · Restricted Project, Restricted Project, Pacemaker: Tools

Aug 21 2024

kgaillot moved T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables from Restricted Project Column to Restricted Project Column on the Restricted Project board.
Aug 21 2024, 4:37 PM · Restricted Project, Restricted Project, Pacemaker: Tools

Aug 20 2024

kgaillot updated subscribers of T727: Handle output objects in pcmk_update_configured_schema().

Since this has turned out to be complicated, let's break it down into smaller pieces.

Aug 20 2024, 10:15 AM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot merged Restricted Maniphest Task into T836: Create command-line method of listing all possible cluster options, primitive resource meta-attributes, and special fencing resource parameters.
Aug 20 2024, 10:15 AM · Restricted Project, Restricted Project, Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools

Aug 8 2024

kgaillot changed the status of Restricted Maniphest Task, a subtask of T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables, from Merged to Released.
Aug 8 2024, 7:13 PM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot changed the status of T847: crm_node -i passes pointer to uninitialized variable to pcmk__query_node_info() from Merged to Released.
Aug 8 2024, 7:13 PM · Restricted Project, Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project
kgaillot changed the status of T746: Avoid duplicating option metadata across daemons, a subtask of T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables, from Merged to Released.
Aug 8 2024, 7:13 PM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot changed the status of T765: crm_attribute logs assertion if value but no attribute name is given from Merged to Released.
Aug 8 2024, 7:13 PM · Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project
kgaillot changed the status of T836: Create command-line method of listing all possible cluster options, primitive resource meta-attributes, and special fencing resource parameters, a subtask of T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables, from Merged to Released.
Aug 8 2024, 7:13 PM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot changed the status of T836: Create command-line method of listing all possible cluster options, primitive resource meta-attributes, and special fencing resource parameters from Merged to Released.
Aug 8 2024, 7:13 PM · Restricted Project, Restricted Project, Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools
kgaillot changed the status of T751: crm_mon in interactive mode segfaults during cluster shutdown from Merged to Released.
Aug 8 2024, 7:13 PM · Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools, Restricted Project

Jul 22 2024

kgaillot updated the task description for T847: crm_node -i passes pointer to uninitialized variable to pcmk__query_node_info().
Jul 22 2024, 11:03 AM · Restricted Project, Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project

Jul 11 2024

nrwahl2 closed T847: crm_node -i passes pointer to uninitialized variable to pcmk__query_node_info() as Merged by committing rP22e093a5bff6: Fix: tools: crm_node -i must initialize nodeid before passing pointer.
Jul 11 2024, 10:15 PM · Restricted Project, Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project
kgaillot moved T847: crm_node -i passes pointer to uninitialized variable to pcmk__query_node_info() from Restricted Project Column to Restricted Project Column on the Restricted Project board.
Jul 11 2024, 5:27 PM · Restricted Project, Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project
kgaillot added a project to T847: crm_node -i passes pointer to uninitialized variable to pcmk__query_node_info(): Restricted Project.
Jul 11 2024, 5:26 PM · Restricted Project, Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project
kgaillot updated the task description for T847: crm_node -i passes pointer to uninitialized variable to pcmk__query_node_info().
Jul 11 2024, 5:09 PM · Restricted Project, Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project
kgaillot changed the status of T847: crm_node -i passes pointer to uninitialized variable to pcmk__query_node_info() from Open to WIP.
Jul 11 2024, 4:49 PM · Restricted Project, Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project
nrwahl2 renamed T847: crm_node -i passes pointer to uninitialized variable to pcmk__query_node_info() from crm_node -i passes uninitialized pointer to pcmk__query_node_info() to crm_node -i passes pointer to uninitialized variable to pcmk__query_node_info().
Jul 11 2024, 5:41 AM · Restricted Project, Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project
nrwahl2 renamed T847: crm_node -i passes pointer to uninitialized variable to pcmk__query_node_info() from crm_node -i passes invalid pointer to pcmk__query_node_info() to crm_node -i passes uninitialized pointer to pcmk__query_node_info().
Jul 11 2024, 5:41 AM · Restricted Project, Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project
nrwahl2 added a comment to T847: crm_node -i passes pointer to uninitialized variable to pcmk__query_node_info().

Originated here: https://github.com/ClusterLabs/pacemaker/commit/a27f099

Jul 11 2024, 5:40 AM · Restricted Project, Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project
nrwahl2 triaged T847: crm_node -i passes pointer to uninitialized variable to pcmk__query_node_info() as Normal priority.
Jul 11 2024, 5:14 AM · Restricted Project, Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project

Jul 2 2024

kgaillot edited projects for T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables, added: Pacemaker (3.0.0), Restricted Project; removed Restricted Project, Pacemaker (2.1.8).
Jul 2 2024, 11:02 AM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot added a subtask for T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables: T836: Create command-line method of listing all possible cluster options, primitive resource meta-attributes, and special fencing resource parameters.
Jul 2 2024, 11:02 AM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot moved T836: Create command-line method of listing all possible cluster options, primitive resource meta-attributes, and special fencing resource parameters from Restricted Project Column to Restricted Project Column on the Restricted Project board.
Jul 2 2024, 11:02 AM · Restricted Project, Restricted Project, Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools
kgaillot updated the task description for T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.
Jul 2 2024, 11:02 AM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot added a parent task for T836: Create command-line method of listing all possible cluster options, primitive resource meta-attributes, and special fencing resource parameters: T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.
Jul 2 2024, 11:02 AM · Restricted Project, Restricted Project, Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools
kgaillot closed T836: Create command-line method of listing all possible cluster options, primitive resource meta-attributes, and special fencing resource parameters as Merged.
Jul 2 2024, 11:02 AM · Restricted Project, Restricted Project, Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools

Jun 12 2024

kgaillot updated the task description for T727: Handle output objects in pcmk_update_configured_schema().
Jun 12 2024, 10:50 AM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot renamed T727: Handle output objects in pcmk_update_configured_schema() from Handle output objects in cli_config_update() to Handle output objects in pcmk_update_configured_schema().
Jun 12 2024, 10:31 AM · Restricted Project, Restricted Project, Pacemaker: Tools

May 21 2024

kgaillot moved T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables from Restricted Project Column to Restricted Project Column on the Restricted Project board.
May 21 2024, 10:34 AM · Restricted Project, Restricted Project, Pacemaker: Tools

Apr 29 2024

kgaillot added a comment to T817: Deprecate --sync-call cibadmin option.
In T817#12112, @nrwahl2 wrote:

From the GitHub discussion:

I believe it was originally for testing the code paths. Not needed anymore

Optionally, we could have a (possibly hidden) --async-call option for developer use, that starts a mainloop and runs a callback function that processes the reply.

Apr 29 2024, 4:07 PM · Pacemaker (3.0.1), Restricted Project, Pacemaker: Tools
kgaillot added a parent task for T817: Deprecate --sync-call cibadmin option: Restricted Maniphest Task.
Apr 29 2024, 4:06 PM · Pacemaker (3.0.1), Restricted Project, Pacemaker: Tools
nrwahl2 added a comment to T817: Deprecate --sync-call cibadmin option.

From the GitHub discussion:

Apr 29 2024, 3:58 PM · Pacemaker (3.0.1), Restricted Project, Pacemaker: Tools
nrwahl2 updated the task description for T817: Deprecate --sync-call cibadmin option.
Apr 29 2024, 3:54 PM · Pacemaker (3.0.1), Restricted Project, Pacemaker: Tools
nrwahl2 triaged T817: Deprecate --sync-call cibadmin option as Low priority.
Apr 29 2024, 3:53 PM · Pacemaker (3.0.1), Restricted Project, Pacemaker: Tools

Apr 10 2024

kgaillot raised the priority of T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables from Normal to High.
Apr 10 2024, 11:48 AM · Restricted Project, Restricted Project, Pacemaker: Tools

Apr 2 2024

nrwahl2 updated the task description for T802: cibadmin --show-access on live cluster gives incorrect results for ACL-restricted user.
Apr 2 2024, 12:58 AM · Restricted Project, Pacemaker: ACLs, Pacemaker: Tools

Apr 1 2024

nrwahl2 added a comment to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.
In T620#11565, @nrwahl2 wrote:

Meta-attribute inheritance is weird. I've just started looking at groups. Very much non-exhaustive:

  • is-managed: Any false wins. If is-managed=false for the group and is-managed=true for a primitive, the primitive is unmanaged.
  • maintenance: Any true wins. Similar to is-managed but reversed.

These are true in general for all resource parent-child relationships

Apr 1 2024, 7:30 PM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot added a comment to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.

I'm thinking the simplest approach might be to consider the "inheritable" meta-attributes as separate to each layer. For example there is a group resource-stickiness meta-attribute and a different primitive resource-stickiness meta-attribute. That way each could have its own description of how it behaves. Primitive resource-stickiness keeps the current description from Pacemaker Explained, group resource-stickiness gets something like "Default value to use for members' resource-stickiness if not explicitly set for the member. The group's own stickiness is not this value, but the sum of its members' stickiness." The primitive default could even be described as "Value of resource-stickiness in group meta-attributes if set, otherwise value of resource-stickiness in clone meta-attributes if set, otherwise value of resource-stickiness in bundle meta-attributes if set, otherwise 0, plus 1 for promoted clone instances of the primitive" though that sounds horrible.

Apr 1 2024, 6:54 PM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot added a comment to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.
In T620#11565, @nrwahl2 wrote:

Meta-attribute inheritance is weird. I've just started looking at groups. Very much non-exhaustive:

  • is-managed: Any false wins. If is-managed=false for the group and is-managed=true for a primitive, the primitive is unmanaged.
  • maintenance: Any true wins. Similar to is-managed but reversed.
Apr 1 2024, 6:52 PM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot added a project to T802: cibadmin --show-access on live cluster gives incorrect results for ACL-restricted user: Restricted Project.
Apr 1 2024, 6:06 PM · Restricted Project, Pacemaker: ACLs, Pacemaker: Tools
nrwahl2 triaged T802: cibadmin --show-access on live cluster gives incorrect results for ACL-restricted user as Normal priority.
Apr 1 2024, 5:53 PM · Restricted Project, Pacemaker: ACLs, Pacemaker: Tools

Mar 27 2024

nrwahl2 added a comment to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.

Meta-attribute inheritance is weird. I've just started looking at groups. Very much non-exhaustive:

  • is-managed: Any false wins. If is-managed=false for the group and is-managed=true for a primitive, the primitive is unmanaged.
  • maintenance: Any true wins. Similar to is-managed but reversed.
  • resource-stickiness: Group's stickiness is used as the default for a primitive's stickiness. Primitive's stickiness overrides (does not add to) group's stickiness.
  • target-role: Same as resource-stickiness. The group's value is only a default. In particular, if the group has target-role=Stopped and the first member has target-role=Started, the first member is allowed to run.
Mar 27 2024, 5:58 AM · Restricted Project, Restricted Project, Pacemaker: Tools

Mar 4 2024

kgaillot added a project to T765: crm_attribute logs assertion if value but no attribute name is given: Pacemaker (2.1.8).
Mar 4 2024, 10:12 AM · Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project
clumens closed T765: crm_attribute logs assertion if value but no attribute name is given as Merged by committing rP88d94635bc1d: Low: tools: Fix argument validation for crm_attribute update..
Mar 4 2024, 10:11 AM · Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project

Feb 29 2024

clumens changed the status of T765: crm_attribute logs assertion if value but no attribute name is given from Open to WIP.
Feb 29 2024, 3:26 PM · Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project

Feb 1 2024

nrwahl2 triaged T771: Clean up crm_attribute and attrd when options.dest_uname is NULL, "auto", or "localhost" as Low priority.
Feb 1 2024, 3:57 AM · Pacemaker: Tools, Restricted Project

Jan 30 2024

kgaillot moved T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables from Restricted Project Column to Restricted Project Column on the Restricted Project board.
Jan 30 2024, 4:36 PM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot updated the task description for T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.
Jan 30 2024, 4:35 PM · Restricted Project, Restricted Project, Pacemaker: Tools
kgaillot added projects to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables: Restricted Project, Restricted Project.
Jan 30 2024, 4:35 PM · Restricted Project, Restricted Project, Pacemaker: Tools

Jan 29 2024

kgaillot added a comment to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.
In T620#11130, @nrwahl2 wrote:

I think it would make sense if we were designing from scratch, but crm_attribute actually is the intended place for this. It has always been used to manage cluster options as well as node attributes.

Okay, that makes sense for cluster options. I'm still not sure it makes sense to put local options there, or to put meta-attributes for alerts, resources, and ops there.

I'm not at that point yet, still finishing up cluster options, but the rest should move faster with the infrastructure in place and the approach settled on.

Jan 29 2024, 3:53 PM · Restricted Project, Restricted Project, Pacemaker: Tools
nrwahl2 added a comment to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.

I think it would make sense if we were designing from scratch, but crm_attribute actually is the intended place for this. It has always been used to manage cluster options as well as node attributes.

Jan 29 2024, 3:02 PM · Restricted Project, Restricted Project, Pacemaker: Tools
nrwahl2 renamed T765: crm_attribute logs assertion if value but no attribute name is given from crm_attribute logs assertion if value but no node name is given to crm_attribute logs assertion if value but no attribute name is given.
Jan 29 2024, 1:48 PM · Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project
nrwahl2 triaged T765: crm_attribute logs assertion if value but no attribute name is given as High priority.
Jan 29 2024, 1:47 PM · Pacemaker (2.1.8), Pacemaker: Tools, Restricted Project
kgaillot added a comment to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.
In T620#11067, @nrwahl2 wrote:

If it doesn't require anything outside libcrmcommon, I would put the bulk of it there. When we get to the UI (command-line options), the highest-level equivalents of that should be in libpacemaker.
...
The libcrmcommon functions would do all the processing, and the libpacemaker functions would focus on output

That's basically the conundrum. Output is the only thing we're dealing with (there's no meaningful processing otherwise), but the output functions need access to an array that lives in libcrmcommon. There are many ways to approach this that would work. The question is which one's the cleanest and most in line with our existing code.

Jan 29 2024, 11:30 AM · Restricted Project, Restricted Project, Pacemaker: Tools
nrwahl2 added a comment to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.

How do you feel about a new lightweight CLI tool called something like pcmk_option? I think I can get this into crm_attribute relatively easily. It's just that none of these are attributes.

Jan 29 2024, 5:28 AM · Restricted Project, Restricted Project, Pacemaker: Tools

Jan 26 2024

nrwahl2 added a comment to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.

If it doesn't require anything outside libcrmcommon, I would put the bulk of it there. When we get to the UI (command-line options), the highest-level equivalents of that should be in libpacemaker.
...
The libcrmcommon functions would do all the processing, and the libpacemaker functions would focus on output

Jan 26 2024, 7:28 PM · Restricted Project, Restricted Project, Pacemaker: Tools

Jan 24 2024

kgaillot added a comment to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.
In T620#10979, @nrwahl2 wrote:

Do we want the "list cluster options" command to go in libpacemaker, or libcrmcommon?

Jan 24 2024, 10:56 AM · Restricted Project, Restricted Project, Pacemaker: Tools
nrwahl2 added a comment to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.

Do we want the "list cluster options" command to go in libpacemaker, or libcrmcommon?

Jan 24 2024, 12:48 AM · Restricted Project, Restricted Project, Pacemaker: Tools

Jan 18 2024

nrwahl2 added a comment to T735: crmadmin -D hangs forever if there is no DC.

gao-yan posted the following in https://github.com/ClusterLabs/pacemaker/pull/2902#discussion_r1457468975, in response to this task. I'm inclined to agree with their comments.

Jan 18 2024, 5:21 PM · Restricted Project, Pacemaker: Tools, Restricted Project
nrwahl2 added a project to T751: crm_mon in interactive mode segfaults during cluster shutdown: Pacemaker (2.1.8).
Jan 18 2024, 5:13 PM · Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools, Restricted Project
nrwahl2 closed T751: crm_mon in interactive mode segfaults during cluster shutdown as Merged by committing rP401f5d971f12: Fix: tools: crm_mon segfaults when fencer connection is lost.
Jan 18 2024, 10:45 AM · Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools, Restricted Project
nrwahl2 added a comment to T751: crm_mon in interactive mode segfaults during cluster shutdown.

Fix: https://github.com/ClusterLabs/pacemaker/pull/3331

Jan 18 2024, 3:46 AM · Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools, Restricted Project
nrwahl2 added a comment to T751: crm_mon in interactive mode segfaults during cluster shutdown.

On Fedora 38/39, the issue starts with commit bc91cc5 (Pacemaker 2.1.0). Previously, mon_cib_connection_destroy() removed all stonith client notifications and disconnected the client, but it didn't delete the client object. As of that commit, it also deletes the client object.

Jan 18 2024, 12:30 AM · Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools, Restricted Project

Jan 17 2024

nrwahl2 added a comment to T751: crm_mon in interactive mode segfaults during cluster shutdown.

Not reproducible on RHEL 9.3 with the latest packages. Also not reproducible on Fedora 37.

Jan 17 2024, 11:16 PM · Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools, Restricted Project
kgaillot added a parent task for T729: Clean up XML schema validation code, and use output object where possible: Restricted Maniphest Task.
Jan 17 2024, 1:24 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project, Pacemaker: Tools, Restricted Project
kgaillot renamed T729: Clean up XML schema validation code, and use output object where possible from Use pcmk__validate_xml() instead of validate_xml() or validate_xml_verbose() to Clean up XML schema validation code, and use output object where possible.
Jan 17 2024, 1:23 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project, Pacemaker: Tools, Restricted Project
nrwahl2 added a comment to T751: crm_mon in interactive mode segfaults during cluster shutdown.

On second thought, although the ref count might be the easiest way to fix this, it would be totally reasonable to say "no function that's registered as a stonith notify callback should ever free the stonith_t object."

Jan 17 2024, 6:10 AM · Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools, Restricted Project
nrwahl2 added a comment to T751: crm_mon in interactive mode segfaults during cluster shutdown.

I need to verify this, but here's what I think is happening:

  1. Mainloop destroys stonith API connection, calling stonith_connection_destroy() on the stonith client.
  2. The stonith client sends out T_STONITH_NOTIFY_DISCONNECT notifications via foreach_notify_entry() -> stonith_send_notification().
  3. One notification triggers crm_mon.c:mon_st_callback_display() (or event()), which calls mon_cib_connection_destroy().
  4. mon_cib_connection_destroy() calls stonith_api_delete(), which calls stonith_api_free() and destroys the entire client object.
  5. Control returns to stonith_send_notification() and foreach_notify_entry().
  6. One of the further attempts to access members of the stonith client object causes a segfault, since the object and all the members that it owns have been freed.
Jan 17 2024, 5:43 AM · Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools, Restricted Project

Jan 16 2024

nrwahl2 added a comment to T751: crm_mon in interactive mode segfaults during cluster shutdown.

I've reproduced this on 2.1.0, 2.1.2, and 2.1.7, so it doesn't appear to be a regression. Additionally, it only happens at shutdown, so there's no tangible impact except that it won't reconnect when the cluster starts back... which is not great.

Jan 16 2024, 3:52 AM · Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools, Restricted Project

Jan 15 2024

nrwahl2 triaged T751: crm_mon in interactive mode segfaults during cluster shutdown as Unbreak Now! priority.
Jan 15 2024, 2:56 PM · Pacemaker (2.1.8), Restricted Project, Pacemaker: Tools, Restricted Project
kgaillot added a comment to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.
In T620#10902, @nrwahl2 wrote:

However, I'm not sure whether you wanted to include meta-attributes that can be set on a collective for the sole purpose of being inherited by a primitive (sort of the opposite scenario compared to the one above).

  • On the one hand: it's cleaner and clearer not to include them, and to include only those meta-attributes that have a direct effect on the collective. We can simply ensure it's documented (maybe it already is) that primitives inherit all of their parents' meta-attributes. That implies that any primitive meta-attribute can be set on a collective for the purpose of inheritance.
  • On the other hand: excluding them offloads more work to external tools. For example, if pcs is validating meta-attributes for a bundle, then it needs to check the list of bundle meta-attributes, the list of primitive meta-attributes, and maybe the list of clone meta-attributes. That's not a deal-breaker, but it requires that extra knowledge of Pacemaker behavior be built into external tools.
Jan 15 2024, 11:30 AM · Restricted Project, Restricted Project, Pacemaker: Tools

Jan 12 2024

nrwahl2 closed T746: Avoid duplicating option metadata across daemons, a subtask of T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables, as Merged.
Jan 12 2024, 3:19 AM · Restricted Project, Restricted Project, Pacemaker: Tools
nrwahl2 added a comment to T620: Create command-line method of listing all possible meta-attributes, cluster options, and environment variables.

For the purposes of showing lists, I would think we want to show the meta-attributes that can apply directly to the thing being requested (not just inherited).

Jan 12 2024, 2:50 AM · Restricted Project, Restricted Project, Pacemaker: Tools

Jan 11 2024

nrwahl2 triaged T750: Readable text output for agent metadata as Wishlist priority.
Jan 11 2024, 4:12 PM · Pacemaker: Tools, Restricted Project