Thread (7 messages) 7 messages, 3 authors, 2021-05-25

Re: [PATCH 0/3] btrfs: fix fsync failure with SQL Server workload

From: Anand Jain <hidden>
Date: 2021-05-24 14:31:44

On 24/5/21 6:35 pm, fdmanana@kernel.org wrote:
From: Filipe Manana <redacted>

This patchset fixes a fsync failure (-EIO) and transaction abort during
a workload for Microsoft's SQL Server running in a Docker container as
reported at:

https://lore.kernel.org/linux-btrfs/93c4600e-5263-5cba-adf0-6f47526e7561@in.tum.de/ (local)

It also adds an optimization for the workload, by removing lots of fsyncs
that trigger the slow code path and replacing them with ones that use the
fast path, reducing the workload's runtime by about -12% on my test box.

Filipe Manana (3):
   btrfs: fix fsync failure and transaction abort after writes to
     prealloc extents
   btrfs: fix misleading and incomplete comment of btrfs_truncate()
   btrfs: don't set the full sync flag when truncation does not touch
     extents

  fs/btrfs/ctree.h            |  2 +-
  fs/btrfs/file-item.c        | 98 ++++++++++++++++++++++++++++---------
  fs/btrfs/free-space-cache.c |  2 +-
  fs/btrfs/inode.c            | 65 +++++++++++++++++-------
  fs/btrfs/tree-log.c         |  5 +-
  5 files changed, 128 insertions(+), 44 deletions(-)

Patch 3/3 needs conflict fix on latest misc-next in ctree.h.

Tested-by: Anand Jain <redacted>

For the whole series.
Test arch=aarch64 pagesize=64k.

Thanks, Anand
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help