neo4j doc manager在创建约束时崩溃了

时间:2017-12-27 05:59:42

标签: python mongodb neo4j

I checked the log and I found the neo4j doc manager tried to reconnect after creating constraint and then it came a time out problem.

2017-12-26 03:06:44,518 [INFO] mongo_connector.doc_managers.neo4j_doc_manager:60 - >>>upsert
2017-12-26 03:06:44,518 [INFO] py2neo.cypher:200 - begin
2017-12-26 03:06:44,519 [INFO] py2neo.cypher:266 - append u'CREATE CONSTRAINT ON (d:`Architecture`) ASSERT d._id IS UNIQUE' {}
2017-12-26 03:06:44,519 [INFO] py2neo.cypher:331 - commit
2017-12-26 03:06:44,519 [INFO] httpstream:312 - > POST http://localhost:7474/db/data/transaction/commit [141]
2017-12-26 03:06:44,520 [INFO] httpstream:306 - ~ Reconnecting (peer closed connection)
2017-12-26 03:06:44,521 [INFO] httpstream:312 - > POST http://localhost:7474/db/data/transaction/commit [141]
2017-12-26 03:06:54,561 [INFO] mongo_connector.oplog_manager:61 - OplogThread for replica set 'mongoNeo4jRepl' is 50 seconds behind the oplog.
2017-12-26 03:07:14,541 [ERROR] httpstream:168 - ! SocketError: timed out
2017-12-26 03:07:14,541 [ERROR] mongo_connector.util:106 - Fatal Exception
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/mongo_connector/util.py", line 104, in wrapped
    func(*args, **kwargs)
  File "/usr/lib/python2.7/site-packages/mongo_connector/oplog_manager.py", line 267, in run
    docman.upsert(doc, ns, timestamp)
  File "/usr/lib/python2.7/site-packages/mongo_connector/util.py", line 35, in wrapped
    return f(*args, **kwargs)
  File "/usr/lib/python2.7/site-packages/mongo_connector/doc_managers/neo4j_doc_manager.py", line 66, in upsert
    self.apply_id_constraint(builder.doc_types)
  File "/usr/lib/python2.7/site-packages/mongo_connector/doc_managers/neo4j_doc_manager.py", line 51, in apply_id_constraint
    self.graph.cypher.execute(constraint)
  File "/usr/lib/python2.7/site-packages/py2neo/cypher/core.py", line 136, in execute
    results = tx.commit()
  File "/usr/lib/python2.7/site-packages/py2neo/cypher/core.py", line 333, in commit
    return self.post(self.__commit or self.__begin_commit)
  File "/usr/lib/python2.7/site-packages/py2neo/cypher/core.py", line 275, in post
    rs = resource.post({"statements": self.statements})
  File "/usr/lib/python2.7/site-packages/py2neo/core.py", line 307, in post
    response = self.__base.post(body, headers, **kwargs)
  File "/usr/lib/python2.7/site-packages/py2neo/packages/httpstream/http.py", line 984, in post
    return rq.submit(**kwargs)
  File "/usr/lib/python2.7/site-packages/py2neo/packages/httpstream/http.py", line 433, in submit
    http, rs = submit(self.method, uri, self.body, self.headers)
  File "/usr/lib/python2.7/site-packages/py2neo/packages/httpstream/http.py", line 362, in submit
    raise SocketError(code, description, host_port=uri.host_port)
SocketError: timed out
2017-12-26 03:07:15,638 [ERROR] mongo_connector.connector:398 - MongoConnector: OplogThread <OplogThread(Thread-2, stopped 140444214224640)> unexpectedly stopped! Shutting down
2017-12-26 03:07:15,638 [INFO] mongo_connector.connector:459 - MongoConnector: Stopping all OplogThreads

我正在使用neo4j_doc_manager将数据从mongo同步到neo4j。但它经常在创建约束之后关闭,如上面的代码。我使用的是python 2.7.5,而neo4j的版本是3.2.2。我在网上搜索了很长时间。但没用。请帮助或尝试提供一些如何实现这一点的想法。我真的很感激!

0 个答案:

没有答案