clumens moved
T985: Pacemaker RHEL 9.7 / 10.1 from
Restricted Project Column to
Restricted Project Column on the
Restricted Project board.
Refactor: cts: Remove {fmt} from command strings in cts-cli.in.
Refactor: cts: Use {cts_cli_data} as an f-string everywhere.
Refactor: cts: Remove the class argument from make_test_group.
Refactor: cts: Replace {shadow} strings in cts-cli everywhere.
Refactor: cts: Remove apply_substitutions.
Refactor: cts: Be more explicit about converting ExitStatus.
Refactor: cts: Use f-strings throughout cts-cli.in.
clumens moved
T841: Reject too-large --timeout values in crm_resource from
Restricted Project Column to
Restricted Project Column on the
Restricted Project board.
clumens moved
T903: Split large IPC messages from
Restricted Project Column to
Restricted Project Column on the
Restricted Project board.
clumens moved
T983: crm_resource gets stuck deleting failed resource with a constraint from
Restricted Project Column to
Restricted Project Column on the
Restricted Project board.
clumens moved
T984: Potential use-after-free in pacemaker-controld from
Restricted Project Column to
Restricted Project Column on the
Restricted Project board.
clumens added a project to
T903: Split large IPC messages:
Restricted Project.
Refactor: scheduler: Fix formatting in pe_can_fence.
Med: scheduler: Require a cluster option for new remote fencing behavior.
Med: scheduler: Don't always fence online remote nodes.
This is no longer necessary for T25, so I'm going to close this. I'm not sure we care enough to implement this.
Refactor: libcrmcommon: Improve crm_ipc_flags enum.
Refactor: libcrmcommon: Remove a TODO and unnecessary block of code.
Refactor: libcrmcommon: Don't use qb_ipcc_sendv_recv in crm_ipc_send.
Refactor: libcrmcommon: Rearrange internal_ipc_get_reply.
Refactor: libcrmcommon: Rearrange send/receive code in crm_ipc_send.
Refactor: libcrmcommon: Reduce code duplication in crm_ipc_send.
Refactor: libcrmcommon: Reduce IPC client receive code duplication.
Low: python: Fix setting schema directory in source checkout.
Low: cts: Add missing crm_diff regression test back to cts-cli.
That should work - the whole point of that block is basically to check if we're running from a source checkout and if so, set the right schema directory. I bet running this from a source directory where you don't also have PCMK_schema_directory set is something that doesn't happen all that often.
Refactor: libcrmcommon: Improve crm_ipc_flags enum.
Refactor: libcrmcommon: Don't use qb_ipcc_sendv_recv in crm_ipc_send.
Refactor: libcrmcommon: Remove a TODO and unnecessary block of code.
Refactor: libcrmcommon: Rearrange send/receive code in crm_ipc_send.
Refactor: libcrmcommon: Reduce code duplication in crm_ipc_send.
Refactor: libcrmcommon: Rearrange internal_ipc_get_reply.
Refactor: libcrmcommon: Reduce IPC client receive code duplication.
@waltdisgrace Adding a mainloop timer here is definitely the way to go. If you haven't looked at the mainloop stuff before (especially glib's implementation and what we've built on top of it), this could be a little bit confusing. The basic idea is that we fake being multithreaded by looping over a queue of events that can come from various sources like file or network IO, UNIX signals, periodic or one-off timers, and so forth. Using the main loop allows us to avoid blocking other work from happening.
@waltdisgrace Start by adding a unit test to verify that the pacemaker library still just segfaults on that input. I think would be as good a place as any for this, but @nrwahl2 might have a better suggestion. I can then help you make sense of the segfault and we can figure out where to throw an error.
Additionally, it would be nice to have a unit test or two for this function. Most of what it does is call another function, several of which are already unit tested, but checking that the inputs/outputs are as expected would be good.
Refactor: libcrmservice: New services__copy_result() function
Refactor: libcrmservice: Store systemd job path in svc_action_private_t
Fix: various: Correctly detect completion of systemd start/stop actions
Refactor: libcrmservice: Subscribe to systemd D-Bus signals
Refactor: daemons: Unindent the goagain block in action_complete.
Refactor: libcrmservice: systemd_init should return a bool.
Low: libcrmservices: Don't leak msg if systemd_proxy is NULL.
Refactor: libcrmservices: Unref the dbus connection...
Refactor: libcrmservice: Improve error checks in systemd_service_name()
Refactor: libcrmservice: Fail systemd rsc start if create override fails
Refactor: libcrmservice: Check for empty arg in invoke_unit_by_name()
Refactor: libcrmservice: Avoid gboolean/gchar in systemd_unit_exists()
Refactor: libcrmservice: Defunctionize create_world_readable()
Refactor: libcrmservice: Simplify systemd override path getters
Refactor: libcrmcommon: Drop check for unused flag from str_any_of()
Low: libcrmservice: Fix overrides for systemd resources
Refactor: tools: NULL-check args in cli_resource_print()
Refactor: tools: NULL-check scheduler arg of cli_resource_move()
Refactor: tools: NULL-check scheduler arg of cli_cleanup_all()
Refactor: tools: NULL-check scheduler arg in cli_resource_fail()
Doc: libcrmservice: Suppress Coverity false positives
Doc: tools: Suppress Coverity false positives in crm_resource.c
Refactor: Unindent various code blocks in transport.c.
Refactor: Remove global booth_conf variable in transport.c.
Refactor: Add braces around conditional blocks in transport.c.
Refactor: Remove some (void) casts from transport.c.
Refactor: Check the return value of setsockopt.
Refactor: Use whitespace more consistently in transport.c.
Refactor: cts: Give an explicit encoding to uses of io.open.
Refactor: cts: Fix the last few pyflake problems in cts-regression.
Refactor: cts: Add the usual pylint import and name pragmas.
Refactor: cts: Don't inherit from object.
Refactor: python: Use += in cts-scheduler for increment.
Refactor: cts: Condense test descriptions onto single lines.
Refactor: cts: Use f-strings in cts-scheduler.
Refactor: python: Don't explicitly compare against an empty list.
Refactor: cts: Disable pylint warnings we're not going to address.
Refactor: cts: Unindent some code where possible.
Refactor: cts: Fix whitespace around lists and operators.
Refactor: python: Improve whitespace throughout cts-scheduler.
Refactor: cts: Get rid of the DESC variable.
Refactor: cts: Disable the too-many-locals warning in cts-scheduler.
Refactor: cts: Add a function to check if a file is missing or empty.
Refactor: cts: Improve docstrings in cts-scheduler.