-
-
Notifications
You must be signed in to change notification settings - Fork 195
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fatal crash: boost "Invalid cross-device link" #843
Comments
Problem seems to be mitigated by setting |
If you still want to keep transmission archives, the other option is to set There are a handful of boost library/kernel combos that can cause this, but it's ultimately related to a kernel issue that existed between linux 5.3 and 5.18. Boost created a workaround at some point, and it was fixed in the 6.x kernel, but some distros like debian 11 might still run into the "cross-device link" error. Since this only really happens under a certain set of circumstances, it might even be best that |
Just for posterity's sake I'd like to confirm taclane's findings. My main recorder ran the TR official docker image on a Debian 11 box with a backported 6.x kernel and still ran into this error. It was configured to archive transmissions and tempDir wasn't set - I configured it to use a directory on the same volume as the existing audio storage and I can now run newer code without problem. |
For more context, this still happens with the latest edge code on a fresh Debian 12 (bookworm) install with kernel 6.1.0-13. Would love any input on known working boost/kernel versions to address this as using something like shm for temp data keeps latency-sensitive IO off of storage altogether which enables a lot more flexibility in deployment. This workaround also unfortunately triggered a corner case in concert with bad firmware from Samsung and caused two brand new SSDs to burn through their usable life in a couple months necessitating RMA. |
It was a little convoluted to map out, but for those using The current
But
#886 should address this by checking the boost version, and attempting a I just tried this with kernel 6.5 / libboost 1.74, and it prevented a previous error from occurring as the transmission wavs were copied out of the /dev/shm tempfs to disk. |
Pulled the latest docker image (edge tag that includes #886), let tempDir default back to shm, and it ran all night without an issue. Good stuff! |
Cool! |
MERGED!! 3 Cheers to @taclane for squashing this bug 🎉 |
Looks like there still might be a race condition hiding in the workaround somewhere; I get crashes about every 24-36hrs that seem to reference copying a transmission from temp to archive but the file already exists. The docker image still has boost 1.74 so I expect if we can bump that up to something newer than 1.76 then it'll probably defuse the landmine for good. |
Linux <hostname-redacted> 5.10.0-25-amd64 #1 SMP Debian 5.10.191-1 (2023-08-16) x86_64 GNU/Linux
Docker version 24.0.5, build ced0996
edge
docker image from docker hubProgram crashes with the following:
The text was updated successfully, but these errors were encountered: