Open altimmons opened 2 years ago
This does work for many people, so while I'm sorry it doesn't work for you, and don't immediately know why, it's not, as far as I can tell, the case that it doesn't work in general, or I think we'd have rather a lot more gnashing of teeth.
Could you possibly provide more specifics about how you setup vdev_id.conf
, and/or what specific disk IDs in by-id
you were using that don't work but work if you use /dev/sdX
? Is that log from you using /dev/sdbs
directly, or referencing it by-id
or the like?
The last two times I saw something fail like this were when Ubuntu installed a handler in the udev "hey a disk appeared" rules that triggered a Python program every time a disk event happened, so that various things that expected an infinitely short delay between "I modified /dev/sdx
" and "/dev/sdx1
appeared" broke, and when I was playing games with manually symlinking device names to lie about a disk whose path in by-id
had changed, and did not create the matching -partX
links.
Notably, we do actually wait for udev for DISK_LABEL_WAIT
(30s), and, indeed, that error is only printed when that wait fails; assuming you've configured with libudev, zpool_label_disk_wait()
returns ENODEV iff the device resolves, udev_device_is_ready()
, and one of the stat64()
s on its udev_device_get_devlinks_list_entry()
ies fails (without libudev it's the same but it Just tries to stat the path for 30 seconds). Can you post a strace -f over the failing command?
I will shortly, I have another zpool to set up probably tomorrow. Adding it by /dev/sdX then converting it to by id seems easier than writing out a vdev.conf file anyway ANy
On Sat, Apr 30, 2022 at 11:12 AM наб @.***> wrote:
Notably, we do actually wait for udev for DISK_LABEL_WAIT (30s), and, indeed, that error is only printed when that wait fails; assuming you've configured with libudev, zpool_label_disk_wait() returns ENODEV iff the device resolves, udev_device_is_ready(), and one of the stat64()s on its udev_device_get_devlinks_list_entry()ies fails (without udev it's the same but it Just tries to stat the path for 30 seconds). Can you post a strace -f over the failing command?
— Reply to this email directly, view it on GitHub https://github.com/openzfs/zfs/issues/13391#issuecomment-1114004372, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADU23JIIX3NUPYU7TLMYQLTVHVEVTANCNFSM5UXWKVGQ . You are receiving this because you authored the thread.Message ID: @.***>
This issue has been automatically marked as "stale" because it has not had any activity for a while. It will be closed in 90 days if no further activity occurs. Thank you for your contributions.
System information
MEMORY160 GiB DDR3 Multi-bit ECC Utilization: 11% | Intel® Xeon® CPU E5-2687W 0 @ 3.10GHz x2 ASUSTeK Computer INC. Z9PR-D12 Series, Version Rev 1.xxAmerican Megatrends Inc., Version 6002BIOS dated: Wed 18 Apr 2018 12:00:00 AM EDT
KTN-STL3 x 3 (15 drive shelf) SAS-3 Serial Attached SCSI controller: Broadcom / LSI SAS2116 PCI-Express Fusion-MPT SAS-2 [Meteor] (rev 02) 60 or so drives, NVME, SAS, and SATA3, SATA2
--
Type | Version/Name Distribution Name | Slackware Distribution Version | Version: 6.9.2 Kernel Version | 5.10.28-Unraid Architecture | x64 OpenZFS Version | zfs-2.1.4-1 zfs-kmod-2.1.4-1
Describe the problem you're observing
Duplicate of #3708 Now Closed, but stubbornly persisting.
Disappointing to see this 2016 bug still around. Adding by ID fails, and Ive tried 1000 ways over 4 days, deleting MBRs, and Partitions and whatever else I can think of.
What worked was adding by /dev/sdx (which we are explicitly advised NOT to do) and then using dracwyrm 7 year work around.
Really in 7 years no one has fixed this?
specifically I get this error
missing link: sdbs was partitioned but /dev/disk/by-vdev/ztest8-part1 is missing
I set up aliases in
/etc/zfs/vdev_id.conf
and runningudevadm trigger
then:❯ zpool create -f ztst mirror ztest8 ztest9
But also using the /dev/disk/by-id/ names fails every time, though I think the error differs slightly:
cannot label 'sdbt': failed to detect device partitions on '/dev/sdbt1': 19
Describe how to reproduce the problem
❯ zpool create -f ztst mirror ztest8 ztest9
Include any warning/errors/backtraces from the system logs