linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] btrfs: fix fsync failure with SQL Server workload
@ 2021-05-24 10:35 fdmanana
  2021-05-24 10:35 ` [PATCH 1/3] btrfs: fix fsync failure and transaction abort after writes to prealloc extents fdmanana
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: fdmanana @ 2021-05-24 10:35 UTC (permalink / raw)
  To: linux-btrfs

From: Filipe Manana <fdmanana@suse.com>

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/

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(-)

-- 
2.28.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-05-25 15:20 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-05-24 10:35 [PATCH 0/3] btrfs: fix fsync failure with SQL Server workload fdmanana
2021-05-24 10:35 ` [PATCH 1/3] btrfs: fix fsync failure and transaction abort after writes to prealloc extents fdmanana
2021-05-24 10:35 ` [PATCH 2/3] btrfs: fix misleading and incomplete comment of btrfs_truncate() fdmanana
2021-05-24 10:35 ` [PATCH 3/3] btrfs: don't set the full sync flag when truncation does not touch extents fdmanana
2021-05-24 14:31 ` [PATCH 0/3] btrfs: fix fsync failure with SQL Server workload Anand Jain
2021-05-25 15:02 ` David Sterba
2021-05-25 15:20   ` Filipe Manana

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).