Request for information on bloated writes using Swift
Eric Sandeen
sandeen at sandeen.net
Tue Feb 2 20:47:24 CST 2016
On 2/2/16 4:32 PM, Dilip Simha wrote:
> Hi,
>
> I have a question regarding speculated preallocation in XFS, w.r.t
> kernel version: 3.16.0-46-generic. I am using Swift version: 1.0 and
> mkfs.xfs version 3.2.1
>
> When I write a 256KiB file to Swift, I see that the underlying XFS
> uses 3x the amount of space/blocks to write that data. Upon
> performing detailed experiments, I see that when Swift uses fallocate
> (default approach), XFS doesn't reclaim the preallocated blocks that
> XFS allocated. Swift fallocate doesn't exceed the body size(256
> KiB).
>
> Interestingly, when either allocsize=4k or when swift doesn't use
> fallocate, XFS doesn't consume additional space.
>
> Can you please let me know if this is a known bug and if its fixed in
> the later versions?
Can you clarify the exact sequence of events?
i.e. -
xfs_io -f -c "fallocate 0 256k" -c "pwrite 0 256k" somefile
leads to unreaclaimed preallocation, while
xfs_io -f -c "pwrite 0 256k" somefile
does not? Or is it some other sequence? I don't have a
3.16 handy to test, but if you can describe it in more detail
that'd help. Some of this is influenced by fs geometry, too
so xfs_info output would be good, along with any mount options
you might be using.
Are you preallocating with or without KEEP_SIZE?
-Eric
More information about the xfs
mailing list