Can't access users page in webgui

After migrating an ejabberd-server from an old server to a new one I'm unable to access the /users/ page in the webgui.
It only gives me an error saying: The connection was interrupted

The log gives me the following information, but I haven't found a way to resolve this issue:

=CRASH REPORT==== 19-Feb-2013::14:14:12 ===
  crasher:
    initial call: ejabberd_http:init/2
    pid: <0.15078.38>
    registered_name: []
    exception error: bad argument
      in function  length/1
         called as length({error,{{bad_object,read_buckets},
                                  "/home/e/ejabberd/ejabberd/
database/ejabberd@localhost/offline_msg.DAT"}})
      in call from mod_offline:get_queue_length/2
      in call from ejabberd_web_admin:get_offlinemsg_length/3
      in call from ejabberd_web_admin:'-list_given_users/5-fun-0-'/6
      in call from lists:map/2
      in call from ejabberd_web_admin:list_given_users/5
      in call from ejabberd_web_admin:list_users/4
      in call from ejabberd_web_admin:process_admin/2
    ancestors: [ejabberd_http_sup,ejabberd_sup,<0.37.0>]
    messages: []
    links: [<0.314.0>,#Port<0.1905321>]
    dictionary: []
    trap_exit: false
    status: running
    heap_size: 4181
    stack_size: 24
    reductions: 3089
  neighbours:

=SUPERVISOR REPORT==== 19-Feb-2013::14:14:12 ===
     Supervisor: {local,ejabberd_http_sup}
     Context:    child_terminated
     Reason:     badarg
     Offender:   [{pid,<0.15078.38>},
                  {name,undefined},
                  {mfargs,{ejabberd_http,start_link,undefined}},
                  {restart_type,temporary},
                  {shutdown,brutal_kill},
                  {child_type,worker}]

I'm able to register new users to the server with "ejabberdctl register" but I would like to get the webgui to work properly as well.
Any ideas on how to solve this?

--
Tom

Maybe there is data in the

Maybe there is data in the offline_msg table that was not converted correctly to the current format.

If you have a reasonably small database, you can try that:
1. Dump the database to a text file
2. In the text file, delete everything except offline_msg elements
3. If you find any strange data, delete it.
4. Then using webadmin delete the contents of offline_msg table
5. Load the modified text file

If you have a large database and you don't mind removing offline messages, go directly to:
4. Using webadmin delete the contents of offline_msg table

For some reason I was unable

For some reason I was unable to delete the offline_msg from the webadmin.
What I had to do was to empty the offline_msg.DAT and restart ejabberd, but it solved my problems so I'm satisfied.

Thanks for your help.

What is worse is that when

What is worse is that when this happens all (new) offline messages get lost, too without any information about the problem (other than in error log).

Happened to me with ejabberd 13.12 twice already. Used the same solution - deleting offline messages database.

Syndicate content