[Sheepdog] Node listing size incorrectly on x86 host
MORITA Kazutaka
morita.kazutaka at lab.ntt.co.jp
Tue Apr 5 18:03:57 CEST 2011
At Tue, 05 Apr 2011 15:43:04 +0100,
Haven wrote:
>
> Hi, turning into a busy day for me on here.
>
> I'm mostly running sheepdog on x86_64 nodes but I have a single node
> that its 32 bit x86 and its the only one of my nodes that is
> displaying the incorrect node size.
>
> The sheepdog node is mounted as /var/lib/sheepdog and is an LVM
> volume (ext4):
>
> > # df -h /var/lib/sheepdog
> > Filesystem Size Used Avail Use% Mounted on
> > /dev/mapper/vol-sheepdog
> > 788G 197M 748G 1% /var/lib/sheepdog
> collie node info is reporting this node as 3.3GB rather than 788GB -
> co-incidentally 3.3GB is the size of the "/" partition:
> > Id Size Used Use%
> > 3 3.3 GB 0.0 MB 0%
>
> I can see that sheepdog is mounting the right location:
> > 21773 ? Ss 0:00 sheep -p 7000 /var/lib/sheepdog
> > 21774 ? Ssl 0:00 sheep -p 7000 /var/lib/sheepdog
> The underlying "/" filesystem size shows where this number is coming
> from (I assume):
> > df -h /
> > Filesystem Size Used Avail Use% Mounted on
> > /dev/sda1 4.6G 994M 3.4G 23% /
>
> Its possible I've done something daft but if so I cannot spot what
> it is. Sheepdog was started up after the mount point was in place,
> as was corosync. I have resized the lvm partition but only whilst
> all the daemons were down.
>
> Thoughts appreciated.
This is a bug. Thanks for your report! The below will fix it.
---
sheep/store.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/sheep/store.c b/sheep/store.c
index bca5846..e1b2c30 100644
--- a/sheep/store.c
+++ b/sheep/store.c
@@ -102,8 +102,8 @@ static int stat_sheep(uint64_t *store_size, uint64_t *store_free, uint32_t epoch
closedir(dir);
- *store_size = vs.f_frsize * vs.f_bfree + used;
- *store_free = vs.f_frsize * vs.f_bfree;
+ *store_size = (uint64_t)vs.f_frsize * vs.f_bfree + used;
+ *store_free = (uint64_t)vs.f_frsize * vs.f_bfree;
return SD_RES_SUCCESS;
}
--
1.5.6.5
More information about the sheepdog
mailing list