[erlang-questions] how to get stacktraces of all processes?
Serge Aleynikov
serge@REDACTED
Sun Sep 19 13:34:26 CEST 2010
Anton,
This type of behavior is usually indicative of the fact that your
application has a deadlock. During startup application_controller
starts all applications in your release file synchronously one by one.
If any one application has a deadlock, it locks the application_controller.
The most probable cause of a deadlock during startup of an application
is when it tries to issue gen_server:call/3 call from within
gen_server's init/1 callback. Check for that.
Also make sure you included sasl application. What I normally do is
start your emulator using "-boot start_sasl", and then start the
debugger (debugger:start()), include the application's modules in the
debugger's list of files to watch for, and set up a breakpoint in the
supervisor's init call, so that I can walk through the application
startup process. Then spotting the deadlock becomes quite straight forward.
Serge
On 9/17/2010 1:09 AM, mabrek wrote:
> Hello.
>
> I've got application that hangs on startup.
> I tried several alternatives. Appmon doesn't show unstarted
> applications. Pman shows only start function and current function for
> process, but I want full stacktraces. i() is similar to pman.
> erlang:process_display gives quite obscure output, process_info(..,
> [backtrace]) is the same.
> Is there a way to get full stacktraces of all processes in VM?
>
> Best regards,
> Anton Lebedevich.
>
> ________________________________________________________________
> erlang-questions (at) erlang.org mailing list.
> See http://www.erlang.org/faq.html
> To unsubscribe; mailto:erlang-questions-unsubscribe@REDACTED
>
More information about the erlang-questions
mailing list