Bug 764590 (GLUSTER-2858)

Summary: volume-mark corruption swallowed
Product: [Community] GlusterFS Reporter: Csaba Henk <csaba>
Component: geo-replicationAssignee: Csaba Henk <csaba>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: mainlineCC: gluster-bugs, lakshmipathi
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: RTP Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Csaba Henk 2011-04-28 15:11:46 UTC
- enable indexing (xtime marking) on a volume
- mount the vol with --client-pid=-1
- delete the timestamp file(s) (/etc/glusterd/vols/<volname>/marker.tstamp)
- see what you get when you query the xattr "trusted.glusterfs.volume-mark" on the mountpoint -- expected result is a blob of 27 octets the so that the octet at index 18 is 1; actually you get a blob of 27 octets which has the octet at index 18 being 0. (Alternative testing with gsyncd: use the volume as geo-rep master; expected behavior is to see gsyncd crash with message "master is corrupt".)

After fix provided, it's suggested to be verified on both single-brick setups (to test just marker's composition of the xattr in question) and on multi-node clustered setups where you just delete the timestamp file on some nodes (to test xattr aggregation).

Comment 1 Anand Avati 2011-05-09 17:26:58 UTC
PATCH: http://patches.gluster.com/patch/7093 in master (marker: fill out the volume-mark properly in case of marking corruption)

Comment 2 Anand Avati 2011-05-31 14:01:40 UTC
PATCH: http://patches.gluster.com/patch/7342 in release-3.2 (marker: fill out the volume-mark properly in case of marking corruption)

Comment 3 Lakshmipathi G 2011-06-01 07:19:05 UTC
verified with 3.2.0 and above patch