erlang - bad_object_header mnesia

Ejabberd is returning these errors every few minutes, what I've noticed is that eventually I'd lose the roster information. Not sure of other issues yet.

A few details about the installation:

OS: Arch Linux
ejabberd: 2.1.13-1 x86_64
Erlang: R16B (erts-5.10.1) [source] [64-bit] [smp:2:2] [async-threads:10] [hipe] [kernel-poll:false]

=ERROR REPORT==== 2013-07-10 18:55:06 ===
E(<0.365.0>:ejabberd_hooks:335) : {function_clause,
                                   [{lists,map,
                                     [#Fun<mod_vcard.1.53102939>,
                                      {error,
                                       {bad_object_header,
                                        "/var/lib/ejabberd/vcard.DAT"}}],
                                     [{file,"lists.erl"},{line,1223}]},
                                    {mod_vcard,process_sm_iq,3,
                                     [{file,"mod_vcard.erl"},{line,193}]},
                                    {mod_shared_roster,get_rosteritem_name,3,
                                     [{file,"mod_shared_roster.erl"},
                                      {line,198}]},
                                    {mod_shared_roster,
                                     '-get_user_roster/2-lc$^0/1-0-',5,
                                     [{file,"mod_shared_roster.erl"},
                                      {line,179}]},
                                    {mod_shared_roster,get_user_roster,2,
                                     [{file,"mod_shared_roster.erl"},
                                      {line,176}]},
                                    {ejabberd_hooks,run_fold1,4,
                                     [{file,"ejabberd_hooks.erl"},{line,331}]},
                                    {mod_roster,process_iq_get,3,
                                   [{file,"mod_roster.erl"},{line,287}]},
                                    {gen_iq_handler,process_iq,6,
                                     [{file,"gen_iq_handler.erl"},
                                      {line,116}]}]}
running hook: {roster_get,[{"user","localhost"}]}

and

=ERROR REPORT==== 2013-07-11 15:47:34 ===
E(<0.384.0>:ejabberd_hooks:335) : {{case_clause,
                                    {error,
                                     {bad_object_header,
                                      "/var/lib/ejabberd/offline_msg.DAT"}}},
                                   [{lists,keysort,2,
                                     [{file,"lists.erl"},{line,738}]},
                                    {mod_offline,pop_offline_messages,4,
                                     [{file,"mod_offline.erl"},{line,433}]},
                                    {ejabberd_hooks,run_fold1,4,
                                     [{file,"ejabberd_hooks.erl"},{line,331}]},
                                    {ejabberd_c2s,resend_offline_messages,1,
                                     [{file,"ejabberd_c2s.erl"},{line,2107}]},
                                    {ejabberd_c2s,presence_update,3,
                                     [{file,"ejabberd_c2s.erl"},{line,1801}]},
                                    {ejabberd_c2s,session_established2,2,
                                     [{file,"ejabberd_c2s.erl"},{line,1097}]},
                                    {p1_fsm,handle_msg,10,
                                     [{file,"p1_fsm.erl"},{line,544}]},
                                    {proc_lib,init_p_do_apply,3,
                                     [{file,"proc_lib.erl"},{line,239}]}]}
running hook: {resend_offline_messages_hook,["user1","localhost"]}

I have deleted both files just in cause they were corrupted somehow however the same issue occurs once they are recreated.

Any ideas on how to fix this?

Thanks!

Fede

Same problem in

Same problem in fedora-19:
ejabberd-2.1.13-1.fc19.x86_64
erlang-R16B-0.3.fc19.x86_64

Erlang R16B (erts-5.10.1) [source] [64-bit] [smp:2:2] [async-threads:10] [kernel-poll:false]

***
But it works fine in fedora-18:
ejabberd-2.1.13-1.fc18.i686
erlang-R15B-03.3.fc18.i686

I have the problem of

I have the problem of ejabberdctl complaining about corrupt vcard.dat on a regular basis on Ubuntu 13.10. Is there anyone with enough Erlang know-how to track the problem down or give us instructions on how we can try and determine the problem?

Syndicate content