diff options
| author | Krutika Dhananjay <kdhananj@redhat.com> | 2016-05-13 15:18:22 +0530 | 
|---|---|---|
| committer | Niels de Vos <ndevos@redhat.com> | 2016-05-14 07:09:31 -0700 | 
| commit | c9016f1430701518725d8c20f8019bfba1644466 (patch) | |
| tree | 53cf99262a7eea530cd31b1ab743750a8f766136 | |
| parent | df12ab0937ce44d0190d7eb8f272170bf9515390 (diff) | |
Revert "features/shard: Make o-direct writes work with sharding"
        Backport of: http://review.gluster.org/#/c/14328/
This reverts commit c272c71391cea9db817f4e7e38cfc25a7cff8bd5.
This is for two reasons:
1) It introduces high fop latencies
2) Even with the patch, there is no true odirect behavior since the
   workaround in the patch doesn't reduce the caching done in kernel's
   page cache as far as writes on anon fds associated with individual
   shards is concerned.
Change-Id: I4137816a8bff9f0f77d42041a2d17e63dff82b5d
BUG: 1335822
Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
Reviewed-on: http://review.gluster.org/14330
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
Smoke: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com>
| -rw-r--r-- | xlators/features/shard/src/shard.c | 6 | 
1 files changed, 0 insertions, 6 deletions
diff --git a/xlators/features/shard/src/shard.c b/xlators/features/shard/src/shard.c index c5f80b198b2..154411682f3 100644 --- a/xlators/features/shard/src/shard.c +++ b/xlators/features/shard/src/shard.c @@ -3591,7 +3591,6 @@ shard_common_inode_write_do (call_frame_t *frame, xlator_t *this)          shard_local_t  *local             = NULL;          struct iovec   *vec               = NULL;          gf_boolean_t    wind_failed       = _gf_false; -        gf_boolean_t    odirect           = _gf_false;          off_t           orig_offset       = 0;          off_t           shard_offset      = 0;          off_t           vec_offset        = 0; @@ -3622,9 +3621,6 @@ shard_common_inode_write_do (call_frame_t *frame, xlator_t *this)                  return 0;          } -        if ((fd->flags & O_DIRECT) && (local->fop == GF_FOP_WRITE)) -                odirect = _gf_true; -          while (cur_block <= last_block) {                  if (wind_failed) {                          shard_common_inode_write_do_cbk (frame, @@ -3682,8 +3678,6 @@ shard_common_inode_write_do (call_frame_t *frame, xlator_t *this)                                                                   NULL, NULL);                                  goto next;                          } -                        if (odirect) -                                local->flags |= O_SYNC;                  }                  shard_common_inode_write_wind (frame, this, anon_fd,  | 
