diff options
author | Raghavendra Bhat <raghavendrabhat@gluster.com> | 2011-11-04 19:49:55 +0530 |
---|---|---|
committer | Vijay Bellur <vijay@gluster.com> | 2011-11-04 09:55:31 -0700 |
commit | 8668da9744df57f7b8929e4b54842a99899a63c5 (patch) | |
tree | f82e4aaef1e1b49ea32ec87fadbed34833d4d309 | |
parent | f356095377db83864c56f0bf86a8bf30563ed776 (diff) |
cluster/afr: unwind instead of returning directly if no open is required on any childv3.2.5qa5
Currently if no open is required on any child of replicate, we are
returning directly instead of unwinding and returning. This is leading
to the frame loss, which results in application hang. Unwind and then
return if no open is to be done on any child.
Change-Id: Ib59535b63751d9e98a4ceca39b4b73b14d850680
BUG: 3443
Reviewed-on: http://review.gluster.com/674
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
-rw-r--r-- | xlators/cluster/afr/src/afr-open.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/xlators/cluster/afr/src/afr-open.c b/xlators/cluster/afr/src/afr-open.c index 41db67d7f81..241d4539cc2 100644 --- a/xlators/cluster/afr/src/afr-open.c +++ b/xlators/cluster/afr/src/afr-open.c @@ -616,6 +616,7 @@ afr_openfd_flush (call_frame_t *frame, xlator_t *this, fd_t *fd) UNLOCK (&local->fd->lock); if (call_count == 0) { + no_open = 1; goto out; } |