aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNumblgw <44025291+Numblgw@users.noreply.github.com>2024-06-21 06:29:36 +0800
committerGitHub <noreply@github.com>2024-06-20 15:29:36 -0700
commit73baf82f056a2ace5a52a7a76113656213c1e2cf (patch)
tree9a0de856159d1581407862cb8ef842b166e6739e
parent34165013c85cb39385e422710f12eb1bde40109a (diff)
downloadseaweedfs-73baf82f056a2ace5a52a7a76113656213c1e2cf.tar.xz
seaweedfs-73baf82f056a2ace5a52a7a76113656213c1e2cf.zip
bugfix: unregister ec shards when volume server disconnected (#5697)
bugfix unregister ec shards when volume server disconnected Co-authored-by: liguowei <liguowei@xinye.com>
-rw-r--r--weed/topology/topology_event_handling.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/weed/topology/topology_event_handling.go b/weed/topology/topology_event_handling.go
index 761649ff4..d0ecd089a 100644
--- a/weed/topology/topology_event_handling.go
+++ b/weed/topology/topology_event_handling.go
@@ -90,6 +90,11 @@ func (t *Topology) UnRegisterDataNode(dn *DataNode) {
vl.SetVolumeUnavailable(dn, v.Id)
}
+ // unregister ec shards when volume server disconnected
+ for _, s := range dn.GetEcShards() {
+ t.UnRegisterEcShards(s, dn)
+ }
+
negativeUsages := dn.GetDiskUsages().negative()
dn.UpAdjustDiskUsageDelta(negativeUsages)
dn.DeltaUpdateVolumes([]storage.VolumeInfo{}, dn.GetVolumes())