I have a system where the automatic import-on-boot simply doesn't work. I dug into it a bit, and at the time the zpool-import-all.sh script runs, the daemons are active, the /var/run/disk files are populated, and everything looks normal... except that the import -a command imports nothing. I stuck a bunch of prints into that script, and the /var/run/disk files exist, the /dev/disk* files are fine, the daemons are running. If I explicitly put "import <poolname>" into the script, it complains that it can't find the pool. The logs contain nothing interesting.
When I run the pool-import-all.sh script from Terminal (as root), it works (finds and imports the pool). Yet the startup script is stuck - if I unload it and re-load it, it still can't find the pool. So it looks like it's something about the launchd environment that's messing things up. This is completely reproducible (I've bounced that system a dozen times by now).
On another, very similar system (same zfs and OS versions), the magic import-on-boot trick works just fine. (That pool has some patina on it.)
Any idea how to debug this?
zfs-1.9.4-0 on Catalina 10.15.6 (also happened on 10.15.5). SIP enabled. The pool is only a week old and was made here (on 10.15.5).
Cheers
-- perry