From: Boris Burkov <boris@bur.io>
To: Marc MERLIN <marc_btrfs@merlins.org>
Cc: linux-btrfs <linux-btrfs@vger.kernel.org>
Subject: Re: Deleted snapshots stay in squota, mayube because of bees?
Date: Wed, 22 Apr 2026 12:23:44 -0700 [thread overview]
Message-ID: <20260422192344.GA1392535@zen.localdomain> (raw)
In-Reply-To: <aekA8mS4hppTjbA-@merlins.org>
On Wed, Apr 22, 2026 at 10:10:10AM -0700, Marc MERLIN wrote:
> Hi Boris,
>
> I noticed another issue, when I do a btrfs send to this volume
> which was created cleanly from scratch with squota, if I have
> an incomplete btrfs receive subvolume (copy failed half way),
> when I delete it, it does from
> <under deletion> to <squota space holder>.
> You'll notice I have now two <squota space holder> which just so happen
> to be 297.04MiB each.
>
> I do run bees, so there is a very small chance bees took data from
> debian64 and dupedd it against another subvolume and then can't delete
> all the data, but in this example backup/debian64_kodi_ro.20260327_10:11:40
> was last, so any duped data should have been duped against a previous
> snapshot, and ideally not leave leftover squota data after deletion,
> unless bees somehow is making those references the other way around
> and the new copy becomes the master copy for squota?
>
> But even then, it looks a bit weird that now I have two
> 0/263 297.04MiB 297.04MiB <squota space holder>
> 0/269 287.84MiB 287.84MiB <squota space holder>
> of almost the same space
>
> Is that still working as intended and I don't quite grasp how?
We can't delete a qgroup that still has usage, and subvols own their
extents forever. So assuming no bugs, this means that some other
subvolume is referencing the extents originally owned by these
subvolumes. I agree that this sounds relatively unlikely for a failed
receive target you immediately deleted.
I believe that btrfs check has the ability to reconcile the on-disk
squota owner_refs with the on-disk qgroup values and find any real
discrepancies. So if you run that (without repair please :) ), and it
doesn't complain, I think you do have some legit sharing happening, and
you can try to track that down more directly.
>
> gargamel:/mnt/btrfs_pool2/backup# btrfs qgroup show .
> Qgroupid Referenced Exclusive Path
> -------- ---------- --------- ----
> 0/5 1.61GiB 1.61GiB <toplevel>
> 0/256 16.00KiB 16.00KiB backup
> 0/258 16.00KiB 16.00KiB backup-btrfssend
> 0/260 1.06GiB 1.06GiB .beeshome
> 0/261 63.74GiB 63.74GiB backup/win_kodi_ro.20260328_21:48:59
> 0/262 229.51GiB 229.51GiB backup/ubuntu_kodi_ro.20260328_10:19:47
> 0/263 297.04MiB 297.04MiB <squota space holder> <- this has been there for days
> 0/264 187.38GiB 187.38GiB backup/0Notmachines_kodi_ro.20260325_20:08:49
> 0/266 10.37GiB 10.37GiB backup/1Appliances_kodi_ro.20260325_23:22:32
> 0/268 294.27GiB 294.27GiB backup/debian32_kodi_ro.20260325_23:43:06
> 0/269 295.74GiB 295.74GiB backup/debian64_kodi_ro.20260327_10:11:40
> gargamel:/mnt/btrfs_pool2/backup# btrfs subvolume delete debian64_kodi_ro.20260327_10:11:40/
> Delete subvolume 269 (no-commit): '/mnt/btrfs_pool2/backup/debian64_kodi_ro.20260327_10:11:40'
> gargamel:/mnt/btrfs_pool2/backup# btrfs qgroup show .
> Qgroupid Referenced Exclusive Path
> -------- ---------- --------- ----
> 0/5 1.61GiB 1.61GiB <toplevel>
> 0/256 16.00KiB 16.00KiB backup
> 0/258 16.00KiB 16.00KiB backup-btrfssend
> 0/260 1.06GiB 1.06GiB .beeshome
> 0/261 63.74GiB 63.74GiB backup/win_kodi_ro.20260328_21:48:59
> 0/262 229.51GiB 229.51GiB backup/ubuntu_kodi_ro.20260328_10:19:47
> 0/263 297.04MiB 297.04MiB <squota space holder>
> 0/264 187.38GiB 187.38GiB backup/0Notmachines_kodi_ro.20260325_20:08:49
> 0/266 10.37GiB 10.37GiB backup/1Appliances_kodi_ro.20260325_23:22:32
> 0/268 294.27GiB 294.27GiB backup/debian32_kodi_ro.20260325_23:43:06
> 0/269 295.74GiB 295.74GiB <under deletion>
> gargamel:/mnt/btrfs_pool2/backup# btrfs qgroup show .
> Qgroupid Referenced Exclusive Path
> -------- ---------- --------- ----
> 0/5 1.63GiB 1.63GiB <toplevel>
> 0/256 16.00KiB 16.00KiB backup
> 0/258 16.00KiB 16.00KiB backup-btrfssend
> 0/260 1.06GiB 1.06GiB .beeshome
> 0/261 63.74GiB 63.74GiB backup/win_kodi_ro.20260328_21:48:59
> 0/262 229.51GiB 229.51GiB backup/ubuntu_kodi_ro.20260328_10:19:47
> 0/263 297.04MiB 297.04MiB <squota space holder>
> 0/264 187.38GiB 187.38GiB backup/0Notmachines_kodi_ro.20260325_20:08:49
> 0/266 10.37GiB 10.37GiB backup/1Appliances_kodi_ro.20260325_23:22:32
> 0/268 294.27GiB 294.27GiB backup/debian32_kodi_ro.20260325_23:43:06
> 0/269 287.84MiB 287.84MiB <squota space holder>
> 0/270 321.80GiB 321.80GiB backup/debian64_kodi_ro.20260327_10:11:40
>
> Thanks
> Marc
> --
> "A mouse is a device used to point at the xterm you want to type in" - A.S.R.
>
> Home page: http://marc.merlins.org/ | PGP 7F55D5F27AAF9D08
next prev parent reply other threads:[~2026-04-22 19:24 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-11 3:35 BTRFS discard crash: failed to run delayed ref for logical 15506102321152 num_bytes 16384 type 182 action 2 ref_mod 1: -2 6.11.2) Marc MERLIN
2026-04-11 4:47 ` Qu Wenruo
2026-04-11 12:04 ` Roman Mamedov
2026-04-11 16:22 ` Marc MERLIN
2026-04-12 1:57 ` Marc MERLIN
2026-04-12 1:57 ` Marc MERLIN
2026-04-12 2:28 ` Marc MERLIN
2026-04-12 2:28 ` Marc MERLIN
2026-04-12 17:38 ` Marc MERLIN
2026-04-12 17:38 ` Marc MERLIN
2026-04-12 20:21 ` Marc MERLIN
2026-04-12 20:21 ` Marc MERLIN
2026-04-13 2:14 ` Roman Mamedov
2026-04-13 2:34 ` Marc MERLIN
2026-04-13 2:34 ` Marc MERLIN
2026-04-13 17:52 ` Simple quota unsafe? RIP: 0010:__btrfs_free_extent.isra.0+0xc41/0x1020 [btrfs] / do_free_extent_accounting:2999: errno=-2 No such entry Marc MERLIN
2026-04-13 17:52 ` Marc MERLIN
2026-04-13 18:47 ` Boris Burkov
2026-04-13 19:40 ` Marc MERLIN
2026-04-13 19:40 ` Marc MERLIN
2026-04-15 5:21 ` Marc MERLIN
2026-04-15 17:05 ` Boris Burkov
2026-04-15 17:59 ` Marc MERLIN
2026-04-15 18:44 ` Boris Burkov
2026-04-15 20:22 ` Marc MERLIN
2026-04-15 22:36 ` Boris Burkov
2026-04-15 22:55 ` Marc MERLIN
2026-04-15 23:25 ` Boris Burkov
2026-04-16 0:55 ` Marc MERLIN
2026-04-16 1:22 ` Boris Burkov
2026-04-16 0:45 ` Boris Burkov
2026-04-16 1:08 ` Marc MERLIN
2026-04-16 1:25 ` Boris Burkov
2026-04-16 16:51 ` Simple quota unsafe (FIXED: btrfstune --remove-simple-quota worked) Marc MERLIN
2026-04-16 17:21 ` Simple quota unsafe? RIP: 0010:__btrfs_free_extent.isra.0+0xc41/0x1020 [btrfs] / do_free_extent_accounting:2999: errno=-2 No such entry Marc MERLIN
2026-04-16 21:36 ` Boris Burkov
2026-04-16 21:47 ` Marc MERLIN
2026-04-17 21:51 ` Boris Burkov
2026-04-17 22:37 ` Marc MERLIN
2026-04-17 23:16 ` Boris Burkov
2026-04-18 0:18 ` Marc MERLIN
2026-04-22 2:26 ` Boris Burkov
2026-04-22 6:08 ` Marc MERLIN
2026-04-22 17:10 ` Deleted snapshots stay in squota, mayube because of bees? Marc MERLIN
2026-04-22 19:23 ` Boris Burkov [this message]
2026-04-22 19:30 ` Marc MERLIN
2026-04-22 19:38 ` Boris Burkov
2026-04-22 20:11 ` Marc MERLIN
2026-04-23 19:28 ` Boris Burkov
2026-04-24 2:55 ` Marc MERLIN
2026-04-17 3:43 ` BTRFS discard crash: failed to run delayed ref for logical 15506102321152 num_bytes 16384 type 182 action 2 ref_mod 1: -2 6.11.2) David Disseldorp
2026-04-17 5:19 ` Marc MERLIN
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=20260422192344.GA1392535@zen.localdomain \
--to=boris@bur.io \
--cc=linux-btrfs@vger.kernel.org \
--cc=marc_btrfs@merlins.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.