From e439289be5c0d9764885f1847d83ebd8fa0900c5 Mon Sep 17 00:00:00 2001 From: Nick Cabatoff Date: Fri, 24 Mar 2023 10:15:25 -0400 Subject: [PATCH] Address regression introduced by #15493 for non-raft storage backends. (#19721) --- changelog/19721.txt | 3 +++ vault/ha.go | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 changelog/19721.txt diff --git a/changelog/19721.txt b/changelog/19721.txt new file mode 100644 index 000000000000..9818a0facfe2 --- /dev/null +++ b/changelog/19721.txt @@ -0,0 +1,3 @@ +```release-note:bug +core: Fix regression breaking non-raft clusters whose nodes share the same cluster_addr/api_addr. +``` \ No newline at end of file diff --git a/vault/ha.go b/vault/ha.go index fdd6d9b33e39..300f72708af2 100644 --- a/vault/ha.go +++ b/vault/ha.go @@ -238,7 +238,7 @@ func (c *Core) Leader() (isLeader bool, leaderAddr, clusterAddr string, err erro // to ourself, there's no point in paying any attention to it. And by // disregarding it, we can avoid a panic in raft tests using the Inmem network // layer when we try to connect back to ourself. - if adv.ClusterAddr == c.ClusterAddr() && adv.RedirectAddr == c.redirectAddr { + if adv.ClusterAddr == c.ClusterAddr() && adv.RedirectAddr == c.redirectAddr && c.getRaftBackend() != nil { return false, "", "", nil }