ArangoDB重复的集合标识符

时间:2017-04-04 21:02:13

标签: arangodb

我在标准的docker容器(arangodb-docker)中运行ArangoDB。在创建初始的简单开发数据库并创建一些Foxx服务之后,我通过从交互式终端按Ctrl-C来关闭容器。关机似乎正常进行。当我尝试重新启动容器时,我收到以下内容:

2017-04-04T19:58:07Z [1] INFO ArangoDB 3.1.14 [linux] 64bit, using VPack 0.1.30, ICU 54.1, V8 5.0.71.39, OpenSSL 1.0.1t 3 May 2016 2017-04-04T19:58:07Z [1] INFO using SSL options: SSL_OP_CIPHER_SERVER_PREFERENCE, SSL_OP_TLS_ROLLBACK_BUG 2017-04-04T19:58:07Z [1] INFO Starting up with role SINGLE 2017-04-04T19:58:07Z [1] INFO file-descriptors (nofiles) hard limit is 1048576, soft limit is 1048576 2017-04-04T19:58:07Z [1] ERROR duplicate collection identifier 11704 for name 'event_venue' 2017-04-04T19:58:07Z [1] ERROR error while opening database: duplicate identifier 2017-04-04T19:58:07Z [1] FATAL cannot start database: duplicate identifier

我刚开始使用ArangoDB进行项目POC,并且在这个实例上没有做太多工作。我创建了一些数据库,创建了大约十二个集合,重命名了一些集合和数据库,插入,更新并删除了一些集合中的一些对象,创建,修改和删除了一些Foxx服务。在关机时,数据库处于空闲状态 - 我是唯一使用该容器的人。在关机之前,一切似乎都运转良好。

更多详情:

  • 我运行docker pull arangodb-docker以获取Docker镜像。
  • 要启动容器,我最初运行docker run -e ARANGO_NO_AUTH=1 -it -p 8529:8529 --name arangodb-instance arangodb/arangodb
  • 按Ctrl-C关闭容器。随后我只使用docker start -ai arangodb-instance
  • 在交互式终端会话中按Ctrl-C会产生如下输出:
    ^C2017-04-06T01:39:08Z [1] INFO control-c received, beginning shut down sequence 2017-04-06T01:39:09Z [1] INFO ArangoDB has been shut down
  • 我在关闭系统之前立即进行了转储。
  • 按照上面的说法创建一个新的docker实例,并且还原转储也会生成重复键错误 - 因此数据库在关闭之前已损坏:

Server version: 3.1.14 # Connected to ArangoDB 'http+tcp://127.0.0.1:8529'
# Re-creating document collection 'comments'...
# Loading data into document collection 'comments'
...
# Re-creating edge collection 'event_venue'...
2017-04-06T02:12:55Z [25963] ERROR got error from server: HTTP 500 (Internal Server Error): ArangoError 1005: duplicate identifier
Processed 13 collection(s), read 3837 byte(s) from datafiles, sent 2 batch(es)

导致这种情况的原因是什么?我应该把这个容器吹走并尝试重新装载最近的垃圾箱吗? Foxx开发错误会导致这样的事情吗?`

0 个答案:

没有答案