请教ejabberd经常崩溃,Mnesia core dumped

141 views
Skip to first unread message

odin

unread,
Oct 4, 2009, 11:47:42 AM10/4/09
to Erlang China
以下是ejabberd.log的相关内容,请各位大侠帮帮忙。

=ERROR REPORT==== 2009-10-04 21:45:13 === Mnesia(ejabberd@localhost):
** ERROR ** (core dumped to file: "/root/MnesiaCore.ejabberd@l
ocalhost_1254_663913_274750")
** FATAL ** Cannot open log file "/usr/local/ejabberd/var/lib/
ejabberd/last_activity.DCL": {file_error,

"/usr/local/ejabberd/var/lib/ejabberd/l
ast_activity.DCL",

emfile}

=INFO REPORT==== 2009-10-04 21:45:13 === application: mnesia
exited: shutdown
type: temporary


=ERROR REPORT==== 2009-10-04 21:45:13 === ** Generic server
ejabberd_sm terminating
** Last message in was {mnesia_system_event,
{mnesia_down,ejabberd@localhost}}
** When Server state == {state}
** Reason for termination ==
** {{function_clause,


另外还偶尔会有下面这种错误日志,但是这种日志不会导致ejabberd崩溃,好像没有什么影响,不知道跟前面的那种直接死掉的,会不会有相关性。

=ERROR REPORT==== 2009-10-04 21:47:32 === Mnesia(ejabberd@localhost):
** WARNING ** Mnesia is overloaded: {dump_log,

write_threshold}

odin

unread,
Oct 4, 2009, 12:01:13 PM10/4/09
to Erlang China
查不到具体的原因,感觉,差不多就是当有1000人左右在线的时候,就会出现一次这个Mnesia core dump错误,然后ejabberd就挂
掉了。
需要手工去干掉ejabberd进程,然后再启动。
erlang系统不会自动重启ejabberd程序。理论上应该会自动重启的吧。

操作系统CentOS 4.6 64bit
ejabberd 版本 2.1.0_rc1
erlang版本
# erl
Erlang R13B02 (erts-5.7.3) [source] [64-bit] [smp:8:8] [rq:8] [async-
threads:0] [hipe] [kernel-poll:false]

Eshell V5.7.3 (abort with ^G)
1>

odin

unread,
Oct 5, 2009, 9:17:06 AM10/5/09
to Erlang China
还有这种:

=ERROR REPORT==== 2009-10-05 21:05:31 === Mnesia(ejabberd@localhost):
** WARNING ** Mnesia is overloaded: {mnesia_tm,

message_queue_len,

[133,133]}

=ERROR REPORT==== 2009-10-05 21:05:31 === Mnesia(ejabberd@localhost):
** WARNING ** Mnesia is overloaded: {mnesia_tm,

message_queue_len,
"rr"}

=ERROR REPORT==== 2009-10-05 21:05:31 === Mnesia(ejabberd@localhost):
** WARNING ** Mnesia is overloaded: {mnesia_tm,

message_queue_len,

[127,127]}

=ERROR REPORT==== 2009-10-05 21:05:31 === Mnesia(ejabberd@localhost):
** WARNING ** Mnesia is overloaded: {mnesia_tm,

message_queue_len,

[128,128]}

=ERROR REPORT==== 2009-10-05 21:05:31 === Mnesia(ejabberd@localhost):
** WARNING ** Mnesia is overloaded: {mnesia_tm,

message_queue_len,

[128,128]}

=ERROR REPORT==== 2009-10-05 21:05:31 === Mnesia(ejabberd@localhost):
** WARNING ** Mnesia is overloaded: {mnesia_tm,

message_queue_len,

[128,129]}

Feng Yu

unread,
Oct 5, 2009, 11:45:12 AM10/5/09
to erlang...@googlegroups.com
上面不是写的很明显吗 emfile 你的文件句柄是1024。

ulimit -n 999999就好了


专注 高性能 容错 分布服务器的实现(erlang)
http://blog.yufeng.info



2009/10/5 odin <odi...@gmail.com>

Zoom.Quiet

unread,
Oct 5, 2009, 9:35:16 PM10/5/09
to erlang...@googlegroups.com
2009/10/5 Feng Yu <mryu...@gmail.com>:

> 上面不是写的很明显吗 emfile 你的文件句柄是1024。
>
> ulimit -n 999999就好了
>

嗯嗯嗯,和Python 一樣,提示一般都是非常明确的,
但是不好好看手册,是不知道调节什么参数的....

--
http://zoomquiet.org 人生苦短? Pythonic!
Free as in Freedom! 哲思社区:http://zeuux.com

odin

unread,
Oct 6, 2009, 7:54:25 AM10/6/09
to Erlang China
非常感谢,ulimit ,很管用。 :)

但是这种错误是什么原因呢?

=ERROR REPORT==== 2009-10-05 21:05:31 === Mnesia(ejabberd@localhost):
** WARNING ** Mnesia is overloaded: {mnesia_tm,
message_queue_len,
[128,129]}

On 10月6日, 上午9时35分, "Zoom.Quiet" <zoom.qu...@gmail.com> wrote:
> 2009/10/5 Feng Yu <mryuf...@gmail.com>:

> --http://zoomquiet.org人生苦短? Pythonic!

Feng Yu

unread,
Oct 6, 2009, 9:04:20 AM10/6/09
to erlang...@googlegroups.com
回头好好看看 unix programing的书把。


专注 高性能 容错 分布服务器的实现(erlang)
http://blog.yufeng.info



2009/10/6 odin <odi...@gmail.com>

odin

unread,
Oct 7, 2009, 3:09:43 AM10/7/09
to Erlang China
Mnesia数据库的问题,不关UNIX的事吧。
或者这么说,我换成在WINDOWS下执行ejabberd, 执行 Mnesia,不也一样会有类似的错误。

gao gaoxiaogang

unread,
Oct 7, 2009, 4:05:21 AM10/7/09
to erlang...@googlegroups.com
你文件句柄数不够了,怎么不关unix的事?

2009/10/7 odin <odi...@gmail.com>
Reply all
Reply to author
Forward
0 new messages