Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arangodb 当执行相同的遍历查询时,Arango会随机重新启动_Arangodb - Fatal编程技术网

Arangodb 当执行相同的遍历查询时,Arango会随机重新启动

Arangodb 当执行相同的遍历查询时,Arango会随机重新启动,arangodb,Arangodb,我正在运行一系列从节点服务器到安装了Arango的Ubuntu AWS实例的同步请求。Arangod是3.1.7版 几周来一切正常,但现在: 在随机的基础上,我在执行一个查询时从节点得到一个{Error:socket hang up},始终是同一个查询,当我在所有其他查询上得到{Error:connect econnreference}时,arango似乎重新启动了一段时间。 虽然我的数据在两次查询之间没有变化,但这种情况发生的次数是6次中的1次 Web界面日志非常少,似乎无法解释出现了什么问题

我正在运行一系列从节点服务器到安装了Arango的Ubuntu AWS实例的同步请求。Arangod是3.1.7版

几周来一切正常,但现在:

在随机的基础上,我在执行一个查询时从节点得到一个{Error:socket hang up},始终是同一个查询,当我在所有其他查询上得到{Error:connect econnreference}时,arango似乎重新启动了一段时间。 虽然我的数据在两次查询之间没有变化,但这种情况发生的次数是6次中的1次

Web界面日志非常少,似乎无法解释出现了什么问题。Arangod似乎创建了一个日志文件,但很难解释。 所有服务器指标都很好

你对我如何在这个问题上取得进展有什么想法吗?我的数据损坏了吗?我怎么知道

以下是我的日志文件的内容:

2017-02-22T16:24:57Z [11449] INFO ArangoDB 3.1.7 [linux] 64bit, using VPack 0.1.30, ICU 54.1, V8 5.0.71.39, OpenSSL 1.0.1f 6 Jan 2014
2017-02-22T16:24:57Z [11449] INFO using SSL options: SSL_OP_CIPHER_SERVER_PREFERENCE, SSL_OP_TLS_ROLLBACK_BUG
2017-02-22T16:24:57Z [11449] INFO Authentication is turned on
2017-02-22T16:24:57Z [11449] INFO Authentication system only
2017-02-22T16:24:57Z [11449] INFO Authentication for unix sockets is turned on
2017-02-22T16:24:57Z [11449] INFO file-descriptors (nofiles) hard limit is 131072, soft limit is 131072
2017-02-22T16:24:57Z [11449] INFO running WAL recovery (1 logfiles)
2017-02-22T16:24:57Z [11449] INFO replaying WAL logfile '/vol/data/standalone/journals/logfile-44002553.db' (1 of 1)
2017-02-22T16:24:57Z [11449] INFO WAL recovery finished successfully
2017-02-22T16:24:57Z [11449] INFO JavaScript using startup '/usr/share/arangodb3/js', application '/var/lib/arangodb3-apps'
2017-02-22T16:24:57Z [11449] INFO In database '_system': Database is up-to-date (30107/standalone/existing)
2017-02-22T16:24:57Z [11449] INFO In database 'X-DB': Database is up-to-date (30107/standalone/existing)
2017-02-22T16:24:57Z [11449] INFO using endpoint 'http+tcp://0.0.0.0:8529' for non-encrypted requests
2017-02-22T16:24:58Z [11449] INFO Please note that a new bugfix version '3.1.11' is available
2017-02-22T16:24:58Z [11449] INFO ArangoDB (version 3.1.7 [linux]) is ready for business. Have fun!
以及:

我相信引起麻烦的问题是:

RETURN (
FOR i, j, k IN 0..3 INBOUND "Hint/26427214" GRAPH "X-graph"
FILTER k.vertices[1]._id LIKE "Drop/%"
AND k.vertices[2]._id LIKE "Hint/%"
AND k.vertices[3]._id LIKE "Drop/%"
FILTER k.vertices[1].hostname != k.vertices[3].hostname
FILTER k.vertices[2].type == "article"
SORT k.vertices[2].createdAt DESC
LIMIT 0, 1
RETURN UNION (
FOR v, e, p IN 0..2 INBOUND k.vertices[2]._id GRAPH "X-graph"
FILTER p.vertices[1]._id LIKE "Source/%"
AND p.vertices[2]._id LIKE "Twittos/%"
RETURN { key: p.vertices[0]._key, retweets: p.vertices[0].retweets, title: p.vertices[0].title, type: p.vertices[0].type, content: p.vertices[0].content, image: p.vertices[0].image, source: { key: p.vertices[1]._key, name: p.vertices[1].name, screenname: p.vertices[2].screenname, image: p.vertices[2].image }},
FOR v, e, p IN 0..1 INBOUND k.vertices[2]._id GRAPH "X-graph"
FILTER p.vertices[1]._id LIKE "Source/%"
RETURN { key: p.vertices[0]._key, retweets: p.vertices[0].retweets, title: p.vertices[0].title, type: p.vertices[0].type, content: p.vertices[0].content, image: p.vertices[0].image, source: { key: p.vertices[1]._key, name: p.vertices[1].name }},
FOR v, e, p IN 0 INBOUND k.vertices[2]._id GRAPH "X-graph" RETURN { key: p.vertices[0]._key, retweets: p.vertices[0].retweets, title: p.vertices[0].title, type: p.vertices[0].type, image: p.vertices[0].image, content: p.vertices[0].content })[0] )[*]

经过大量研究,我试图简单地升级到Arangod3.1.11。这个问题似乎已经不存在了。

经过大量研究,我试图简单地升级到arangod 3.1.11。问题似乎消失了。

如果ArangoDB自动重新启动,它看起来好像崩溃了。ArangoDB有一个监管流程,将自动重新启动arangod。当监控进程检测到数据库崩溃时,它将写入一条日志消息。
/var/log/arangodb3
中应该有两个日志文件(路径可能因平台而异),其中一个日志文件中应该有关于是否发生崩溃的指示。如果发生崩溃,最好知道正在使用哪个版本的ArangoDB,以及是否有导致ArangoDB失败的特定查询。如果您能找到具体的查询并将其发布在这里,这可能有助于重现和解决问题。如果您无法找到它是哪个查询,那么在服务器上启用coredumps可能会有所帮助,以便操作系统在arangod进程崩溃时写入该进程的映像。这样的corefile还应该帮助我们找到错误。谢谢另一个修复尝试是将已安装的ArangoDB软件包升级到最新版本,并检查错误是否已修复。从这里很难判断这对您的情况是否有帮助,因为这个问题不包含任何关于正在使用的ArangoDB版本的信息。@stj我添加了我的arango版本(3.1.7)、日志文件和导致问题的查询。如何启用coredumps并获取corefile?版本3.6.1.1存在此问题。调用遍历查询后,arangoDB会因重新启动而崩溃。如果arangoDB自动重新启动,它看起来像是崩溃了。ArangoDB有一个监管流程,将自动重新启动arangod。当监控进程检测到数据库崩溃时,它将写入一条日志消息。
/var/log/arangodb3
中应该有两个日志文件(路径可能因平台而异),其中一个日志文件中应该有关于是否发生崩溃的指示。如果发生崩溃,最好知道正在使用哪个版本的ArangoDB,以及是否有导致ArangoDB失败的特定查询。如果您能找到具体的查询并将其发布在这里,这可能有助于重现和解决问题。如果您无法找到它是哪个查询,那么在服务器上启用coredumps可能会有所帮助,以便操作系统在arangod进程崩溃时写入该进程的映像。这样的corefile还应该帮助我们找到错误。谢谢另一个修复尝试是将已安装的ArangoDB软件包升级到最新版本,并检查错误是否已修复。从这里很难判断这对您的情况是否有帮助,因为这个问题不包含任何关于正在使用的ArangoDB版本的信息。@stj我添加了我的arango版本(3.1.7)、日志文件和导致问题的查询。如何启用coredumps并获取corefile?版本3.6.1.1存在此问题。调用遍历查询后,arangoDB因重新启动而崩溃。很高兴它现在可以工作了。3.1.10中对遍历过滤器条件进行了一些修复。您遇到的问题可能与这些问题有关。很高兴它现在起作用了。3.1.10中对遍历过滤器条件进行了一些修复。您遇到的问题可能与这些问题有关。
RETURN (
FOR i, j, k IN 0..3 INBOUND "Hint/26427214" GRAPH "X-graph"
FILTER k.vertices[1]._id LIKE "Drop/%"
AND k.vertices[2]._id LIKE "Hint/%"
AND k.vertices[3]._id LIKE "Drop/%"
FILTER k.vertices[1].hostname != k.vertices[3].hostname
FILTER k.vertices[2].type == "article"
SORT k.vertices[2].createdAt DESC
LIMIT 0, 1
RETURN UNION (
FOR v, e, p IN 0..2 INBOUND k.vertices[2]._id GRAPH "X-graph"
FILTER p.vertices[1]._id LIKE "Source/%"
AND p.vertices[2]._id LIKE "Twittos/%"
RETURN { key: p.vertices[0]._key, retweets: p.vertices[0].retweets, title: p.vertices[0].title, type: p.vertices[0].type, content: p.vertices[0].content, image: p.vertices[0].image, source: { key: p.vertices[1]._key, name: p.vertices[1].name, screenname: p.vertices[2].screenname, image: p.vertices[2].image }},
FOR v, e, p IN 0..1 INBOUND k.vertices[2]._id GRAPH "X-graph"
FILTER p.vertices[1]._id LIKE "Source/%"
RETURN { key: p.vertices[0]._key, retweets: p.vertices[0].retweets, title: p.vertices[0].title, type: p.vertices[0].type, content: p.vertices[0].content, image: p.vertices[0].image, source: { key: p.vertices[1]._key, name: p.vertices[1].name }},
FOR v, e, p IN 0 INBOUND k.vertices[2]._id GRAPH "X-graph" RETURN { key: p.vertices[0]._key, retweets: p.vertices[0].retweets, title: p.vertices[0].title, type: p.vertices[0].type, image: p.vertices[0].image, content: p.vertices[0].content })[0] )[*]