{"id":12232,"date":"2021-09-10T14:43:34","date_gmt":"2021-09-10T14:43:34","guid":{"rendered":"http:\/\/www.max-sperling.bplaced.net\/?p=12232"},"modified":"2024-02-16T10:18:59","modified_gmt":"2024-02-16T10:18:59","slug":"analyse-reproducable-stability-issues","status":"publish","type":"post","link":"http:\/\/www.max-sperling.bplaced.net\/?p=12232","title":{"rendered":"Analyse reproducable stability issues"},"content":{"rendered":"<p>The following list contains a few ways to find the root cause for a stability issue.<\/p>\n<ol>\n<li>\n    <strong>Rebuild with debug symbols<\/strong><br \/>\n    If you couldn&#8217;t find the root cause in the coredump, cause the binary wasn&#8217;t build in the debug version, you can rebuild it with debug symbols.\n  <\/li>\n<li>\n    <strong>Live debugging with GDB<\/strong><br \/>\n    Instead of analysing the coredump afterwards you can also run\/attach the GDB for a live debugging session.\n  <\/li>\n<li>\n    <strong>Execute with Valgrind<\/strong><br \/>\n    To get more details about memory leaks you can run the executable with Valgrind, as long as this isn&#8217;t leading to timeouts, cause Valgrind is not very performant.\n  <\/li>\n<li>\n    <strong>Build with AddressSanitizer<\/strong><br \/>\n    Can be used like Valgrind to find memory corruptions, but needs to be linked for building and has a way better performance.\n  <\/li>\n<li>\n    <strong>Usage of git-bisect<\/strong><br \/>\n    If you can&#8217;t find the root cause in the source code you can use a Git feature called git-bisect to find the commit, which has led to that issue.\n  <\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>The following list contains a few ways to find the root cause for a stability issue. Rebuild with debug symbols<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false},"categories":[28],"tags":[],"_links":{"self":[{"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=\/wp\/v2\/posts\/12232"}],"collection":[{"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=12232"}],"version-history":[{"count":1,"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=\/wp\/v2\/posts\/12232\/revisions"}],"predecessor-version":[{"id":16724,"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=\/wp\/v2\/posts\/12232\/revisions\/16724"}],"wp:attachment":[{"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=12232"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=12232"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.max-sperling.bplaced.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=12232"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}