From: Duncan <1i5t5.duncan@cox.net>
To: linux-btrfs@vger.kernel.org
Subject: Re: btrfs balance enospc
Date: Tue, 16 Sep 2014 00:08:31 +0000 (UTC) [thread overview]
Message-ID: <pan$21d6d$91a64041$49bf8e34$6b7c2e69@cox.net> (raw)
In-Reply-To: 657EBB8A-8957-4E07-829E-171A1FF702E8@colorremedies.com
Chris Murphy posted on Mon, 15 Sep 2014 14:54:57 -0600 as excerpted:
>> I still get enospc after a balance with a filter, and then a regular
>> balance:
>>
>> cartman {~} root# btrfs balance start /
>> ERROR: error during balancing '/' - No space left on device
>
> Maybe try mount option enospc_debug and retry, see if you get more
> information in dmesg.
>
> I'm not sure if a balance in this case wants to create a new data and
> metadata chunk (on each device), or if it can start without creating any
> chunks. If it wants to create new chunks, it's 1GiB for data, and 256MiB
> for metadata. That's 1.256GiB but you only have 1.25GiB unallocated on
> each device: size 9.31GiB minus used 8.06GiB.
Another possibility that has hit a few people:
Did you (MM/OP not CM) convert that filesystem from ext* to btrfs? If
so, read on. If not, this doesn't apply so you may skip it.
Assuming such a conversion, did you delete the subvolume containing the
original ext* yet, or not? If not, that may be the problem, because that
subvolume must be left intact in ordered to allow rollback to ext* if
desired. If you know you won't be rolling back, delete the ext* reserved
subvolume as described on the wiki.
Meanwhile, after deleting that subvolume, be sure to complete the defrag
and balance as suggested on the wiki, because failing to do so can lead
to other problems later. Basically, the biggest extent size supported by
btrfs is 1 GiB, the size of a btrfs data chunk, while ext* supports
larger (unlimited size?) extents. Failing to complete the defrag in
particular as suggested can mean large files with extents > 1 GiB in
size, which gives btrfs balance indigestion since it expects to see only
1 GiB or smaller extents. Several folks who converted from ext3/4 have
reported failed balances due to these too large extents, and fixing the
problem later can require manually moving one-by-one all files large
enough to be candidates for the problem (thus files > 1 GiB) out of btrfs
and back in, thus resulting in properly chunk-split extents when the file
is moved back to btrfs. Everyone who has reported this problem so far,
has also reported that the move out and back in process solved the
problem for them, but if there's lots of such files it can be a pain, and
doing the defrag on the formerly ext* files before starting to use the
now btrfs for other things, ESPECIALLY before trying to snapshot affected
subvolumes since that locks the problem in place until those snapshots
are deleted, is definitely preferred. =:^)
--
Duncan - List replies preferred. No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master." Richard Stallman
next prev parent reply other threads:[~2014-09-16 0:08 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-15 15:34 btrfs balance enospc Mark Murawski
2014-09-15 17:07 ` Leonidas Spyropoulos
2014-09-15 17:37 ` Mark Murawski
2014-09-15 20:54 ` Chris Murphy
2014-09-15 22:40 ` Mark Murawski
2014-09-16 0:08 ` Duncan [this message]
2014-09-16 1:19 ` Chris Murphy
2014-09-16 2:23 ` Mark Murawski
2014-09-16 16:37 ` Duncan
[not found] <54186A4B.60902@intellasoft.net>
2014-09-16 16:51 ` Mark Murawski
2014-09-16 17:26 ` Chris Murphy
2014-09-16 19:54 ` Mark Murawski
2014-09-16 21:22 ` Chris Murphy
2014-09-16 20:10 ` Kyle Gates
2014-09-17 17:51 ` Mark Murawski
2014-09-17 19:10 ` Chris Murphy
2014-09-17 21:11 ` Duncan
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='pan$21d6d$91a64041$49bf8e34$6b7c2e69@cox.net' \
--to=1i5t5.duncan@cox.net \
--cc=linux-btrfs@vger.kernel.org \
/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).