aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2021-02-19 01:38:56 -0800
committerChris Lu <chris.lu@gmail.com>2021-02-19 01:38:56 -0800
commitc576ad04aca940319ec6d41583c93398b68dbe58 (patch)
treedb4435270c25d4114a2946be53eaf275fdee7dc6
parentc78409a5983145784d128c86541c6715dad3a937 (diff)
downloadseaweedfs-c576ad04aca940319ec6d41583c93398b68dbe58.tar.xz
seaweedfs-c576ad04aca940319ec6d41583c93398b68dbe58.zip
fix volume server display for volumes
-rw-r--r--weed/topology/data_node.go21
-rw-r--r--weed/topology/disk.go19
2 files changed, 20 insertions, 20 deletions
diff --git a/weed/topology/data_node.go b/weed/topology/data_node.go
index 1a0ebf761..d4ec94fbe 100644
--- a/weed/topology/data_node.go
+++ b/weed/topology/data_node.go
@@ -207,7 +207,26 @@ func (dn *DataNode) ToMap() interface{} {
ret := make(map[string]interface{})
ret["Url"] = dn.Url()
ret["PublicUrl"] = dn.PublicUrl
- ret["Disks"] = dn.diskUsages.ToMap()
+
+ // aggregated volume info
+ var volumeCount, ecShardCount, maxVolumeCount int64
+ var volumeIds string
+ for _, diskUsage := range dn.diskUsages.usages {
+ volumeCount += diskUsage.volumeCount
+ ecShardCount += diskUsage.ecShardCount
+ maxVolumeCount += diskUsage.maxVolumeCount
+ }
+
+ for _, disk := range dn.Children() {
+ d := disk.(*Disk)
+ volumeIds += d.GetVolumeIds()
+ }
+
+ ret["Volumes"] = volumeCount
+ ret["EcShards"] = ecShardCount
+ ret["Max"] = maxVolumeCount
+ ret["volumeIds"] = volumeIds
+
return ret
}
diff --git a/weed/topology/disk.go b/weed/topology/disk.go
index 37d5e1272..a085f8dff 100644
--- a/weed/topology/disk.go
+++ b/weed/topology/disk.go
@@ -58,16 +58,6 @@ func (d *DiskUsages) negative() *DiskUsages {
return t
}
-func (d *DiskUsages) ToMap() interface{} {
- d.RLock()
- defer d.RUnlock()
- ret := make(map[string]interface{})
- for diskType, diskUsage := range d.usages {
- ret[diskType.String()] = diskUsage.ToMap()
- }
- return ret
-}
-
func (d *DiskUsages) ToDiskInfo() map[string]*master_pb.DiskInfo {
ret := make(map[string]*master_pb.DiskInfo)
for diskType, diskUsageCounts := range d.usages {
@@ -135,15 +125,6 @@ func (a *DiskUsageCounts) minus(b *DiskUsageCounts) *DiskUsageCounts {
}
}
-func (diskUsage *DiskUsageCounts) ToMap() interface{} {
- ret := make(map[string]interface{})
- ret["Volumes"] = diskUsage.volumeCount
- ret["EcShards"] = diskUsage.ecShardCount
- ret["Max"] = diskUsage.maxVolumeCount
- ret["Free"] = diskUsage.FreeSpace()
- return ret
-}
-
func (du *DiskUsages) getOrCreateDisk(diskType types.DiskType) *DiskUsageCounts {
du.Lock()
defer du.Unlock()