GDB on core file and memory profile for OOM


How to run GDB on cores and how to get a memory profile?



When a core file was generated from a process that for some reason was stopped, you can provide a stack trace for NuoDB support team by running this command:

$NUODB_HOME/etc/gdb/nuogdb --force -c <corefile> $NUODB_HOME/bin/nuodb

Please note $NUODB_HOME has to be set, <corefile> should include the full path for the core file.

The '--force' is to avoid this question: "Press [ENTER] to start the debugger, or [q] to quit ..."

This command will end with a prompt of (engine-type+NodeID) for example (te3) or (sm29), type 'bt' and enter, this will output the first thread stack trace that helps NuoDB support team with analysis. Please provide the output screen to the support team.

 In case this core was generated due to OOM, the assertion should be like this:

FAILED: BUGCHECK: Unable to free memory for 300 seconds

You should generate the memory profile by:

(te3) p $profdump($mc)

This command (p $profdump($mc)) will generate a sub-directory with text files, the output will be like:

  • Putting heap profiles in ip-xx-x-xx-xxx.region.something.something-PID-TE/SM-NodeId

Please collect the screen output from the first part and the generated directory with its content and share it with the NuoDB support team.  NOTE:  The heap profile does not contain any customer data or SQL information, it is safe to share with NuoDB.

If you have any questions, please reach out by clicking here


Have more questions? Submit a request