Chris Lu
4 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with
4 additions and
7 deletions
-
weed/server/master_grpc_server_volume.go
-
weed/topology/volume_layout.go
-
weed/topology/volume_location_list.go
|
|
@ -77,7 +77,7 @@ func (ms *MasterServer) Assign(ctx context.Context, req *master_pb.AssignRequest |
|
|
|
|
|
|
|
if !ms.Topo.HasWritableVolume(option) { |
|
|
|
if ms.Topo.AvailableSpaceFor(option) <= 0 { |
|
|
|
return nil, fmt.Errorf("no free volumes left for "+option.String()) |
|
|
|
return nil, fmt.Errorf("no free volumes left for " + option.String()) |
|
|
|
} |
|
|
|
ms.vgLock.Lock() |
|
|
|
if !ms.Topo.HasWritableVolume(option) { |
|
|
@ -122,11 +122,8 @@ func (ms *MasterServer) Statistics(ctx context.Context, req *master_pb.Statistic |
|
|
|
|
|
|
|
volumeLayout := ms.Topo.GetVolumeLayout(req.Collection, replicaPlacement, ttl, types.ToDiskType(req.DiskType)) |
|
|
|
stats := volumeLayout.Stats() |
|
|
|
|
|
|
|
totalSize := ms.Topo.GetDiskUsages().GetMaxVolumeCount() * int64(ms.option.VolumeSizeLimitMB) * 1024 * 1024 |
|
|
|
|
|
|
|
resp := &master_pb.StatisticsResponse{ |
|
|
|
TotalSize: uint64(totalSize), |
|
|
|
TotalSize: stats.TotalSize, |
|
|
|
UsedSize: stats.UsedSize, |
|
|
|
FileCount: stats.FileCount, |
|
|
|
} |
|
|
|
|
|
@ -432,7 +432,7 @@ func (vl *VolumeLayout) Stats() *VolumeLayoutStats { |
|
|
|
if vl.readonlyVolumes.IsTrue(vid) { |
|
|
|
ret.TotalSize += size |
|
|
|
} else { |
|
|
|
ret.TotalSize += vl.volumeSizeLimit |
|
|
|
ret.TotalSize += vl.volumeSizeLimit * uint64(vll.Length()) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -82,7 +82,7 @@ func (dnll *VolumeLocationList) Stats(vid needle.VolumeId, freshThreshHold int64 |
|
|
|
if dnl.LastSeen < freshThreshHold { |
|
|
|
vinfo, err := dnl.GetVolumesById(vid) |
|
|
|
if err == nil { |
|
|
|
return vinfo.Size - vinfo.DeletedByteCount, vinfo.FileCount - vinfo.DeleteCount |
|
|
|
return (vinfo.Size - vinfo.DeletedByteCount) * uint64(len(dnll.list)), vinfo.FileCount - vinfo.DeleteCount |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|