diff options
| author | askeipx <askeipx@gmail.com> | 2022-08-24 11:18:21 +0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-08-23 23:18:21 -0700 |
| commit | 2e78a522ab3892debf9aefeb978177678ae52a83 (patch) | |
| tree | 2f10264a407fb1361c91b3f6a6e9ef06712e477a /weed/shell/command_cluster_check.go | |
| parent | 762dc219a6175d5c81968d817d41a16fb3a1163f (diff) | |
| download | seaweedfs-2e78a522ab3892debf9aefeb978177678ae52a83.tar.xz seaweedfs-2e78a522ab3892debf9aefeb978177678ae52a83.zip | |
remove old raft servers if they don't answer to pings for too long (#3398)
* remove old raft servers if they don't answer to pings for too long
add ping durations as options
rename ping fields
fix some todos
get masters through masterclient
raft remove server from leader
use raft servers to ping them
CheckMastersAlive for hashicorp raft only
* prepare blocking ping
* pass waitForReady as param
* pass waitForReady through all functions
* waitForReady works
* refactor
* remove unneeded params
* rollback unneeded changes
* fix
Diffstat (limited to 'weed/shell/command_cluster_check.go')
| -rw-r--r-- | weed/shell/command_cluster_check.go | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/weed/shell/command_cluster_check.go b/weed/shell/command_cluster_check.go index fef371b49..2cabf91b8 100644 --- a/weed/shell/command_cluster_check.go +++ b/weed/shell/command_cluster_check.go @@ -4,12 +4,13 @@ import ( "context" "flag" "fmt" + "io" + "github.com/seaweedfs/seaweedfs/weed/cluster" "github.com/seaweedfs/seaweedfs/weed/pb" "github.com/seaweedfs/seaweedfs/weed/pb/filer_pb" "github.com/seaweedfs/seaweedfs/weed/pb/master_pb" "github.com/seaweedfs/seaweedfs/weed/pb/volume_server_pb" - "io" ) func init() { @@ -97,7 +98,7 @@ func (c *commandClusterCheck) Do(args []string, commandEnv *CommandEnv, writer i for _, master := range masters { for _, volumeServer := range volumeServers { fmt.Fprintf(writer, "checking master %s to volume server %s ... ", string(master), string(volumeServer)) - err := pb.WithMasterClient(false, master, commandEnv.option.GrpcDialOption, func(client master_pb.SeaweedClient) error { + err := pb.WithMasterClient(false, master, commandEnv.option.GrpcDialOption, false, func(client master_pb.SeaweedClient) error { pong, err := client.Ping(context.Background(), &master_pb.PingRequest{ Target: string(volumeServer), TargetType: cluster.VolumeServerType, @@ -120,7 +121,7 @@ func (c *commandClusterCheck) Do(args []string, commandEnv *CommandEnv, writer i continue } fmt.Fprintf(writer, "checking master %s to %s ... ", string(sourceMaster), string(targetMaster)) - err := pb.WithMasterClient(false, sourceMaster, commandEnv.option.GrpcDialOption, func(client master_pb.SeaweedClient) error { + err := pb.WithMasterClient(false, sourceMaster, commandEnv.option.GrpcDialOption, false, func(client master_pb.SeaweedClient) error { pong, err := client.Ping(context.Background(), &master_pb.PingRequest{ Target: string(targetMaster), TargetType: cluster.MasterType, |
