From: Lionel Bouton <lionel-subscription@bouton.name>
To: Marc MERLIN <marc@merlins.org>
Cc: Duncan <1i5t5.duncan@cox.net>,
Nazar Mokrynskyi <nazar@mokrynskyi.com>,
Alexander Fougner <fougner89@gmail.com>,
linux-btrfs@vger.kernel.org
Subject: Re: Major HDD performance degradation on btrfs receive
Date: Tue, 23 Feb 2016 21:35:30 +0100 [thread overview]
Message-ID: <56CCC292.1070306@bouton.name> (raw)
In-Reply-To: <20160223183021.GM22487@merlins.org>
Le 23/02/2016 19:30, Marc MERLIN a écrit :
> On Tue, Feb 23, 2016 at 07:01:52PM +0100, Lionel Bouton wrote:
>> Why don't you use autodefrag ? If you have writable snapshots and do
>> write to them heavily it would not be a good idea (depending on how
>> BTRFS handles this in most cases you would probably either break the
>> reflinks or fragment a snapshot to defragment another) but if you only
>> have read-only snapshots it may work for you (it does for me).
>
> It's not a stupid question, I had issues with autodefrag in the past,
> and turned it off, but it's been a good 2 years, so maybe it works well
> enough now.
>
>> The only BTRFS filesystems where I disabled autodefrag where Ceph OSDs
>> with heavy in-place updates. Another option would have been to mark
>> files NoCoW but I didn't want to abandon BTRFS checksumming.
> Right. I don't have to worry about COW for virtualbox images there, and
> the snapshots are read only (well, my script makes read-write snapshots
> too, but I almost never use them. Hopefully their presence isn't a
> problem, right?)
I believe autodefrag is only triggering defragmentation on access (write
access only according to the wiki) and uses a queue of limited length
for defragmentation tasks to perform. So the snapshots by themselves
won't cause problems. Even if you access files the defragmentation
should be focused mainly on the versions of the files you access the
most. The real problems probably happen when you access the same file
from several snapshots with lots of internal modifications between the
versions in these snapshots: either autodefrag will break the reflinks
between them or it will attempt to optimize the 2 file versions at
roughly the same time which won't give any benefit but will waste I/O.
Lionel
next prev parent reply other threads:[~2016-02-23 20:35 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-22 19:58 Major HDD performance degradation on btrfs receive Nazar Mokrynskyi
2016-02-22 23:30 ` Duncan
2016-02-23 17:26 ` Marc MERLIN
2016-02-23 17:34 ` Marc MERLIN
2016-02-23 18:01 ` Lionel Bouton
2016-02-23 18:30 ` Marc MERLIN
2016-02-23 20:35 ` Lionel Bouton [this message]
2016-02-24 10:01 ` Patrik Lundquist
2016-02-23 16:55 ` Nazar Mokrynskyi
2016-02-23 17:05 ` Alexander Fougner
2016-02-23 17:18 ` Nazar Mokrynskyi
2016-02-23 17:29 ` Alexander Fougner
2016-02-23 17:34 ` Nazar Mokrynskyi
2016-02-23 18:09 ` Austin S. Hemmelgarn
2016-02-23 17:44 ` Nazar Mokrynskyi
2016-02-24 22:32 ` Henk Slager
2016-02-24 22:46 ` Nazar Mokrynskyi
[not found] ` <ce805cd7-422c-ab6a-fbf8-18a304aa640d@mokrynskyi.com>
2016-02-25 1:04 ` Henk Slager
2016-03-15 0:47 ` Nazar Mokrynskyi
2016-03-15 23:11 ` Henk Slager
2016-03-16 3:37 ` Nazar Mokrynskyi
2016-03-16 4:18 ` Chris Murphy
2016-03-16 4:23 ` Nazar Mokrynskyi
2016-03-16 6:51 ` Chris Murphy
2016-03-16 11:53 ` Austin S. Hemmelgarn
2016-03-16 20:58 ` Chris Murphy
2016-03-16 4:22 ` Chris Murphy
2016-03-17 7:00 ` Duncan
2016-03-18 14:22 ` Nazar Mokrynskyi
2016-05-27 1:57 ` Nazar Mokrynskyi
-- strict thread matches above, loose matches on Subject: below --
2016-02-22 19:39 Nazar Mokrynskyi
2016-02-16 4:44 Nazar Mokrynskyi
2016-02-16 9:10 ` Duncan
2016-02-18 18:19 ` Henk Slager
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56CCC292.1070306@bouton.name \
--to=lionel-subscription@bouton.name \
--cc=1i5t5.duncan@cox.net \
--cc=fougner89@gmail.com \
--cc=linux-btrfs@vger.kernel.org \
--cc=marc@merlins.org \
--cc=nazar@mokrynskyi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).