From 89577d8b0ad7bd1ee2cec2f0e047591b1cd0f7b8 Mon Sep 17 00:00:00 2001 From: Xavi Hernandez Date: Wed, 28 Mar 2018 11:34:49 +0200 Subject: cluster/ec: send list-node-uuids request to all subvolumes The xattr trusted.glusterfs.list-node-uuids was only sent to a single subvolume. This was returning null uuids from the other subvolumes as if they were down. This fix forces that xattr to be requested from all subvolumes. Change-Id: If62eb39a6857258923ba625e153d4ad79018ea2f fixes: bz#1561406 Signed-off-by: Xavi Hernandez --- tests/basic/ec/ec-rebalance.t | 1 + xlators/cluster/ec/src/ec.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/basic/ec/ec-rebalance.t b/tests/basic/ec/ec-rebalance.t index b5c30727a15..6cda3a3e4be 100644 --- a/tests/basic/ec/ec-rebalance.t +++ b/tests/basic/ec/ec-rebalance.t @@ -14,6 +14,7 @@ cleanup TEST glusterd TEST pidof glusterd TEST $CLI volume create $V0 disperse 3 redundancy 1 $H0:$B0/${V0}{0..2} +TEST $CLI volume set $V0 lookup-optimize on TEST $CLI volume start $V0 #Mount the volume diff --git a/xlators/cluster/ec/src/ec.c b/xlators/cluster/ec/src/ec.c index 429cac956a5..ebf15f784e6 100644 --- a/xlators/cluster/ec/src/ec.c +++ b/xlators/cluster/ec/src/ec.c @@ -931,7 +931,7 @@ ec_gf_getxattr (call_frame_t *frame, xlator_t *this, loc_t *loc, if (name && ((fnmatch (GF_XATTR_STIME_PATTERN, name, 0) == 0) || - (XATTR_IS_NODE_UUID(name)))) { + XATTR_IS_NODE_UUID(name) || XATTR_IS_NODE_UUID_LIST(name))) { minimum = EC_MINIMUM_ALL; } -- cgit