aboutsummaryrefslogtreecommitdiff
path: root/weed/server/master_grpc_server.go
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2021-02-09 11:38:42 -0800
committerChris Lu <chris.lu@gmail.com>2021-02-09 11:38:42 -0800
commit2bf5ea87d6788fc1b82d36ffaed42ce0345b955e (patch)
treeb83fdc9ec478696ff43ebdf05f556ac6cd4e5724 /weed/server/master_grpc_server.go
parentd221a937df38ff587e2392a313681b0a0f48138b (diff)
parent821c46edf10097200b986bd17dc01d3991cf57ff (diff)
downloadseaweedfs-2bf5ea87d6788fc1b82d36ffaed42ce0345b955e.tar.xz
seaweedfs-2bf5ea87d6788fc1b82d36ffaed42ce0345b955e.zip
Merge branch 'support_ssd_volume'
Diffstat (limited to 'weed/server/master_grpc_server.go')
-rw-r--r--weed/server/master_grpc_server.go8
1 files changed, 5 insertions, 3 deletions
diff --git a/weed/server/master_grpc_server.go b/weed/server/master_grpc_server.go
index 9df88e956..62b8cdf07 100644
--- a/weed/server/master_grpc_server.go
+++ b/weed/server/master_grpc_server.go
@@ -67,9 +67,7 @@ func (ms *MasterServer) SendHeartbeat(stream master_pb.Seaweed_SendHeartbeatServ
dcName, rackName := ms.Topo.Configuration.Locate(heartbeat.Ip, heartbeat.DataCenter, heartbeat.Rack)
dc := ms.Topo.GetOrCreateDataCenter(dcName)
rack := dc.GetOrCreateRack(rackName)
- dn = rack.GetOrCreateDataNode(heartbeat.Ip,
- int(heartbeat.Port), heartbeat.PublicUrl,
- int64(heartbeat.MaxVolumeCount))
+ dn = rack.GetOrCreateDataNode(heartbeat.Ip, int(heartbeat.Port), heartbeat.PublicUrl, int64(heartbeat.MaxVolumeCount), int64(heartbeat.MaxSsdVolumeCount))
glog.V(0).Infof("added volume server %v:%d", heartbeat.GetIp(), heartbeat.GetPort())
if err := stream.Send(&master_pb.HeartbeatResponse{
VolumeSizeLimit: uint64(ms.option.VolumeSizeLimitMB) * 1024 * 1024,
@@ -83,6 +81,10 @@ func (ms *MasterServer) SendHeartbeat(stream master_pb.Seaweed_SendHeartbeatServ
delta := int64(heartbeat.MaxVolumeCount) - dn.GetMaxVolumeCount()
dn.UpAdjustMaxVolumeCountDelta(delta)
}
+ if heartbeat.MaxSsdVolumeCount != 0 && dn.GetMaxSsdVolumeCount() != int64(heartbeat.MaxSsdVolumeCount) {
+ delta := int64(heartbeat.MaxSsdVolumeCount) - dn.GetMaxSsdVolumeCount()
+ dn.UpAdjustMaxSsdVolumeCountDelta(delta)
+ }
glog.V(4).Infof("master received heartbeat %s", heartbeat.String())
message := &master_pb.VolumeLocation{