VirtualBox 中的 Neo4j 服务器:无法创建 rrd 存储 [英] Neo4j server in VirtualBox: Unable to create rrd store

查看:16
本文介绍了VirtualBox 中的 Neo4j 服务器:无法创建 rrd 存储的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在运行 Ubuntu 的 Virtualbox 中运行 Neo4j 服务器.服务器文件和数据库位于我的 Windows 主机中,并通过共享文件夹 (vboxsf) 访问.不幸的是,我无法轻松地将数据传输到虚拟机中并直接在那里运行(由于虚拟磁盘上的可用空间不足.我尝试将其放大但没有成功.)

I'm trying to run a Neo4j server inside my Virtualbox which is running Ubuntu. The server files and the database are located within my Windows-Host and accessed via a shared folder (vboxsf). Unfortunately I can not easily transfer the data into the virtual machine and run it there directly (due to insufficient free space on the virtual disk. I tried to enlarge it but that didn't work out.)

数据库是由我的队友设置和使用的.现在我想访问我系统上准备好的数据.(顺便说一句,我是 neo4j 的完全新手)我的整体设置(VM 而不是本机系统)有点不同,我们无法弄清楚实际问题是什么.

The database was set up and used by my teammate. Now I want to access the prepared data on my system. (btw, I'm a complete newbie to neo4j) My overall setup (VM instead of a native system) is a bit different and we couldn't figure out, what the actual problem is.

当我尝试通过控制台启动服务器时,我得到了:

When I try to start the server via the console, I get this:

don@VirtualHAL:~/Data/SharedFolder/DBs/neo4j-community-1.9$ bin/neo4j start
WARNING! You are using an unsupported Java runtime. Please use Oracle(R) Java(TM) Runtime Environment 7.
Starting Neo4j Server...WARNING: not changing user
process [7248]... waiting for server to be ready.............. Failed to start within 120 seconds.
Neo4j Server may have failed to start, please check the logs.

关于java版本的警告可能是因为我安装了Java OpenJDK 7.(我的队友使用相同的,没有任何进一步的问题).

The warning about the java version is propably caused by the fact that I installed Java OpenJDK 7. (My teammate uses the same, without any further problems).

在 120 秒内启动失败"消息实际上并不需要 2 分钟.

It does not actually take 2 minutes until the 'Failed to start within 120 seconds' message appears.

当然,我检查了日志:

8/21/13 8:37:12 PM org.neo4j.server.modules.RESTApiModule INFO: Mounted REST API at [/db/data/]
8/21/13 8:37:12 PM org.neo4j.server.modules.ManagementApiModule INFO: Mounted management API at [/db/manage/]
8/21/d13 8:37:12 PM org.neo4j.server.rrd.RrdFactory SEVERE: Unable to open rrd store, attempting to recreate it**
8/21/13 8:37:12 PM org.neo4j.server.rrd.RrdFactory SEVERE: current RRDB is invalid, renamed it to /home/don/Data/SharedFolder/DBs/neo4j-community-1.9/data/rrd-invalid-1377110232712
8/21/13 8:37:12 PM org.neo4j.server.rrd.RrdFactory SEVERE: Unable to create new rrd store
8/21/13 8:37:12 PM org.neo4j.server.CommunityBootstrapper SEVERE: 
java.lang.RuntimeException: java.io.IOException: Invalid argument
    at org.neo4j.server.rrd.RrdFactory.createRrdb(RrdFactory.java:176)
    at org.neo4j.server.rrd.RrdFactory.recreateArchive(RrdFactory.java:204)
    at org.neo4j.server.rrd.RrdFactory.createRrdb(RrdFactory.java:159)

这是日志中(看似)相关的部分.无法创建新的 rrd 存储 - 这可能是什么原因?到目前为止,搜索错误消息的任何部分都没有给我任何新信息.

This is the (seemingly) relevant part of the log. Unable to create new rrd store - What could be the cause for this? Searching for any parts of the error message didn't get me any new information so far.

推荐答案

也遇到了这个问题.Neo4j 使用 RRD 的外部库 - rrd4j.如果你查看它的源代码,你会发现它使用了一个内存映射文件.

Ran into this as well. Neo4j uses an external lib for RRDs - rrd4j. If you look at the source code for it, you'll see that it uses a memory mapped file.

https://github.com/fusesource/rrd4j/blob/rrd4j-2.0.7/src/main/java/org/rrd4j/core/RrdNioBackend.java

我在网上找不到任何内容,但我猜测用于安装共享文件夹的 Virtualbox 的 Guest Additions 不支持内存映射.我不认为这是操作系统的事情,而是内核实现的事情.我很想知道是不是这样.我的C-fu不强,但如果可能的话,我真的很想支持这个.

I can't find anything on this online, but I'm guessing that the Guest Additions for Virtualbox for mounting shared folders doesn't support memory mapping. I don't think it's an OS thing, but a kernel implementation thing. I'd love to find out if that's the case. My C-fu is not strong, but I'd really like to support this if at all possible.

是的,这是访客添加.这张票:https://www.virtualbox.org/ticket/819 - 7 岁.从 2 周前开始有针对 OSX 的活动.

Yep, it's Guest Additions. This ticket: https://www.virtualbox.org/ticket/819 - is 7 years old. There's activity on it for OSX from 2 weeks ago.

这篇关于VirtualBox 中的 Neo4j 服务器:无法创建 rrd 存储的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆