aboutsummaryrefslogtreecommitdiff
path: root/weed/admin/dash/volume_management.go
diff options
context:
space:
mode:
Diffstat (limited to 'weed/admin/dash/volume_management.go')
-rw-r--r--weed/admin/dash/volume_management.go16
1 files changed, 16 insertions, 0 deletions
diff --git a/weed/admin/dash/volume_management.go b/weed/admin/dash/volume_management.go
index 608c39a91..61f2ee691 100644
--- a/weed/admin/dash/volume_management.go
+++ b/weed/admin/dash/volume_management.go
@@ -119,6 +119,21 @@ func (s *AdminServer) GetClusterVolumes(page int, pageSize int, sortBy string, s
// Sort volumes
s.sortVolumes(volumes, sortBy, sortOrder)
+ // Get volume size limit from master
+ var volumeSizeLimit uint64
+ err = s.WithMasterClient(func(client master_pb.SeaweedClient) error {
+ resp, err := client.GetMasterConfiguration(context.Background(), &master_pb.GetMasterConfigurationRequest{})
+ if err != nil {
+ return err
+ }
+ volumeSizeLimit = uint64(resp.VolumeSizeLimitMB) * 1024 * 1024 // Convert MB to bytes
+ return nil
+ })
+ if err != nil {
+ // If we can't get the limit, set a default
+ volumeSizeLimit = 30 * 1024 * 1024 * 1024 // 30GB default
+ }
+
// Calculate pagination
totalVolumes := len(volumes)
totalPages := (totalVolumes + pageSize - 1) / pageSize
@@ -195,6 +210,7 @@ func (s *AdminServer) GetClusterVolumes(page int, pageSize int, sortBy string, s
Volumes: volumes,
TotalVolumes: totalVolumes,
TotalSize: totalSize,
+ VolumeSizeLimit: volumeSizeLimit,
LastUpdated: time.Now(),
CurrentPage: page,
TotalPages: totalPages,