Closed hayley-leblanc closed 2 years ago
This issue is because before umount, we report the number of blocks of data pages. Upon remount, we count the number of blocks as the sum of log pages and data pages. We should the make the logic uniform.
Fixed.
Hi,
It looks like after some operations (we have observed it in mkdir and symlink), files in NOVA may have incorrect block counts or sizes until the system is unmounted and remounted.
I can reproduce this issue by mounting a fresh instance of NOVA and creating a new file A/. Running
stat A
gives this:But if I unmount and remount NOVA, running
stat A
gives this:Before umount, the number of blocks is 0, but after it, the number of blocks is 1.
I can also reproduce it with symbolic links. If I create a symlink
ln -s . file0
in a fresh NOVA instance and runstat file0
, I get:Remounting NOVA and stat-ing file0 again gives:
Here, there's a mismatch with both the number of blocks and the size of the file.
Any idea what the cause of this might be?
Thanks!