This is an automated email from the ASF dual-hosted git repository.
hulk pushed a commit to branch unstable
in repository https://gitbox.apache.org/repos/asf/kvrocks-controller.git
The following commit(s) were added to refs/heads/unstable by this push:
new 01c319b Avoid syncing the cluster information to the node if it's
restoring (#236)
01c319b is described below
commit 01c319bdca46501be78c185642f07d020734cdb1
Author: hulk <[email protected]>
AuthorDate: Thu Dec 19 23:00:57 2024 +0800
Avoid syncing the cluster information to the node if it's restoring (#236)
---
controller/cluster.go | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/controller/cluster.go b/controller/cluster.go
index 5b8d539..4f44953 100644
--- a/controller/cluster.go
+++ b/controller/cluster.go
@@ -112,7 +112,7 @@ func (c *ClusterChecker) probeNode(ctx context.Context,
node store.Node) (int64,
// And it's fixed in PR:
https://github.com/apache/kvrocks/pull/2362,
// but we need to be compatible with the old version here.
if strings.Contains(err.Error(), ErrRestoringBackUp.Error()) {
- return -1, nil
+ return -1, ErrRestoringBackUp
} else if strings.Contains(err.Error(),
ErrClusterNotInitialized.Error()) {
return -1, ErrClusterNotInitialized
} else {
@@ -203,6 +203,11 @@ func (c *ClusterChecker) parallelProbeNodes(ctx
context.Context, cluster *store.
zap.String("addr", n.Addr()),
)
version, err := c.probeNode(ctx, n)
+ // Don't sync the cluster info to the node if
it is restoring the db from backup
+ if errors.Is(err, ErrRestoringBackUp) {
+ log.Error("The node is restoring the db
from backup")
+ return
+ }
if err != nil && !errors.Is(err,
ErrClusterNotInitialized) {
failureCount :=
c.increaseFailureCount(shardIdx, n)
log.With(zap.Error(err),