[Gluster-devel] question on glustershd
Emmanuel Dreyfus
manu at netbsd.org
Fri Dec 5 19:55:43 UTC 2014
Emmanuel Dreyfus <manu at netbsd.org> wrote:
> The file that cannot heal is gfid dae15ff0-0b16-4ca0-b27d-734f9d2290f8.
> You can see that the sweep completes, but the file is not reported as healed.
I note that in afr_selfheal_metadata(), if we fail to acquire a lock, we
try to unlock inodes we do not have lock for. Couldn't this create some
trouble if the lock is acquired by someone else in the meantime?
ret = afr_selfheal_inodelk (frame, this, inode, this->name,
LLONG_MAX - 1, 0, data_lock);
{
if (ret < AFR_SH_MIN_PARTICIPANTS) {
ret = -ENOTCONN;
goto unlock;
}
(...)
unlock:
afr_selfheal_uninodelk (frame, this, inode, this->name,
LLONG_MAX -1, 0, data_lock);
--
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu at netbsd.org
More information about the Gluster-devel
mailing list