Do not retry on ECONNREFUSED in command line tools.
- Resolves: RHEL-106594
This commit is contained in:
parent
834fdc824d
commit
371c43a831
40
001-econnrefused.patch
Normal file
40
001-econnrefused.patch
Normal file
@ -0,0 +1,40 @@
|
||||
From 125b434943f57778816135ad147fc827fa706e99 Mon Sep 17 00:00:00 2001
|
||||
From: Chris Lumens <clumens@redhat.com>
|
||||
Date: Mon, 4 Aug 2025 10:38:00 -0400
|
||||
Subject: [PATCH] Med: libpacemaker: Do not retry on ECONNREFUSED in tools.
|
||||
|
||||
This is a regression introduced by e438946787. In that patch, what
|
||||
we're trying to do is retry IPC connections between daemons. If a
|
||||
daemon gets ECONNREFUSED when it initiates an IPC connection, the most
|
||||
likely reason is that another daemon has been killed and is restarting
|
||||
but is not yet ready to accept connections. Waiting and retrying
|
||||
repeatedly is an acceptable way to deal with this.
|
||||
|
||||
However, if a command line tool gets ECONNREFUSED, it's more likely that
|
||||
the problem is the cluster isn't running at all. In this case, waiting
|
||||
and retrying just introduces a delay for a situation that will never be
|
||||
resolved. Reverting just the part in pcmk_cluster_queries.c should fix
|
||||
this problem without affecting any of the daemons - they don't call this
|
||||
code.
|
||||
|
||||
Fixes RHEL-106594
|
||||
---
|
||||
lib/pacemaker/pcmk_cluster_queries.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lib/pacemaker/pcmk_cluster_queries.c b/lib/pacemaker/pcmk_cluster_queries.c
|
||||
index 8a08d99180..2f91a68738 100644
|
||||
--- a/lib/pacemaker/pcmk_cluster_queries.c
|
||||
+++ b/lib/pacemaker/pcmk_cluster_queries.c
|
||||
@@ -360,7 +360,7 @@ ipc_connect(data_t *data, enum pcmk_ipc_server server, pcmk_ipc_callback_t cb,
|
||||
pcmk_register_ipc_callback(api, cb, data);
|
||||
}
|
||||
|
||||
- rc = pcmk__connect_ipc_retry_conrefused(api, dispatch_type, 5);
|
||||
+ rc = pcmk__connect_ipc(api, dispatch_type, 5);
|
||||
if (rc != pcmk_rc_ok) {
|
||||
if (rc == EREMOTEIO) {
|
||||
data->pcmkd_state = pcmk_pacemakerd_state_remote;
|
||||
--
|
||||
2.49.0
|
||||
|
||||
@ -41,7 +41,7 @@
|
||||
## can be incremented to build packages reliably considered "newer"
|
||||
## than previously built packages with the same pcmkversion)
|
||||
%global pcmkversion 3.0.1
|
||||
%global specversion 1
|
||||
%global specversion 2
|
||||
|
||||
## Upstream commit (full commit ID, abbreviated commit ID, or tag) to build
|
||||
%global commit 9a5e54bae85847c4bb6ed7c7fb06103ebebbc64a
|
||||
@ -199,7 +199,7 @@ Url: https://www.clusterlabs.org/
|
||||
Source0: https://codeload.github.com/%{github_owner}/%{name}/tar.gz/%{archive_github_url}
|
||||
Source1: pacemaker.sysusers
|
||||
# upstream commits
|
||||
#Patch001: 001-xxxx.patch
|
||||
Patch001: 001-econnrefused.patch
|
||||
|
||||
Requires: resource-agents
|
||||
Requires: %{pkgname_pcmk_libs}%{?_isa} = %{version}-%{release}
|
||||
@ -791,6 +791,10 @@ exit 0
|
||||
%{_datadir}/pkgconfig/pacemaker-schemas.pc
|
||||
|
||||
%changelog
|
||||
* Mon Aug 11 2025 Chris Lumens <clumens@redhat.com> - 3.0.1-2
|
||||
- Do not retry on ECONNREFUSED in command line tools.
|
||||
- Resolves: RHEL-106594
|
||||
|
||||
* Tue Jun 24 2025 Chris Lumens <clumens@redhat.com> - 3.0.1-1
|
||||
- Rebase on upstream 3.0.1-rc1
|
||||
- Use dbus to detect completion of systemd resource start/stop actions
|
||||
|
||||
Loading…
Reference in New Issue
Block a user