...
On the system where impalad crashed:
- Find out the shared libraries referenced by impalad
gdb -c core /path/to/impalad(gdb) info shared
- Take this list of .so's and tar them up, being sure to follow symlinks:
tar chvzf so.tar.gz <list of so files>
- Copy the core file, impalad, impalad.debug, and so.tar.gz files in the jira directory on impala-desktop.
On the system where you'll debug:
- Extract the so files to a directory
tar xvf so.tar.gz
- Launch GDB
gdb impalad
- That should find and load symbols from impalad.debug automatically.
- If symbols look messed up after this, you can try combining the
impalad
andimpalad.debug
files into one using theeu-unstrip
tool (usually found in the elfutils package).
- If symbols look messed up after this, you can try combining the
eu-unstrip -o impalad.full impalad impalad.debug
gdb impalad.full
- Tell gdb to look for the copied so's rather than the system so's
(gdb) set sysroot /path/to/extracted/so/tar
- Now load the core file
(gdb) core core
- You should now be able to move around and debug the core file as normal!