Thread (64 messages) read the whole thread 64 messages, 7 authors, 2016-09-22

Re: BTRFS constantly reports "No space left on device" even with a huge unallocated space

From: Jeff Mahoney <hidden>
Date: 2016-09-01 21:13:43

On 9/1/16 1:04 PM, Austin S. Hemmelgarn wrote:
On 2016-09-01 12:34, Ronan Arraes Jardim Chagas wrote:
quoted
Em Qui, 2016-09-01 às 09:21 -0400, Austin S. Hemmelgarn escreveu:
quoted
Yes, you can just run `btrfs quota disable /` and it should
work.  This
ironically reiterates that one of the bigger problems with BTRFS is
that
distros are enabling unstable and known broken features by default
on
install.  I was pretty much dumbfounded when I first learned that
OpenSUSE is enabling BTRFS qgroups by default since they are known
to
not work reliably and cause all kinds of issues.
Thanks Austin! I executed the command and now I get:

btrfs qgroup show /
ERROR: can't perform the search - No such file or directory
ERROR: can't list qgroups: No such file or directory

as expected. Now I will wait for +- 1 week to see if the problem will
occur and, if not, I will send an e-mail to openSUSE factory mailing
list to start a discussion if it is better to not enable qgroups by
default.
I have a feeling that you'll probably have no issues.

As far as having qgroups enabled by default, I think the reasoning is to
emulate having separate filesystems with their own space limits.  I can
It's not.  We use qgroups because that's the only way we can track how
much space each subvolume is using, regardless of whether anyone wants
to do enforcement.  When it's working properly, snapper can make use of
that information to make informed decisions on how much space will
actually be released when removing old snapshots.
entirely understand this use case, and TBH it's about the only use case
I'd consider quota groups for (per-user subvolumes for home directories
are great, but there are numerous perfectly legitimate reasons to have
very large amounts of data in your home directory for very short periods
of time, so I wouldn't personally use qgroups there).  The problem
arises from the fact that it doesn't _look_ like separate filesystems
(single entry in df, all the mounts point at the same device, etc), and
On SUSE-based kernels, the inodes on different subvolumes report the
anonymous device associated with the subvolume.

That said, I have a WIP that creates (and auto-tears down) vfsmounts for
each subvolume.  It's not all the way to a working df that would use the
qgroup information to report space usage, but it's a start.

-Jeff


-- 
Jeff Mahoney
SUSE Labs

Attachments

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