diff options
author | Brian Foster <bfoster@redhat.com> | 2012-12-03 15:50:39 -0500 |
---|---|---|
committer | Anand Avati <avati@redhat.com> | 2012-12-04 14:42:58 -0800 |
commit | 6b969c84b847927433bbe8466090d1c7970ea37c (patch) | |
tree | da9a51c09d39f26f32e4fc3e47fbeb10a99b9cfc /xlators/cluster/afr/src/afr-transaction.h | |
parent | 924702de358160b2536138c073d293b76512838a (diff) |
afr: make flush non-transactional
Flush is historically a transaction to ensure all previous writes
were complete. This is no longer required as write-behind has
learned to make flush a barrier operation (re: conversation w/
Avati).
Flush taking a full file lock causes VMs running on afr volumes
to stall when a migration occurs and self-heal is in progress.
Make afr_flush() a non-transactional operation.
BUG: 874045
Change-Id: If2db83823e280c86b1b29b41361eed7081601632
Signed-off-by: Brian Foster <bfoster@redhat.com>
Reviewed-on: http://review.gluster.org/4261
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
Diffstat (limited to 'xlators/cluster/afr/src/afr-transaction.h')
-rw-r--r-- | xlators/cluster/afr/src/afr-transaction.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/xlators/cluster/afr/src/afr-transaction.h b/xlators/cluster/afr/src/afr-transaction.h index 102599633e3..e95bc5b1491 100644 --- a/xlators/cluster/afr/src/afr-transaction.h +++ b/xlators/cluster/afr/src/afr-transaction.h @@ -33,4 +33,8 @@ afr_set_pending_dict (afr_private_t *priv, dict_t *xattr, int32_t **pending, int child, afr_xattrop_type_t op); void afr_set_delayed_post_op (call_frame_t *frame, xlator_t *this); + +void +afr_delayed_changelog_wake_up (xlator_t *this, fd_t *fd); + #endif /* __TRANSACTION_H__ */ |