diff options
author | 2021-01-27 10:34:56 +0000 | |
---|---|---|
committer | 2021-02-08 22:59:00 +0100 | |
commit | ab12313a9f56b939529abc80ac26bedefb3d5b62 (patch) | |
tree | 8f29053197f1982120c21836d08aa5f51dd7254d /tools/perf/scripts/python/export-to-postgresql.py | |
parent | btrfs: stop setting nbytes when filling inode item for logging (diff) | |
download | wireguard-linux-ab12313a9f56b939529abc80ac26bedefb3d5b62.tar.xz wireguard-linux-ab12313a9f56b939529abc80ac26bedefb3d5b62.zip |
btrfs: avoid logging new ancestor inodes when logging new inode
When we fsync a new file, created in the current transaction, we check
all its ancestor inodes and always log them if they were created in the
current transaction - even if we have already logged them before, which
is a waste of time.
So avoid logging new ancestor inodes if they were already logged before
and have no xattrs added/updated/removed since they were last logged.
This patch is part of a patchset comprised of the following patches:
btrfs: remove unnecessary directory inode item update when deleting dir entry
btrfs: stop setting nbytes when filling inode item for logging
btrfs: avoid logging new ancestor inodes when logging new inode
btrfs: skip logging directories already logged when logging all parents
btrfs: skip logging inodes already logged when logging new entries
btrfs: remove unnecessary check_parent_dirs_for_sync()
btrfs: make concurrent fsyncs wait less when waiting for a transaction commit
Performance results, after applying all patches, are mentioned in the
change log of the last patch.
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions