我们有一个在Ubuntu 16.04.4 TLS上运行的Neo4j 3.3.5社区版本,当我们在某些节点之间创建关系时,它崩溃了。
这些关系是使用py2neo模块在python程序中建立的。进程崩溃时,py2neo产生以下错误:
[2018-07-06 15:47:33]数据库遇到严重错误,需要重新启动。有关更多详细信息,请参阅数据库日志。
[2018-07-06 15:47:33] [Errno 24]打开的文件太多
后者被印刷了1830次。
neo4j日志文件中显示的错误是“设备空间不足” 。然后我们清除了磁盘上的一些空间,现在有超过3.5 GB的可用空间。
我们遇到的问题是我们无法再重新启动neo4j。
第一个错误是:
“存储及其锁定文件已被另一个进程锁定:/var/lib/neo4j/data/databases/graph.db/store_lock。请确保没有其他进程正在使用此数据库,并且该目录可写(即使是只读访问权限也需要)”。
为此,我们在线找到了一个解决方案,建议杀死连接到“ org.neo4j.server”的java进程。但是,杀死这些进程无济于事,我们仍然无法使用以下命令启动服务器:
'''sudo服务neo4j启动'''
现在,它会产生以下错误:
* ...“ java.io.IOException:设备上没有剩余空间”。 *
但是,当我们检查磁盘时,有足够的空间,并且Inodes似乎还可以。
另一个建议是重新安装数据库。但是,我们希望在采取如此严厉的措施之前先了解发生了什么,以防止再次发生。
任何想法和/或建议将不胜感激。