Bug 1296176

Summary: geo-rep: hard-link rename issue on changelog replay
Product: [Red Hat Storage] Red Hat Gluster Storage Reporter: Milind Changire <mchangir>
Component: geo-replicationAssignee: Milind Changire <mchangir>
Status: CLOSED ERRATA QA Contact: Rahul Hinduja <rhinduja>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rhgs-3.1CC: asrivast, avishwan, chrisw, csaba, nlevinki, rhinduja, rhs-bugs, smohan
Target Milestone: ---Keywords: ZStream
Target Release: RHGS 3.1.3   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-3.7.9-1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1296174 Environment:
Last Closed: 2016-06-23 05:01:26 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:
Bug Depends On: 1296174    
Bug Blocks: 1296175, 1299184    

Description Milind Changire 2016-01-06 14:19:03 UTC
+++ This bug was initially created as a clone of Bug #1296174 +++

Description of problem:
hard-link creation followed by a rename causes stale hard-links if changelogs are replayed

Version-Release number of selected component (if applicable):


How reproducible:
always

Steps to Reproduce:
0. create and start geo-rep on a volume
1. touch f1; and wait for 20 seconds
2. ln f1 link1; mv link1 link2; and wait for 20 seconds
3. stop and start geo-rep
4. you will see link1 getting created on slave volume; ideally it shouldn't exist

Actual results:
link1 exists after logs are replayed

Expected results:
link1 shouldn't exist

Additional info:

Comment 4 Aravinda VK 2016-03-23 06:25:13 UTC
Patch for this bug is available in rhgs-3.1.3 branch as part of rebase from upstream release-3.7.9.

Comment 6 Rahul Hinduja 2016-04-18 15:15:57 UTC
Verified with the build: glusterfs-3.7.9-1

Carried the steps mentioned in the description and didn't see link1 be present at slave after geo-rep worker restarts. 

Master:
=======

[root@dj master]# touch f1; sleep 20 ; ln f1 link1 ; mv link1 link2 ; sleep 20 
[root@dj master]# ls 
f1  link2
[root@dj master]# 


Slave:
======

[root@dj slave]# ls 
f1  link2
[root@dj slave]# 

After geo-rep restarts it starts history crawl and becomes changelog

Comment 9 errata-xmlrpc 2016-06-23 05:01:26 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2016:1240