[erlang-questions] application:stop(mnesia) blocking
Colm Dougan
colm.dougan@REDACTED
Wed Jan 28 23:34:47 CET 2009
On Tue, Jan 27, 2009 at 6:03 PM, Colm Dougan <colm.dougan@REDACTED> wrote:
> Hi list,
>
> I've got a strange problem with mnesia:stop that is driving me nuts.
> I'm sure it must be something trivial I've done wrong but I can't seem
> to figure it out. I have a trivial application called "foo" which
> contains a gen_server called foo_main. The gen_server does an
> application:start(mnesia) in its init callback and an
> application:stop(mnesia) in the terminate callback. For some reason
> the latter seems to block until it eventually gets killed by the
> supervisor.
>
> I'd be very grateful if someone could look at my code and point out
> the inevitably dumb thing I'm doing wrong :
>
> http://github.com/gardenia/sandbox/tree/de2b36089f1d7928de3161fe7f9d6b78f0b840bd/mnesia_hang_on_shutdown
I decided to try and rule out mnesia and so I tried using crypto
insteand and got exactly the same behavior. Is there some inherent
problem with doing application:stop(something) in a gen_server
terminate? Where is the correct place to stop applications like
crypto/mnesia when following OTP principles?
Thanks,
Colm
More information about the erlang-questions
mailing list