Skip to content

How to debug core dump of stripped tarantool

Aleksandr Lyapunov edited this page Nov 12, 2013 · 5 revisions

Synopsis: We have got a core dump, but running 'gdb -c <core file>' leads to output like "#0 0x00007ffa11f95885 in ?? ()". That means that we should find debug symbols to get useful backtrace.

  1. Retrieve version of tarantool. If you know it, skip this clause. run 'strings <core file> | fgrep 1.5' or 'strings <core file> | fgrep 1.6' etc, to receive smth like "1.5.1-97-g8e8cd06". It's the version.

  2. Get debug symbols. Check for http://tarantool.org/dist for a distributive with appropriate platform, version and with 'debug' or 'dbg' in it's name (e.g. tarantool-debug-1.5.1-190.x86_64.rpm). I could be not so easy. The target is binary with debug symbols, something like 'tarantool_box.debug'.

  3. Run gdb -c <core file> <binary with debug symbols>. 'bt' command will output correct backtrace.

  4. Get the source of that version of tarantool. It is likely that distributive found in clause 2 contaings the sources. If not, you can run 'git clone https://github.com/tarantool/tarantool', 'cd tarantool' and 'git checkout <tarantool version>' (e.g. 'git checkout 1.5.1-97-g8e8cd06').

  5. After running 'gdb -c <core file> <binary with debug symbols>' use command 'directory '. Done, ready to debug.

Developer Guidelines ↗

Architecture

How To ...?

Recipes

Upgrade instructions

Useful links

Old discussions

Personal pages

Clone this wiki locally