diff options
| author | vadimartynov <166398828+vadimartynov@users.noreply.github.com> | 2024-06-14 21:40:34 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-06-14 11:40:34 -0700 |
| commit | 8aae82dd71735df1cd915a47a9b9d453d393adf6 (patch) | |
| tree | c9bb9a876485fddfd17c84c857e2cb97a46dfc5d /weed/filer/filer.go | |
| parent | 2a169dde9a4dab7d3b66f1be47b29d42b730f3a6 (diff) | |
| download | seaweedfs-8aae82dd71735df1cd915a47a9b9d453d393adf6.tar.xz seaweedfs-8aae82dd71735df1cd915a47a9b9d453d393adf6.zip | |
Added context for the MasterClient's methods to avoid endless loops (#5628)
* Added context for the MasterClient's methods to avoid endless loops
* Returned WithClient function. Added WithClientCustomGetMaster function
* Hid unused ctx arguments
* Using a common context for the KeepConnectedToMaster and WaitUntilConnected functions
* Changed the context termination check in the tryConnectToMaster function
* Added a child context to the tryConnectToMaster function
* Added a common context for KeepConnectedToMaster and WaitUntilConnected functions in benchmark
Diffstat (limited to 'weed/filer/filer.go')
| -rw-r--r-- | weed/filer/filer.go | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/weed/filer/filer.go b/weed/filer/filer.go index 9be8d5259..016bfc8fa 100644 --- a/weed/filer/filer.go +++ b/weed/filer/filer.go @@ -143,8 +143,8 @@ func (f *Filer) AggregateFromPeers(self pb.ServerAddress, existingNodes []*maste } -func (f *Filer) ListExistingPeerUpdates() (existingNodes []*master_pb.ClusterNodeUpdate) { - return cluster.ListExistingPeerUpdates(f.GetMaster(), f.GrpcDialOption, f.MasterClient.FilerGroup, cluster.FilerType) +func (f *Filer) ListExistingPeerUpdates(ctx context.Context) (existingNodes []*master_pb.ClusterNodeUpdate) { + return cluster.ListExistingPeerUpdates(f.GetMaster(ctx), f.GrpcDialOption, f.MasterClient.FilerGroup, cluster.FilerType) } func (f *Filer) SetStore(store FilerStore) (isFresh bool) { @@ -177,12 +177,12 @@ func (f *Filer) GetStore() (store FilerStore) { return f.Store } -func (fs *Filer) GetMaster() pb.ServerAddress { - return fs.MasterClient.GetMaster() +func (fs *Filer) GetMaster(ctx context.Context) pb.ServerAddress { + return fs.MasterClient.GetMaster(ctx) } -func (fs *Filer) KeepMasterClientConnected() { - fs.MasterClient.KeepConnectedToMaster() +func (fs *Filer) KeepMasterClientConnected(ctx context.Context) { + fs.MasterClient.KeepConnectedToMaster(ctx) } func (f *Filer) BeginTransaction(ctx context.Context) (context.Context, error) { |
