Bug 1063715

Summary: Dist-geo-rep : md5sum for 2 regular files didn't match between master and slave after syncing through tar-ssh in hybrid crawl.
Product: [Red Hat Storage] Red Hat Gluster Storage Reporter: Vijaykumar Koppad <vkoppad>
Component: geo-replicationAssignee: Bug Updates Notification Mailing List <rhs-bugs>
Status: CLOSED EOL QA Contact: storage-qa-internal <storage-qa-internal>
Severity: high Docs Contact:
Priority: high    
Version: 2.1CC: chrisw, csaba, david.macdonald, nlevinki, vshankar
Target Milestone: ---Keywords: ZStream
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard: consistency
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-11-25 08:49:36 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Vijaykumar Koppad 2014-02-11 10:15:14 UTC
Description of problem: md5sum for 2 regular files didn't match between master and slave after syncing through tar-ssh in hybrid crawl.


Version-Release number of selected component (if applicable): glusterfs-3.4.0.59rhs-1


How reproducible: didn't try to reproduce. 


Steps to Reproduce:
1. create and start a geo-rep relationship between master(6x2 with 4 nodes) and slave(6x2 with 4 nodes)
2. set the config use-tarssh to true
3. stop geo-rep session
4. create data on master using the command, crefi.py -n 100 --multi -b 10 -d 10 --random --max=2K --min=1K  /mnt/master/
5. start the geo-rep session between master and slave 
6. check if md5sum between master and slave using arequal checksum


Actual results: for 2 files md5sum   didn't match between master and slave


Expected results: md5dum should always match between master and slave, 


Additional info:

# diff  master_md5sum.txt slave_md5sum.txt
261a262,263
> 12918df2425a2720b04d7b27e17acd57  ./level03/level13/level23/level33/level43/level53/level63/52f8f326%%XVSAQ0TNVV
> 12918df2425a2720b04d7b27e17acd57  ./level05/level15/level25/level35/level45/52f8f329%%K6S63HG6S1
1842d1843
< 763a628efe013724170d0173bf766ce0  ./level03/level13/level23/level33/level43/level53/level63/52f8f326%%XVSAQ0TNVV
2938d2938
< bc6fcec39462b239334c22427b316a6b  ./level05/level15/level25/level35/level45/52f8f329%%K6S63HG6S1

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
getting the gfid of the file for 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# getfattr -n glusterfs.gfid.string /mnt/master/level03/level13/level23/level33/level43/level53/level63/52f8f326%%XVSAQ0TNVV
getfattr: Removing leading '/' from absolute path names
# file: mnt/master/level03/level13/level23/level33/level43/level53/level63/52f8f326%%XVSAQ0TNVV
glusterfs.gfid.string="76430f11-6efc-4cc6-b81c-062d009ac0df"

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Entries in the xsync changelog for the above file
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# grep  "76430f11-6efc-4cc6-b81c-062d009ac0df" */xsync/*
0a0bbaf3712995177fec6a454f11a245/xsync/XSYNC-CHANGELOG.1392109389:E 76430f11-6efc-4cc6-b81c-062d009ac0df MKNOD 33188 0 0 a625d37e-5ec3-4c37-80be-e4389983dc51%2F52f8f326%25%25XVSAQ0TNVV
0a0bbaf3712995177fec6a454f11a245/xsync/XSYNC-CHANGELOG.1392109389:D 76430f11-6efc-4cc6-b81c-062d009ac0df

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
entries in the xsync changelog for the other file whose md5sum mismatched in slave 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

# grep "bec1e731-78e4-42c5-abf6-dc7d629ff850" */xsync/*
faeab60022c60628c213aaef28599b1c/xsync/XSYNC-CHANGELOG.1392109389:E bec1e731-78e4-42c5-abf6-dc7d629ff850 MKNOD 33188 0 0 df801d56-cb7f-4c61-bb57-7514d28f54e4%2F52f8f329%25%25K6S63HG6S1
faeab60022c60628c213aaef28599b1c/xsync/XSYNC-CHANGELOG.1392109389:D bec1e731-78e4-42c5-abf6-dc7d629ff850

Comment 2 Vijaykumar Koppad 2014-02-11 12:41:30 UTC
I missed some steps while writing possible steps to reproduce. 

These are the possible steps to reproduce the issue, I tried again, I couldn't hit it.

1. create and start a geo-rep relationship between master(6x2 with 4 nodes) and slave(6x2 with 4 nodes)
2. stop geo-rep and create data.
3. start the geo-rep 
4. before data get synced to slave, set the config use-tarssh to true and stop geo-rep session
6. create data on master using the command, crefi.py -n 100 --multi -b 10 -d 10 --random --max=2K --min=1K  /mnt/master/
7. start the geo-rep session between master and slave 
8. check if md5sum between master and slave using arequal checksum

Comment 4 Aravinda VK 2015-11-25 08:49:36 UTC
Closing this bug since RHGS 2.1 release reached EOL. Required bugs are cloned to RHGS 3.1. Please re-open this issue if found again.

Comment 5 Aravinda VK 2015-11-25 08:51:15 UTC
Closing this bug since RHGS 2.1 release reached EOL. Required bugs are cloned to RHGS 3.1. Please re-open this issue if found again.