在 ArangoDB 中创建索引时锁定超时
Lock Timeout when creating index in ArangoDB
我可以使用以下方法连接到我的 ArangoDB 集群的协调器:
sudo arangosh --server.endpoint tcp://10.32.0.15:1027
一切正常(CRUD、查询等),除了当我尝试创建索引时出现 "Lock Timeout" 错误:
10.32.0.15:1027@_system> db.imdb_vertices.ensureIndex({ type: "skiplist", fields: ["name"] })
JavaScript exception in file '/usr/share/arangodb3/js/client/modules/@arangodb/arangosh.js' at 100,7: ArangoError 18: : lock timeout
! throw error;
! ^
stacktrace: ArangoError: : lock timeout
at Object.exports.checkRequestResult (/usr/share/arangodb3/js/client/modules/@arangodb/arangosh.js:98:21)
at ArangoCollection.ensureIndex (/usr/share/arangodb3/js/client/modules/@arangodb/arango-collection.js:738:12)
at <shell command>:1:18
10.32.0.15:1027@_system>
我在尝试通过 HTTP 创建索引时遇到同样的错误:
$ curl -X POST --data-binary @- --dump - http://10.32.0.15:1027/_api/index?collection=imdb_vertices << EOF
{
"type" : "skiplist",
"fields" : [
"name",
"genre"
]
}
EOF
HTTP/1.1 400 Bad Request
Content-Type: application/json; charset=utf-8
Server: ArangoDB
Connection: Keep-Alive
Content-Length: 71
{"error":true,"code":400,"errorNum":18,"errorMessage":": lock timeout"}
从文档中,我看到 "Will be raised when there's a timeout waiting for a lock." 被列为错误原因。但是,我无法找到解决方案。有什么提示吗?
谢谢!
在 ArangoDB Google 组论坛上解决了 here。
我可以使用以下方法连接到我的 ArangoDB 集群的协调器:
sudo arangosh --server.endpoint tcp://10.32.0.15:1027
一切正常(CRUD、查询等),除了当我尝试创建索引时出现 "Lock Timeout" 错误:
10.32.0.15:1027@_system> db.imdb_vertices.ensureIndex({ type: "skiplist", fields: ["name"] })
JavaScript exception in file '/usr/share/arangodb3/js/client/modules/@arangodb/arangosh.js' at 100,7: ArangoError 18: : lock timeout
! throw error;
! ^
stacktrace: ArangoError: : lock timeout
at Object.exports.checkRequestResult (/usr/share/arangodb3/js/client/modules/@arangodb/arangosh.js:98:21)
at ArangoCollection.ensureIndex (/usr/share/arangodb3/js/client/modules/@arangodb/arango-collection.js:738:12)
at <shell command>:1:18
10.32.0.15:1027@_system>
我在尝试通过 HTTP 创建索引时遇到同样的错误:
$ curl -X POST --data-binary @- --dump - http://10.32.0.15:1027/_api/index?collection=imdb_vertices << EOF
{
"type" : "skiplist",
"fields" : [
"name",
"genre"
]
}
EOF
HTTP/1.1 400 Bad Request
Content-Type: application/json; charset=utf-8
Server: ArangoDB
Connection: Keep-Alive
Content-Length: 71
{"error":true,"code":400,"errorNum":18,"errorMessage":": lock timeout"}
从文档中,我看到 "Will be raised when there's a timeout waiting for a lock." 被列为错误原因。但是,我无法找到解决方案。有什么提示吗?
谢谢!
在 ArangoDB Google 组论坛上解决了 here。