summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPranith Kumar K <pkarampu@redhat.com>2013-01-29 17:58:09 +0530
committerAnand Avati <avati@redhat.com>2013-01-29 12:33:05 -0800
commit360868e9b010f770bd727570e0f0404069c3375a (patch)
tree5ce67b66d9dc6738c642b9e038f3afe6eee9b73d
parent36a9ac82f05aeb01b0656bb82631a87db6a11803 (diff)
cluster/afr: wakeup delayed post op on fsync
Change-Id: I5d84ef72615f9d71b4af210976e2449de6e02326 BUG: 888174 Signed-off-by: Pranith Kumar K <pkarampu@redhat.com> Reviewed-on: http://review.gluster.org/4446 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@redhat.com>
-rw-r--r--xlators/cluster/afr/src/afr-common.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/xlators/cluster/afr/src/afr-common.c b/xlators/cluster/afr/src/afr-common.c
index 5c4a649b9..424a69971 100644
--- a/xlators/cluster/afr/src/afr-common.c
+++ b/xlators/cluster/afr/src/afr-common.c
@@ -2557,11 +2557,7 @@ afr_flush (call_frame_t *frame, xlator_t *this, fd_t *fd, dict_t *xdata)
local->fd = fd_ref(fd);
call_count = local->call_count;
- /*
- * Ideally we should synchronize flush against completion of writing
- * the delayed changelog, but for now we just push it out first...
- */
- afr_delayed_changelog_wake_up(this, fd);
+ afr_delayed_changelog_wake_up (this, fd);
for (i = 0; i < priv->child_count; i++) {
if (local->child_up[i]) {
@@ -2739,6 +2735,8 @@ afr_fsync (call_frame_t *frame, xlator_t *this, fd_t *fd,
local->fd = fd_ref (fd);
+ afr_delayed_changelog_wake_up (this, fd);
+
for (i = 0; i < priv->child_count; i++) {
if (local->child_up[i]) {
STACK_WIND_COOKIE (frame, afr_fsync_cbk,