aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2021-10-04 23:32:07 -0700
committerChris Lu <chris.lu@gmail.com>2021-10-04 23:32:07 -0700
commit8a663060640a499f8a37a7f60e3a7c5a2f95fe05 (patch)
tree8d668409cdf55b9310c73ca38a065e380431cb70
parent4ed2994555a441eafab1d24cd03c9de2a89de5a0 (diff)
downloadseaweedfs-8a663060640a499f8a37a7f60e3a7c5a2f95fe05.tar.xz
seaweedfs-8a663060640a499f8a37a7f60e3a7c5a2f95fe05.zip
calculate disk usage in case of race condition
related to https://github.com/chrislusf/seaweedfs/issues/2357
-rw-r--r--weed/topology/data_node.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/weed/topology/data_node.go b/weed/topology/data_node.go
index 9f868681e..6bdbd965f 100644
--- a/weed/topology/data_node.go
+++ b/weed/topology/data_node.go
@@ -110,6 +110,9 @@ func (dn *DataNode) DeltaUpdateVolumes(newVolumes, deletedVolumes []storage.Volu
for _, v := range deletedVolumes {
disk := dn.getOrCreateDisk(v.DiskType)
+ if _, found := disk.volumes[v.Id]; !found {
+ continue
+ }
delete(disk.volumes, v.Id)
deltaDiskUsages := newDiskUsages()