刚尝试使用dolphindb,在日常的查询和写操作过程中几乎每天都会出现数据节点挂掉的问题,比如今天下午,两数据节点写入数据的时候突然就socket断开,然后一看又是节点2挂了.
节点1此时没有错误日志:
2021-01-28 16:29:13.601402 <INFO> :Transaction 846457 end
2021-01-28 16:29:13.663266 <WARNING> :BackgroundRoutineService reportDiskUsageToMaster elapsed 10 seconds.
2021-01-28 16:29:14.926477 <INFO> :IoTransactionMgmt::collectGarbage execute successfully.
2021-01-28 16:29:14.926556 <INFO> :chunkNode clean closed transactions successfully.
节点2错误日志:
2021-01-28 16:29:17.087723 <ERROR> :Close connection to P1-node1 #3 with error: Failed to read header from the socket. IO_ERR = 1
2021-01-28 16:29:17.087800 <ERROR> :AsynchronousRemoteExecutor::closeConnection to P1-node1 #3 numConnections=4
2021-01-28 16:29:17.087800 <ERROR> :Close connection to P1-node1 #5 with error: Failed to read header from the socket. IO_ERR = 1
2021-01-28 16:29:17.087868 <ERROR> :AsynchronousRemoteExecutor::closeConnection to P1-node1 #5 numConnections=3
2021-01-28 16:29:17.087908 <ERROR> :Close connection to P1-node1 #4 with error: Failed to read header from the socket. IO_ERR = 1
2021-01-28 16:29:17.087942 <ERROR> :AsynchronousRemoteExecutor::closeConnection to P1-node1 #4 numConnections=2
这些错误都是些啥?
连接错误就会导致数据节点挂掉?
有没有人碰到过类似的问题?
1.第二行的WARNING提示磁盘与主节点之间的连接时间耗时较长,所以可以确认一下是不是磁盘同时被其它程序高频使用;
2.计算机的内存空间是不是充足,如果留给dolphindb的可用空间较小的话,请设置节点的maxMemSize的值小于可用空间的值。在linux系统中可以这样查看,用dmesg -T | grep dolphindb查看一下Linux日志,确认一下是否被操作系统kill?
若不是操作系统kill,请用ulimit -c命令看一下core dump功能是否被开启?0表示没开启。
若没有,用 ulimit -c unlimited 开启一下,详情请参阅 https://www.cnblogs.com/xiaod...
若开启了,请看一下有没有core文件生成.