Bug 1285783

Summary: fops-during-migration.t fails if hot and cold tiers are dist-rep
Product: [Red Hat Storage] Red Hat Gluster Storage Reporter: Nag Pavan Chilakam <nchilaka>
Component: replicateAssignee: Bug Updates Notification Mailing List <rhs-bugs>
Status: CLOSED ERRATA QA Contact: RajeshReddy <rmekala>
Severity: high Docs Contact:
Priority: high    
Version: rhgs-3.1CC: asrivast, dlambrig, mzywusko, nbalacha, pkarampu, rhs-bugs, sankarshan, storage-qa-internal
Target Milestone: ---Keywords: Triaged, ZStream
Target Release: RHGS 3.1.2   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: glusterfs-3.7.5-13 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1284823 Environment:
Last Closed: 2016-03-01 05:58:50 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: 1284823, 1293827    
Bug Blocks: 1260783, 1285625    

Description Nag Pavan Chilakam 2015-11-26 12:55:08 UTC
+++ This bug was initially created as a clone of Bug #1284823 +++

Description of problem:

tests/basic/tier/fop-during-migration.t was written using pure distribute hot and cold tiers
If the test is modified to have dist-rep cold and hot tiers, the following operation fails with EINVAL:

echo $TEST_STR > $M0/dir1/FILE1



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


How reproducible:


Steps to Reproduce:
1. Modify tests/basic/tier/fop-during-migration.t to use dist-rep tiers
2. run tests/basic/tier/fop-during-migration.t
3.

Actual results:

Fails with EINVAL

Expected results:

The test should pass.

Additional info:

--- Additional comment from Nithya Balachandran on 2015-11-24 04:58:28 EST ---

Analysis:

echo $TEST_STR > $M0/dir1/FILE1

performs an ftruncate operation.

Investigation reveals that when a file is being migrated by the tier layer, the redirection of the ftruncate FOP to the dst subvol fails as posix_ftruncate fails in sys_ftruncate with op_errno EINVAL. This is because the fd being used has flags=0.

AFR calls afr_fix_open() to open the fd on the dst subvol but ends up using flags = 0 (instead of using the required flags). This causes the ftruncate to fail with EINVAL.

--- Additional comment from Vijay Bellur on 2015-11-25 10:50:27 EST ---

REVIEW: http://review.gluster.org/12750 (cluster/dht : Ftruncate on migrating file fails with EINVAL) posted (#1) for review on master by N Balachandran (nbalacha)

Comment 2 Nithya Balachandran 2015-11-30 05:18:28 UTC
*** Bug 1285625 has been marked as a duplicate of this bug. ***

Comment 4 RajeshReddy 2016-01-06 11:38:29 UTC
Tested with build 3.7.5-14.el7rhgs.x86_64 and while large file is under migration i did fallowing tests along with script mentioned in the bug  and all tests passed so marking this bug as verified

Comment 6 errata-xmlrpc 2016-03-01 05:58:50 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://rhn.redhat.com/errata/RHBA-2016-0193.html