diff options
author | Anand Avati <avati@gluster.com> | 2009-11-29 07:37:32 +0000 |
---|---|---|
committer | Anand V. Avati <avati@dev.gluster.com> | 2009-11-29 05:32:58 -0800 |
commit | 77a7250b16c119e20c2d5c66a80b559455953a47 (patch) | |
tree | 990f8956dd9b26891081c0666345a37ff7e20a45 /xlators/cluster/afr/src | |
parent | 51600217be80dc9e1b1ad8bf20b7e5a95d31ec1c (diff) |
afr: handle fdctx->pre_op_done handling
reset pre_op_done[i] to 0 after issuing a postop in flush. this was
missed during the introduction of pre_op_done[] array and was resulting
in a lot of spurious self heals when spurious flushes were received
Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com>
Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
BUG: 170 (Auto-heal fails on files that are open()-ed/mmap()-ed)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=170
Diffstat (limited to 'xlators/cluster/afr/src')
-rw-r--r-- | xlators/cluster/afr/src/afr-transaction.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/xlators/cluster/afr/src/afr-transaction.c b/xlators/cluster/afr/src/afr-transaction.c index e88356bb6..06e8931f2 100644 --- a/xlators/cluster/afr/src/afr-transaction.c +++ b/xlators/cluster/afr/src/afr-transaction.c @@ -255,6 +255,7 @@ __if_fd_pre_op_done (xlator_t *this, fd_t *fd, int child_index) if (fd_ctx->pre_op_done[child_index]) { op_ret = 1; } + fd_ctx->pre_op_done[child_index] = 0; } out: UNLOCK (&fd->lock); |