[Gluster-devel] Progress on adding support for SEEK_DATA and SEEK_HOLE

Christopher Pereira kripper at imatronix.cl
Mon Jul 6 08:42:17 UTC 2015


On 06-07-2015 5:18, Niels de Vos wrote:
> On Mon, Jul 06, 2015 at 02:46:52AM -0300, J. Christopher Pereira Zimmermann wrote:
>> Hi Niels,
>>
>> Thanks for bouncing.
>>
>> I'm not sure if you are asking how to figure out the hole/data offsets from
>> the underlying fs at once, or about the ec communication.
>>
>> There is probably no standard way to query the allocation information with
>> the hole offsets at once from the fs, so lseeking from hole to hole would
>> be the only way.
>>
>> I quickly checked ext4's SEEK_HOLE implementation [1] and the holes seem to
>> be marked and sought on "ext4_map_blocks" [2].
>> There seems to be no standard system call / data structure for getting all
>> the hole/data offsets at once.
>>
>> Is lseeking hole by hole ok?
> Thanks Christopher!
>
> Xavier also responded with details on how EC tracks holes. He is
> definitely one of the few that should know ;-)
>
> Only volumes with EC/stripe/sharding/bd xlators are not straight
> forward. For the less funky storage methods, lseek() can be used without
> difficulties.
>
> I did put a COPR together for Fedora 22 (x86_64) with a patched kernel
> and glusterfs packages. If you are eager to test, you can install these
> on a disposable environment.
>
>    https://copr.fedoraproject.org/coprs/devos/glusterfs-SEEK_HOLE
>    (NOT TESTED AT ALL! But it compiles...)
>
> Feedback welcome, but dont have too high expectations from those
> packages.

Ok. I will give them a try and provide you feed back.
Is it possible to generate CentOS 7 builds?



More information about the Gluster-devel mailing list