mnesia dumps core when merging schema mods

Ulf Wiger <>
Sat Dec 11 12:46:45 CET 2010

- start mnesia on N1 with a disk schema
- create a table, t, with {disc_copies, [N1]}
- start N2 with {extra_db_nodes,[N1]}
- run mnesia:change_table_copy_type(schema,N2,disc_copies)
- on N2, mnesia:add_table_copy(t, N2, disc_copies)
- start N3 the same way
- kill N1
- change N3's schema to disc_copies
- on N3, mnesia:add_table_copy(t, N3, ram_copies).
- restart N1, start mnesia on N1  (it now knows of N3's ram_copy of t)
- kill N1 again
- on N3, mnesia:change_table_copy_type(t, N3, disc_copies).
- restart N1

Mnesia now dumps core on N1, since it finds both a ram_copy and 
a disc_copy entry of table t for N3.

This was from the start a completely made up example, so I don't know
of any crisis involving any live system due to this. Still, mnesia should 
handle the situation better.


Ulf Wiger, CTO, Erlang Solutions, Ltd.

More information about the erlang-bugs mailing list