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
zdb 2.1.4 segfault on reading corrupted pool #14016
Comments
The assertion was suppressed. The segfault is from a NULL pointer dereference, which is not always avoidable when something is wrong. |
You might want to try running zdb from master. It is a little more resilient:
|
That was an adventure working from a LiveUSB environment. But I found and installed enough packages to complete the build. Unfortunately, zdb from master also fails.
Even if it would build, is this the kind of error in the pool that could be corrected manually? |
I am not sure. You should use gdb to run a zdb built with debug symbols (i.e. A backtrace should tell us roughly what is causing it to crash. You can run |
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
Describe the problem you're observing
2 disk mirror ssd root pool in operation since 2018 suddenly refuses to import with error "blkptr is invalid type 102" at several
different locations on mirror. Problem persists with only single disks of the mirror attached. Pool created and operated with ubuntu 18.04, kernel 4.15.0, zfs 0.7.5+. Debugging undertaken on LiveUSB of 22.04, where described problem happens.
zpool import shows mirror available and online
zdb -e -bLAAA poolname shows "Traversing all blocks" then issues error:
Not sure how pool became corrupted in the first place, however, it seems zdb should never segfault on an error, especially with AAA options.
from dmesg
The text was updated successfully, but these errors were encountered: