diff options
| -rw-r--r-- | xlators/cluster/stripe/src/stripe.c | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/xlators/cluster/stripe/src/stripe.c b/xlators/cluster/stripe/src/stripe.c index c44bac57525..227af8c9e33 100644 --- a/xlators/cluster/stripe/src/stripe.c +++ b/xlators/cluster/stripe/src/stripe.c @@ -595,8 +595,11 @@ stripe_lookup (call_frame_t *frame, xlator_t *this, loc_t *loc,                          dict_del (xattr_req, GF_CONTENT_KEY);          } -        /* get stripe-size xattr on lookup for pathinfo string */ -        if (xattr_req && IA_ISREG (loc->inode->ia_type)) { +        /* get stripe-size xattr on lookup. This would be required for +         * open/read/write/pathinfo calls. Hence we send down the request +         * even when type == IA_INVAL */ +        if (xattr_req && (IA_ISREG (loc->inode->ia_type) || +            (loc->inode->ia_type == IA_INVAL))) {                  ret = stripe_xattr_request_build (this, xattr_req, 8, 4, 4);                  if (ret)                          gf_log (this->name , GF_LOG_ERROR, "Failed to build"  | 
