CSV importer 导入出错

我使用 CSV importer 向本地数据库导入example.yaml 没有任何问题,但是address 改成非本地的ip之后就出现了E_SYNTAX_ERROR,message: SyntaxError: syntax error at 1.8-14 除了ip地址没有改任何内容,ip中也不包含“1.8-14”

请问你部署的 nebula 是什么版本的?
对应的部署节点的端口有没有放开?防火墙的配置是否正确?

nebula 是通过什么方式部署的?docker 还是 rpm/deb 安装?

E_SYNTAX_ERROR 这是数据里混入了脏数据吧

防火墙端口是开启的,版本nebula-1.0.0-beta.el7-5.x86_64.rpm rpm安装,importer是1.0.0

直接用的官方示例……

go-importer其实可以把出错时候的语句打一下。
这里看上去就是找错了csv文件的样子

有日志文件的,每一条错误的语句都会输出到配置的 log 文件里, @skyWalker1997 你可以去对应的 log 中看看对应的语句是什么。

image

但是往本地的图库导入没问题啊?

这个log文件是空的

这种情况就不是插入语句的错误了,应该是 YAML 中 preStart 的 command 中的一个语句出错了,可能是版本不同的兼容性问题,你可以把其中的语句用 console 一句句执行看看是哪句出错

这个版本的 nebula 已经比较旧了,很多功能都是不兼容的了,所以建议你还是升级一下我们最近发的新版本吧

https://github.com/vesoft-inc/nebula/releases

我直接用的importer的官方example,只改了ip,同一个文件,把ip改成本机的ip就可以顺利导入。肯定不是语句的问题吧

好的,我还是升级你们最新版本吧

屏幕直观点而已。

你改了 ip 连接的服务端的版本是一样的吗?本地版本和远端的 nebula 的版本如果也一样的话,应该是要出错的。

如果是用的示例的中的 docker-compose 启动的话,那个是用的最新的版本。

您的意思是现有的用go build的importer不支持最新发布的1.10吗,只能用最新的docker?

刚刚升级完集群的nebula之后,其中一个的storaged出现了这个问题,挂掉了

F0922 19:45:21.010560 6394 RocksEngine.cpp:337] Check failed: key.size() == sizeof(PartitionID) + sizeof(NebulaSystemKeyType) (24 vs. 8)
*** Check failure stack trace: ***
@ 0x1cc2d3c google::LogMessage::Fail()
@ 0x1cc78ad google::LogMessage::SendToLog()
@ 0x1cc2a0d google::LogMessage::Flush()
@ 0x1cc3268 google::LogMessageFatal::~LogMessageFatal()
@ 0x109c835 nebula::kvstore::RocksEngine::allParts()
@ 0x109cc6b nebula::kvstore::RocksEngine::RocksEngine()
@ 0x10a5dd0 nebula::kvstore::NebulaStore::newEngine()
@ 0x10abcd3 nebula::kvstore::NebulaStore::init()
@ 0xfce210 nebula::storage::StorageServer::getStoreInstance()
@ 0xfce9af nebula::storage::StorageServer::start()
@ 0xf7f2ff main
@ 0x7fe62791eb34 __libc_start_main
@ 0xfa8b40 (unknown)

但是另一个就完全没出现,配置应该没有问题

是否有历史数据?
beta版本数据太老,格式有改变。

可能确实是历史数据的问题,我去一个节点上删除了现有的所有空间之后,另一个storaged就不崩了。

master 分支的 importer 是支持 nebula-1.1.0 的,因为 thrift 等接口未变,所以是兼容的。

nebula-1.0.0-beta 升级到 nebula-1.1.0 是需要重新导入数据的,这里升级是不兼容的。