On Wed, Jun 23, 2010 at 10:37:19AM +0300, Yannis Klonatos wrote:
> Hi all!
> I have come across the following peculiar behavior in XFS
> and i would appreciate any information anyone
> could provide.
> In our lab we have a system that has twelve 500GByte hard
> disks (total capacity 6TByte), connected to an
> Areca (ARC-1680D-IX-12) SAS storage controller. The disks are
> configured as a RAID-0 device. Then I create
> a clean XFS filesystem on top of the raid volume, using the whole
> capacity. We use this test-setup to measure
> performance improvement for a TPC-H experiment. We copy the database
> over the clean XFS filesystem using the
> cp utility. The database used in our experiments is 56GBytes in size
> (data + indices).
> The problem is that i have noticed that XFS may - not all
> times - split a table over a large disk distance. For
> example in one run i have noticed that a file of 13GByte is split
> over a 4,7TByte distance (I calculate this distance
> by subtracting the final block used for the file with the first one.
> The two disk blocks values are acquired using the
> FIBMAP ioctl).
> Is there some reasoning behind this (peculiar) behavior? I
> would expect that since the underlying storage is so
> large, and the dataset is so small, XFS would try to minimize disk
> seeks and thus place the file sequentially in disk.
> Furthermore, I understand that there may be some blocks left unused
> by XFS between subsequent file blocks used
> in order to handle any write appends that may come afterward. But i
> wouldn't expect such a large splitting of a single
> Any help?
The reasons for it being split are wide and varied. We need more
information before trying to determie the reason.
The output of "xfs_info <mntpt>" will tell us your filesystem
geometry and the output of xfs_bmap <split file> will tell us
exactly how it was laid out on disk. These are needed to see exactly
what the problem is.
Did you copy the file alone, with others, or while there were other
write operations going on in the background? was it a pristine
filesystem that you copied it to? If so, what was the directory
structure created before/by the copy?
Also, the kernel version you are running, and the version of
xfsprogs you have installed (xfs_info -V) will help us determine if
you are tripping any known bugs...