-
Notifications
You must be signed in to change notification settings - Fork 38.7k
doc: add unittest core dump instructions #22226
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
Conversation
practicalswift
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Concept ACK
09cea44 to
bbeec50
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Concept ACK
Possible follow-ups:
- move 2nd and 3rd paragraph into more general documentation section; IMHO knowing how to find causes for crashes is useful not only for the unit-tests, but also for all other binaries that potentially segfault
also describe how to analyze core-dumps vialldb(if clang is used rather than gcc)
FWIW gdb analyzes clang-built core dumps just fine for me, but maybe you meant something different. |
theStack
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
describe how to analyze core-dumps via lldb (if clang is used rather than gcc)
FWIW gdb analyzes clang-built core dumps just fine for me, but maybe you meant something different.
Oh, it seems I had an ancient gdb version installed on my system, that didn't support the right DWARF version (leading me to the wrong conclusion that for clang-built core dump analysis only lldb works -- d'oh!).
ACK bbeec50921c2cfcf054ba843bda392d310de5782 📜
|
Okay for merge? |
jonatack
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for adding this. Testing the instructions.
src/test/README.md
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"Boost" is capitalized elsewhere in this file.
| By default, the boost test runner will intercept system errors and not produce a core | |
| By default, the Boost test runner will intercept system errors and not produce a core |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK with two suggestions (one above, one below)
|
review ACK bbeec50921c2cfcf054ba843bda392d310de5782 Personally I just use valgrind which will print the stack when the dump is created |
|
Ready for merge? Or I can add a note about valgrind? |
bbeec50 to
3ad9b71
Compare
|
Incorporated feedback from @MarcoFalke and @jonatack. |
|
cr ACK 3ad9b71f48d2783b534264f53e059db4f239ea55 |
jonatack
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems like a helpful improvement.
re-ACK modulo suggestions
src/test/README.md
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| that as well. By default, the boost test runner will intercept system errors and not | |
| that as well. By default, the Boost test runner will intercept system errors and not |
src/test/README.md
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
linter appeasement
| (on Linux platforms, the file name will likely depend on the contents of | |
| (on Linux platforms, the file name will likely depend on the contents of |
src/test/README.md
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| gdb src/test/test_bitcoin core | |
| gdb ./src/test/test_bitcoin core |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(you write gdb ./src/test/test_bitcoin along with bt at the top of the diff)
theStack
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
almost re-ACK (linter is not happy yet)
Also I agree that the other suggestions by jonatack above (#22226 (comment), #22226 (comment)) should be tackled.
|
LGTM, but yes it's failing the linters. |
Feedback from Jon Atack and Marco Falke.
3ad9b71 to
1231338
Compare
|
Fixed, thanks for the looks. |
theStack
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK 1231338
1231338 doc: test: unittest segfault gdb (James O'Beirne) Pull request description: Quick note on how to get core dumps out of the unittests. ACKs for top commit: theStack: ACK 1231338 Tree-SHA512: d749d9117f96af85f9053884c57df766ac1d29e57b2555d4fc63bd9dc29df47487954cee1c7cd78ee420ae1c9c7da7ddc9797b6c636ce7641eae20622eaa3fee
|
🐙 This pull request conflicts with the target branch and needs rebase. Want to unsubscribe from rebase notifications on this pull request? Just convert this pull request to a "draft". |
|
This has been merged, but wasn't closed by GitHub. |
1231338 doc: test: unittest segfault gdb (James O'Beirne) Pull request description: Quick note on how to get core dumps out of the unittests. ACKs for top commit: theStack: ACK 1231338 Tree-SHA512: d749d9117f96af85f9053884c57df766ac1d29e57b2555d4fc63bd9dc29df47487954cee1c7cd78ee420ae1c9c7da7ddc9797b6c636ce7641eae20622eaa3fee
Quick note on how to get core dumps out of the unittests.