From e4829090d7cfa8276791a5907c67e13fa43e3388 Mon Sep 17 00:00:00 2001 From: Hongze Cheng Date: Wed, 27 Jan 2021 14:58:19 +0800 Subject: [PATCH] fix disk update problem --- src/tfs/src/tdisk.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/tfs/src/tdisk.c b/src/tfs/src/tdisk.c index e8021bf143..2f821375f2 100644 --- a/src/tfs/src/tdisk.c +++ b/src/tfs/src/tdisk.c @@ -41,8 +41,9 @@ SDisk *tfsFreeDisk(SDisk *pDisk) { int tfsUpdateDiskInfo(SDisk *pDisk) { ASSERT(pDisk != NULL); - SysDiskSize dstat; - if (taosGetDiskSize(pDisk->dir, &dstat) < 0) { + + struct statvfs dstat; + if (statvfs(pDisk->dir, &dstat) < 0) { fError("failed to update disk information at level %d id %d dir %s since %s", pDisk->level, pDisk->id, pDisk->dir, strerror(errno)); terrno = TAOS_SYSTEM_ERROR(errno); @@ -50,8 +51,8 @@ int tfsUpdateDiskInfo(SDisk *pDisk) { pDisk->dmeta.free = 0; return -1; } else { - pDisk->dmeta.size = dstat.tsize; - pDisk->dmeta.free = dstat.avail; + pDisk->dmeta.size = dstat.f_blocks * dstat.f_frsize; + pDisk->dmeta.free = dstat.f_bavail * dstat.f_frsize; return 0; } } \ No newline at end of file