[Gluster-devel] Proposal to change locking in data-self-heal
Stephan von Krawczynski
skraw at ithnet.com
Tue May 21 15:30:11 UTC 2013
On Tue, 21 May 2013 10:30:46 -0400
Jeff Darcy <jdarcy at redhat.com> wrote:
> On 05/21/2013 10:10 AM, Stephan von Krawczynski wrote:
> > See it as a corner case of a configurable option like:
> >
> > self-heal-chunksize = X
> > 128k < X < (unsigned)-1 (meaning all bits 1, don't know how many you have
> > here :-)
>
> Unfortunately that doesn't quite work because a whole-file lock covers more
> than just the data bits - i.e. inode information including size. Really it's
> more like there are two locks, but the second (inode) is always taken
> concurrently with the first (data). Maybe what we need to do is actually treat
> it as two locks, similar to the approach Pranith suggested but where truncate
> also interacts with the non-data lock. This approach would also be more
> consistent with the data/metadata distinction we make for a changelog, reducing
> the number of permutations we have to consider.
My suggestion was thought as a user-configurable switch and corresponding
values. I didn't mean it as implementation proposal. Of course the real
implementation should deal with caveats not transparent to configuration or
the user per se.
--
Regards,
Stephan
More information about the Gluster-devel
mailing list