[Bugs] [Bug 1163161] New: With afrv2 + ext4, lookups on directories with large offsets could result in duplicate/missing entries
bugzilla at redhat.com
bugzilla at redhat.com
Wed Nov 12 12:53:18 UTC 2014
https://bugzilla.redhat.com/show_bug.cgi?id=1163161
Bug ID: 1163161
Summary: With afrv2 + ext4, lookups on directories with large
offsets could result in duplicate/missing entries
Product: GlusterFS
Version: mainline
Component: core
Assignee: bugs at gluster.org
Reporter: skoduri at redhat.com
CC: bugs at gluster.org, gluster-bugs at redhat.com
Description of problem:
'ext4' uses large offsets which may include the bits used by GlusterFS to
encode the brick-id. This could end up in few offsets being modified when given
back to the filesystem resulting in missing files and other such discrepancies.
Avati has proposed a solution to overcome this issue based on the assumption
that "both EXT4/XFS are tolerant in terms of the accuracy of the value
presented back in seekdir(). i.e, a seekdir(val) actually seeks to the entry
which has the "closest" true offset. For more info, please check
http://review.gluster.org/#/c/4711/.
But now with afr using the same itransform/deitransform logic, the brick-id
stored in the afr_global_d_off gets zeroed out when re-encoded in dht. This
happens only when the offsets are huge (i.e with ext4 filesystem) as in such
cases, the low n bits are replaced with brick-id which in turn gets replaced
with afr_subvol_id when re-encoded in dht, where
n = log2(N)
N = no. of DHT/AFR subvolumes.
--
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.
More information about the Bugs
mailing list