summaryrefslogtreecommitdiffstats
path: root/tests/bugs/geo-replication
diff options
context:
space:
mode:
authorKotresh HR <khiremat@redhat.com>2015-09-15 16:56:01 +0530
committerVenky Shankar <vshankar@redhat.com>2015-11-27 04:15:46 -0800
commit0f4bd0b927f90e70252e613c980bb196395db9ea (patch)
tree799ada2ca508023180a12f2055b8776285fd1c72 /tests/bugs/geo-replication
parent6c451ec62dedc6fc4b739734eb5eb35d4ecfa6ce (diff)
features/gfid-access: Fix entry creation via setxattr for geo-rep
GEO-REP INTEROP WITH SHARD FEATURE Problem: Geo-replication uses setxattr interface of gfid-access xlator to create entries and send explicit setattr after entry creation to set uid and gid. But between entry creation and setattr, the inode would not be linked. Hence operation which accesses inode structure during setattr by any the below xlator fails. Solution: Linking inode would seem the obvious solution but, gfid-access xlator cannot link inodes and maintain it as it would result in same inode pointing to two different paths one being virtual .gfid/<gfid> path and other being actual path. The solution is to set uid and gid in frame->root->uid and frame->root->gid respectively from which posix extracts and sets. BUG: 1284453 Change-Id: I881c3541f7b056f25ee25b382957d71c821113c1 Signed-off-by: Kotresh HR <khiremat@redhat.com> Reviewed-on: http://review.gluster.org/12206 Tested-by: NetBSD Build System <jenkins@build.gluster.org> Reviewed-by: Aravinda VK <avishwan@redhat.com> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Venky Shankar <vshankar@redhat.com> Reviewed-on: http://review.gluster.org/12731 Reviewed-by: Milind Changire <mchangir@redhat.com>
Diffstat (limited to 'tests/bugs/geo-replication')
-rw-r--r--tests/bugs/geo-replication/bug-1111490.t1
1 files changed, 1 insertions, 0 deletions
diff --git a/tests/bugs/geo-replication/bug-1111490.t b/tests/bugs/geo-replication/bug-1111490.t
index c29a79a492e..d29cba1a396 100644
--- a/tests/bugs/geo-replication/bug-1111490.t
+++ b/tests/bugs/geo-replication/bug-1111490.t
@@ -16,6 +16,7 @@ TEST $GFS --volfile-id=/$V0 --volfile-server=$H0 $M0 --aux-gfid-mount
# create file with specific gfid
uuid=`uuidgen`
+TEST chown 10:10 $M0
EXPECT "File creation OK" $PYTHON $(dirname $0)/../../utils/gfid-access.py \
$M0 ROOT file0 $uuid file 10 10 0644