summaryrefslogtreecommitdiffstats
path: root/xlators/cluster/afr/src/afr-self-heal-data.c
diff options
context:
space:
mode:
authorPranith Kumar K <pranithk@gluster.com>2012-05-23 18:09:48 +0530
committerAnand Avati <avati@redhat.com>2012-05-23 14:39:20 -0700
commit0c950f914270d1415c05475fc49a0be9dd33ea9b (patch)
treeae5538ec1b59490b2162d959b4b7c9cc840d178e /xlators/cluster/afr/src/afr-self-heal-data.c
parent69680ec053f741961a141c81fa095f76531665e2 (diff)
cluster/afr: Release inodelk on erase changelog failures
Change-Id: I58271e1ac5a116b5bc717d7cad9f03eb7dc8a1a4 BUG: 811551 Signed-off-by: Pranith Kumar K <pranithk@gluster.com> Reviewed-on: http://review.gluster.com/3417 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@redhat.com>
Diffstat (limited to 'xlators/cluster/afr/src/afr-self-heal-data.c')
-rw-r--r--xlators/cluster/afr/src/afr-self-heal-data.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/xlators/cluster/afr/src/afr-self-heal-data.c b/xlators/cluster/afr/src/afr-self-heal-data.c
index a5cbc5f0478..acc96697ff4 100644
--- a/xlators/cluster/afr/src/afr-self-heal-data.c
+++ b/xlators/cluster/afr/src/afr-self-heal-data.c
@@ -373,6 +373,9 @@ afr_sh_data_erase_pending_cbk (call_frame_t *frame, void *cookie,
if (call_count == 0) {
if (sh->op_failed) {
+ if (sh->old_loop_frame)
+ sh_loop_finish (sh->old_loop_frame, this);
+ sh->old_loop_frame = NULL;
afr_sh_data_fail (frame, this);
goto out;
}