Dets bug

Alexey Shchepin <>
Mon Oct 18 12:59:39 CEST 2004


I got the following error today:

=CRASH REPORT==== 18-Oct-2004::13:30:28 ===
    pid: <0.15846.65>
    registered_name: []
    error_info: {aborted,{badarg,[roster,"dtim",3]}}
    initial_call: {gen,init_it,
    ancestors: [ejabberd_c2s_sup,ejabberd_sup,<0.35.0>]
    messages: [{<0.146.0>,
    links: [<0.218.0>]
    dictionary: []
    trap_exit: false
    status: running
    heap_size: 2584
    stack_size: 21
    reductions: 14321

Then I copied roster.DAT from working DB, repaired it and tried to do
dets:lookup on this key, but it returned empty result.  After that I ran the
following command 3 times and got 3 different results:

()1> mnesia:dirty_read(roster, {"dtim",{"dottedmag","",[]}}).
()2> mnesia:dirty_read(roster, {"dtim",{"dottedmag","",[]}}).
()3> mnesia:dirty_read(roster, {"dtim",{"dottedmag","",[]}}).

After that all requests to roster table return the last error, and after
restarting this error is unreproduceable.

Erlang version is R10B.

Snip from mnesia:info():

roster         : with 412996   records occupying 95840830 bytes on disc

More information about the erlang-bugs mailing list