[erlang-bugs] Mnesia/R15B: TYPE ASSERTION FAILED, erl_term.c line 109 (when stopping mnesia)
Gustav Simonsson
gustav.simonsson@REDACTED
Tue Apr 3 10:25:05 CEST 2012
Hi Winston,
A few ideas which might be of some use:
Try starting your node with the mnesia "debug" or "trace" level debugging
(http://www.erlang.org/doc/apps/mnesia/Mnesia_chap5.html#id76624). That might show
at which part of the shutdown the crash occurs.
When you create a table, you can give the compressed option in the storage_properties
tuple, though I don't know of any low-memory options for mnesia itself.
If you want to look at what the Erlang allocators have allocated you can use
erlang:system_info({allocator, ets_alloc}). and then look at the blocks_size tuple
which is on the format {blocks_size, CurrentSize, MaxSizeSinceLastAllocation, MaxSizeSinceEmulatorStarted}.
The values are in bytes.
// Gustav Simonsson
Sent from my PC
----- Original Message -----
> From: "Winston Smith" <smith.winston.101@REDACTED>
> To: "erlang-bugs" <erlang-bugs@REDACTED>
> Sent: Tuesday, 3 April, 2012 5:04:00 AM
> Subject: [erlang-bugs] Mnesia/R15B: TYPE ASSERTION FAILED, erl_term.c line 109 (when stopping mnesia)
>
> I have run into the following issue with R15B cross compiled to an
> AVR32 (similar to ARM) system (no HiPE).
>
>
> (mynode@REDACTED)6> mnesia:stop().
> TYPE ASSERTION FAILED, file beam/erl_term.c, line 109: tag_val_def:
> 0x8e422b5c
> Aborted
>
>
> Interestingly, if I bring up a standalone erl, I don't get the
> assert,
> it segfaults instead:
>
>
> # erts-5.9/bin/erl
> Eshell V5.9 (abort with ^G)
> 1> mnesia:create_schema([node()]).
> ok
> 2> mnesia:start().
> ok
> 3> mnesia:stop().
> Segmentation fault
>
>
>
> I wasn't able to get much from the core file (I'm using a cross
> compiled version of gdb), I supposed I'd need to build a debug
> version
> of OTP:
>
>
> Program terminated with signal 11, Segmentation fault.
> #0 0x00000000 in ?? ()
> (gdb) bt
> #0 0x00000000 in ?? ()
> #1 0xff7f0000 in ?? ()
> Backtrace stopped: previous frame identical to this frame (corrupt
> stack?)
>
>
> Any thoughts on tracking this down?
>
> It's possible it's a low memory problem, I am already restricting the
> footprint to just stdlib, kernel, inets and mnesia (and my app which
> is small).
> - is there any way to enable any kind of allocation tracing so I
> can pinpoint this?
> - Does mnesia have a low-memory footprint mode that I can try to
> see if that ameliorates the problem?
>
> Thanks!
>
>
> W.
> _______________________________________________
> erlang-bugs mailing list
> erlang-bugs@REDACTED
> http://erlang.org/mailman/listinfo/erlang-bugs
>
More information about the erlang-bugs
mailing list