summaryrefslogtreecommitdiffstats
path: root/xlators/cluster/afr/src/afr.h
diff options
context:
space:
mode:
authorRavishankar N <ravishankar@redhat.com>2015-10-16 06:23:29 +0530
committerPranith Kumar Karampuri <pkarampu@redhat.com>2015-10-20 01:44:36 -0700
commit7945121dda340ec8f25711b2ad3ca70b544de967 (patch)
tree7449e14f04ede728b9929e9bd6b6d53a386d3406 /xlators/cluster/afr/src/afr.h
parentcddc75e242140f8485e2377ce4e6dffe23123744 (diff)
afr: do not wind write if pre-op fails on all children
1. When winding the pre-op, transaction.pre_op[i] is set. If the pre-op fails, transaction.failed_subvols[i] is set. If if fails on all chidren, we can directly proceed to unlock (via afr_changelog_post_op_now) without trying to wind the write, fail and then go to unlock. 2. 'fop_subvols' seems to be an unused variable, hence removing it. Change-Id: I9525628daf48082e979b0093fa0478934495e61f BUG: 1272362 Signed-off-by: Ravishankar N <ravishankar@redhat.com> Reviewed-on: http://review.gluster.org/12368 Tested-by: NetBSD Build System <jenkins@build.gluster.org> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com> Reviewed-by: Anuradha Talur <atalur@redhat.com>
Diffstat (limited to 'xlators/cluster/afr/src/afr.h')
-rw-r--r--xlators/cluster/afr/src/afr.h7
1 files changed, 2 insertions, 5 deletions
diff --git a/xlators/cluster/afr/src/afr.h b/xlators/cluster/afr/src/afr.h
index 85a8ec676cb..bd4ff655546 100644
--- a/xlators/cluster/afr/src/afr.h
+++ b/xlators/cluster/afr/src/afr.h
@@ -657,11 +657,8 @@ typedef struct _afr_local {
dict_t **pre_op_xdata;
unsigned char *pre_op_sources;
- /* @fop_subvols: subvolumes on which FOP will be attempted */
- unsigned char *fop_subvols;
-
- /* @failed_subvols: subvolumes on which FOP failed. Always
- a subset of @fop_subvols */
+ /* @failed_subvols: subvolumes on which a pre-op or a
+ FOP failed. */
unsigned char *failed_subvols;
/* @dirtied: flag which indicates whether we set dirty flag