aboutsummaryrefslogtreecommitdiff
path: root/weed/topology/topology.go
diff options
context:
space:
mode:
authorshibinbin <shibinbin@megvii.com>2020-06-11 11:14:31 +0800
committershibinbin <shibinbin@megvii.com>2020-06-11 11:14:31 +0800
commit29a4c3944eeb07434060df52dfb1d3cf4c59dc91 (patch)
tree45dd99cb3b58571372053ff79597259b707f6259 /weed/topology/topology.go
parent40334bc28d3fa694ce59b4e65077efb845264d20 (diff)
parentb9365de47b04414e704cb62a3cfa9753e8c5ec0c (diff)
downloadseaweedfs-29a4c3944eeb07434060df52dfb1d3cf4c59dc91.tar.xz
seaweedfs-29a4c3944eeb07434060df52dfb1d3cf4c59dc91.zip
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'weed/topology/topology.go')
-rw-r--r--weed/topology/topology.go7
1 files changed, 6 insertions, 1 deletions
diff --git a/weed/topology/topology.go b/weed/topology/topology.go
index c24cab9d6..993f444a7 100644
--- a/weed/topology/topology.go
+++ b/weed/topology/topology.go
@@ -212,13 +212,18 @@ func (t *Topology) SyncDataNodeRegistration(volumes []*master_pb.VolumeInformati
}
}
// find out the delta volumes
- newVolumes, deletedVolumes = dn.UpdateVolumes(volumeInfos)
+ var changedVolumes []storage.VolumeInfo
+ newVolumes, deletedVolumes, changedVolumes = dn.UpdateVolumes(volumeInfos)
for _, v := range newVolumes {
t.RegisterVolumeLayout(v, dn)
}
for _, v := range deletedVolumes {
t.UnRegisterVolumeLayout(v, dn)
}
+ for _, v := range changedVolumes {
+ vl := t.GetVolumeLayout(v.Collection, v.ReplicaPlacement, v.Ttl)
+ vl.ensureCorrectWritables(&v)
+ }
return
}