剩余空间使用free blocks代替available blocks

This commit is contained in:
刘祥超
2023-07-09 21:27:04 +08:00
parent 1be64adb6a
commit c6c0823d30
4 changed files with 9 additions and 9 deletions

View File

@@ -1418,14 +1418,14 @@ func (this *FileStorage) checkDiskSpace() {
if this.options != nil && len(this.options.Dir) > 0 { if this.options != nil && len(this.options.Dir) > 0 {
stat, err := fsutils.Stat(this.options.Dir) stat, err := fsutils.Stat(this.options.Dir)
if err == nil { if err == nil {
this.mainDiskIsFull = stat.AvailableSize() < MinDiskSpace this.mainDiskIsFull = stat.FreeSize() < MinDiskSpace
} }
} }
var subDirs = this.subDirs // copy slice var subDirs = this.subDirs // copy slice
for _, subDir := range subDirs { for _, subDir := range subDirs {
stat, err := fsutils.Stat(subDir.Path) stat, err := fsutils.Stat(subDir.Path)
if err == nil { if err == nil {
subDir.IsFull = stat.AvailableSize() < MinDiskSpace subDir.IsFull = stat.FreeSize() < MinDiskSpace
} }
} }
} }

View File

@@ -286,7 +286,7 @@ func (this *NodeStatusExecutor) updateCacheSpace(status *nodeconfigs.NodeStatus)
result = append(result, maps.Map{ result = append(result, maps.Map{
"path": path, "path": path,
"total": stat.TotalSize(), "total": stat.TotalSize(),
"avail": stat.AvailableSize(), "avail": stat.FreeSize(),
"used": stat.UsedSize(), "used": stat.UsedSize(),
}) })
} }

View File

@@ -65,8 +65,8 @@ func NewStatResult(rawStat *unix.Statfs_t) *StatResult {
} }
} }
func (this *StatResult) AvailableSize() uint64 { func (this *StatResult) FreeSize() uint64 {
return this.rawStat.Bavail * this.blockSize return this.rawStat.Bfree * this.blockSize
} }
func (this *StatResult) TotalSize() uint64 { func (this *StatResult) TotalSize() uint64 {
@@ -74,8 +74,8 @@ func (this *StatResult) TotalSize() uint64 {
} }
func (this *StatResult) UsedSize() uint64 { func (this *StatResult) UsedSize() uint64 {
if this.rawStat.Bavail <= this.rawStat.Blocks { if this.rawStat.Bfree <= this.rawStat.Blocks {
return (this.rawStat.Blocks - this.rawStat.Bavail) * this.blockSize return (this.rawStat.Blocks - this.rawStat.Bfree) * this.blockSize
} }
return 0 return 0
} }

View File

@@ -14,7 +14,7 @@ func TestStat(t *testing.T) {
if err != nil { if err != nil {
t.Fatal(err) t.Fatal(err)
} }
t.Log("available:", stat.AvailableSize()/(1<<30), "total:", stat.TotalSize()/(1<<30), "used:", stat.UsedSize()/(1<<30)) t.Log("free:", stat.FreeSize()/(1<<30), "total:", stat.TotalSize()/(1<<30), "used:", stat.UsedSize()/(1<<30))
} }
func TestStatCache(t *testing.T) { func TestStatCache(t *testing.T) {
@@ -23,7 +23,7 @@ func TestStatCache(t *testing.T) {
if err != nil { if err != nil {
t.Fatal(err) t.Fatal(err)
} }
t.Log("available:", stat.AvailableSize()/(1<<30), "total:", stat.TotalSize()/(1<<30), "used:", stat.UsedSize()/(1<<30)) t.Log("free:", stat.FreeSize()/(1<<30), "total:", stat.TotalSize()/(1<<30), "used:", stat.UsedSize()/(1<<30))
} }
} }