Chia-Network / bladebit

A high-performance k32-only, Chia (XCH) plotter supporting in-RAM and disk-based plotting
Apache License 2.0
336 stars 109 forks source link

diskplot crashes when using ZFS backed temp storage path #257

Open tedwardd opened 1 year ago

tedwardd commented 1 year ago

As best I can tell, bladebit has some kind of bug where it's unable to use temp storage formatted in ZFS. My tests run as follows:

./bladebit -v -t 10 -f <farmer_key> -c <pubkey> diskplot --cache 200GB -b 64 -t1 /tank/bladebit-zfs-temp/ /mnt/bladebit-final/

This command uses a ZFS formatted (specifically, raidz2) backed storage for the temp path and fails with the following crash dump.

./bladebit(_ZN11MTJobRunnerI9AnonMTJobLj256EE13RunJobWrapperEPS0_+0x41)[0x55931605bb91]
./bladebit(_ZN10ThreadPool17FixedThreadRunnerEPv+0x52)[0x55931604da52]                                ./bladebit(_ZN6Thread17ThreadStarterUnixEPS_+0x76)[0x55931605e396]
/lib/x86_64-linux-gnu/libc.so.6(+0x94b43)[0x7f5f144d0b43]
/lib/x86_64-linux-gnu/libc.so.6(+0x126a00)[0x7f5f14562a00]

Running the same command, however, with the temp path set to an XFS partition on top of a ZFS volume, while slow, does succeed:

./bladebit -v -t 10 -f <farmer_key> -c <pubkey> diskplot --cache 200GB -b 64 -t1 /mnt/bladebit-xfs-tmp/ /mnt/bladebit-final/

System information:

OS: Ubuntu 22.04 Bladebit Version: 2.0.1-dev