diff options
author | Dan Lambright <dlambrig@redhat.com> | 2015-08-06 09:59:35 -0400 |
---|---|---|
committer | Dan Lambright <dlambrig@redhat.com> | 2015-08-12 04:49:08 -0700 |
commit | e65160c5bec78e7385eedf3cf02d9cdcb756db0c (patch) | |
tree | df034ab45674bb3cdb70884b6c8009a3e3358cc2 | |
parent | 06c3cf61249e05ae1212a43d5fc1db57bad5f718 (diff) |
cluster/tier: fix demotion when cold tier is EC
We did not set the gfid in the loc structure in tier demotion. EC
has a sanity check which fails FOPs when the loc gfid mismatches
with the file attribute. When the FOP failed demotion was aborted.
Change-Id: I69022c9ccb135b86e1feea93b01801b6a4100509
BUG: 1251121
Signed-off-by: Dan Lambright <dlambrig@redhat.com>
Reviewed-on: http://review.gluster.org/11855
Tested-by: NetBSD Build System <jenkins@build.gluster.org>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: mohammed rafi kc <rkavunga@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
-rw-r--r-- | xlators/cluster/dht/src/tier.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/xlators/cluster/dht/src/tier.c b/xlators/cluster/dht/src/tier.c index 650414c50d9..66a08d10801 100644 --- a/xlators/cluster/dht/src/tier.c +++ b/xlators/cluster/dht/src/tier.c @@ -350,6 +350,8 @@ tier_migrate_using_query_file (void *_args) goto error; } + gf_uuid_copy (loc.gfid, loc.inode->gfid); + ret = syncop_setxattr (this, &loc, migrate_data, 0, NULL, NULL); if (ret) { |