Mnesia crash

Alexey Shchepin <>
Mon Dec 15 14:05:27 CET 2003


Hi!

Few days ago there was power failure on jabber.ru with working
ejabberd.  After system was started, ejabberd loaded without problems.
But yesterday, after restarting using init:restart(), the following
errors appears in log:

=ERROR REPORT==== 2003-12-15 00:12:21 ===
** dets: Bug was found when accessing table roster,
** dets: operation was {lookup_keys,[{"xxxxx",
                                      {"xxxxxxxxx","icq.jabber.ru",[]}}]} and reply was {1,'EXIT'}.

=ERROR REPORT==== 2003-12-15 00:12:22 ===
Mnesia(''): ** ERROR ** (core dumped to file: "/usr/home/ermine/server/ejabberd/src/")
 ** FATAL ** mnesia_locker crashed: {badarg,
                                        [{erlang,
                                             '++',
                                             [{badarith,
                                                  [{dets_v9,slot_position,1},
                                                   {dets_v9,eval_work_list,2},
                                                   {dets,update_cache,2},
                                                   {dets,stream_end,5},
                                                   {dets,do_apply_op,4},
                                                   {proc_lib,init_p,5}]},
                                              [{roster,
                                                   {"xxxxx",
                                                    {"xxxxxxxx",
                                                     "icq.jabber.ru",
                                                     []}},
                                                   "xxxxx",
                                                   ...
                                         {lists,append,2},
                                         {mnesia_locker,
                                             set_read_lock_on_all_keys,
                                             6},
                                         {mnesia_locker,loop,1},
                                         {mnesia_sp,init_proc,4},
                                         {proc_lib,init_p,5}]} state: [<0.85.0>]

Is this is because of previous crash, or this is bug in dets or mnesia?

Information that probably needed:

Erlang version: R9C
OS: FreeBSD 4.9

Result of mnesia:schema(roster):
-- Properties for roster table --- 
access_mode          -> read_write
active_replicas      -> ['']
arity                -> 10
attributes           -> [uj,user,jid,name,subscription,ask,groups,xattrs,xs]
checkpoints          -> []
commit_work          -> [{index,set,[{3,{dets,{roster,index,3}}}]}]
cookie               -> {{1067,256640,401479},''}
disc_copies          -> []
disc_only_copies     -> ['']
frag_properties      -> []
index                -> [3]
load_by_force        -> false
load_node            -> ''
load_order           -> 0
load_reason          -> local_only
local_content        -> false
master_nodes         -> []
memory               -> 30050014
ram_copies           -> []
record_name          -> roster
record_validation    -> {roster,10,set}
setorbag             -> set
size                 -> 131139
snmp                 -> []
storage_type         -> disc_only_copies
subscribers          -> []
user_properties      -> []
version              -> {{4,0},{'',{1067,260145,62112}}}
where_to_commit      -> [{'',disc_only_copies}]
where_to_read        -> ''
where_to_write       -> ['']
wild_pattern         -> {roster,'_','_','_','_','_','_','_','_','_'}
{index,3}            -> {roster,index,3}

MnesiaCore contains some private info, so I not include it here (I can
send it to one of Erlang developers).



More information about the erlang-bugs mailing list