Your message dated Tue, 17 Aug 2021 17:05:16 +0200
with message-id <[email protected]>
and subject line Closing mlocate bugs
has caused the Debian Bug report #746943,
regarding mlocate is confused by btrfs subvols and doesn't descend into all 
mount points
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
746943: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=746943
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: mlocate
Version: 0.26-1
Severity: normal


Dear maintainer,

mlocate records files in my /, but not in my /home.

I'm using 2 btrfs subvolumes, one for / and one for /home. Such
subvolumes (which reside on the same physical partition from a /dev/*
point of view) are presented to the system similar to bind mounts:

# egrep sdb3 /proc/self/mountinfo
20 1 0:16 /@jessie / rw,relatime - btrfs /dev/sdb3 rw,space_cache
26 20 0:16 /@home /home rw,relatime - btrfs /dev/sdb3 rw,space_cache

Running updatedb with --debug-pruning shows that it apparently prunes
/home because it thinks it's a bind mount path:

# updatedb --debug-pruning
...
Rebuilding bind_mount_paths:
 `/sys' (15 on 20) is `/' of `sysfs' (0:14), type `sysfs'
 `/proc' (16 on 20) is `/' of `proc' (0:3), type `proc'
 `/dev' (17 on 20) is `/' of `udev' (0:5), type `devtmpfs'
 `/dev/pts' (18 on 17) is `/' of `devpts' (0:11), type `devpts'
 `/run' (19 on 20) is `/' of `tmpfs' (0:15), type `tmpfs'
 `/' (20 on 1) is `/@jessie' of `/dev/sdb3' (0:16), type `btrfs'
 `/run/lock' (21 on 19) is `/' of `tmpfs' (0:19), type `tmpfs'
 `/sys/fs/pstore' (22 on 15) is `/' of `pstore' (0:20), type `pstore'
 `/run/shm' (23 on 19) is `/' of `tmpfs' (0:21), type `tmpfs'
 `/sys/fs/fuse/connections' (24 on 15) is `/' of `fusectl' (0:23), type
`fusectl'
 `/boot/efi' (25 on 20) is `/' of `/dev/sda2' (8:2), type `vfat'
 `/home' (26 on 20) is `/@home' of `/dev/sdb3' (0:16), type `btrfs'
 `/proc/sys/fs/binfmt_misc' (27 on 16) is `/' of `binfmt_misc' (0:25),
type `binfmt_misc'
 `/sys/fs/cgroup' (29 on 15) is `/' of `none' (0:26), type `tmpfs'
 `/sys/fs/cgroup/systemd' (30 on 29) is `/' of `systemd' (0:27), type
`cgroup'
Matching bind_mount_paths:
 => adding `/home'
...done
Checking whether filesystem `/boot/efi' is excluded:
...
Skipping `/home': bind mount
...

Treating it as a bind mount path is not wrong per se, but it seems to
subordinate it to my / (which it doesn't prune), which is wrong.

My / and /home have no common mounted root subvol and so should both be
scanned.

Even if I mount my root subvolume on /mnt/tmp, it doesn't work correctly:

# egrep sdb3 /proc/self/mountinfo
20 1 0:16 /@jessie / rw,relatime - btrfs /dev/sdb3 rw,space_cache
26 20 0:16 /@home /home rw,relatime - btrfs /dev/sdb3 rw,space_cache
31 20 0:16 / /mnt/tmp rw,relatime - btrfs /dev/sdb3 rw,space_cache

# updatedb --debug-pruning
...
Rebuilding bind_mount_paths:
 `/sys' (15 on 20) is `/' of `sysfs' (0:14), type `sysfs'
 `/proc' (16 on 20) is `/' of `proc' (0:3), type `proc'
 `/dev' (17 on 20) is `/' of `udev' (0:5), type `devtmpfs'
 `/dev/pts' (18 on 17) is `/' of `devpts' (0:11), type `devpts'
 `/run' (19 on 20) is `/' of `tmpfs' (0:15), type `tmpfs'
 `/' (20 on 1) is `/@jessie' of `/dev/sdb3' (0:16), type `btrfs'
 `/run/lock' (21 on 19) is `/' of `tmpfs' (0:19), type `tmpfs'
 `/sys/fs/pstore' (22 on 15) is `/' of `pstore' (0:20), type `pstore'
 `/run/shm' (23 on 19) is `/' of `tmpfs' (0:21), type `tmpfs'
 `/sys/fs/fuse/connections' (24 on 15) is `/' of `fusectl' (0:23), type
`fusectl'
 `/boot/efi' (25 on 20) is `/' of `/dev/sda2' (8:2), type `vfat'
 `/home' (26 on 20) is `/@home' of `/dev/sdb3' (0:16), type `btrfs'
 `/proc/sys/fs/binfmt_misc' (27 on 16) is `/' of `binfmt_misc' (0:25),
type `binfmt_misc'
 `/sys/fs/cgroup' (29 on 15) is `/' of `none' (0:26), type `tmpfs'
 `/sys/fs/cgroup/systemd' (30 on 29) is `/' of `systemd' (0:27), type
`cgroup'
 `/mnt/tmp' (31 on 20) is `/' of `/dev/sdb3' (0:16), type `btrfs'
Matching bind_mount_paths:
 => adding `/home'
 => adding `/mnt/tmp'
...done
Checking whether filesystem `/boot/efi' is excluded:
...
Skipping `/home': bind mount
Skipping `/media': in prunepaths
Skipping `/mnt/tmp': bind mount
...

It scans /, but skips /home and /mnt/tmp.
I expect it to scan /mnt/tmp (which is subvol /) and skip / and /home
(which are subvols /@jessie and /@home, respectively) instead.

The workaround for now is to disable pruning bind mounts.


Regards
Niels Boehm


-- System Information:
Debian Release: jessie/sid
  APT prefers testing-proposed-updates
  APT policy: (930, 'testing-proposed-updates'), (930,
'stable-updates'), (930, 'testing'), (930, 'stable'), (830,
'proposed-updates'), (830, 'stable'), (90, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.13-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages mlocate depends on:
ii  adduser  3.113+nmu3
ii  libc6    2.18-5

mlocate recommends no packages.

mlocate suggests no packages.

-- no debconf information

--- End Message ---
--- Begin Message ---
Hi,

As of bookworm, mlocate no longer exists in Debian and is replaced by plocate.
There's still an “mlocate” package, but it is only a transitional package
to install plocate (and convert over the old database).

Thus, I'm closing a series of bugs related to mlocate that I believe are
either:

 1. Already fixed in plocate, or
 2. Related to implementation bugs in mlocate that are highly unlikely
    to reappear in plocate (which only shares configuration parsing code,
    no other internals).

If you believe this is in error and the bug is relevant for plocate,
please reopen it with a message as of why that is the case (and reassign it
to plocate). Thanks!

/* Steinar */
-- 
Homepage: http://www.sesse.net/

--- End Message ---

Reply via email to