При использовании IPython и py2neo: как предотвратить "сброс соединения по пиру"?
Я использую Python 2.7.1, IPython 0.13.1 и py2neo 1.5 для того, чтобы модифицировать содержимое графической базы данных Neo4j. Через некоторое время без взаимодействия с Neo4j соединение восстанавливается Neo4j. Это немного неудобно.
Вопрос: Как можно увеличить время бездействия или сохранить что-то вроде соединения, чтобы сброс соединения не происходил или происходил реже?
/Library/Python/2.7/site-packages/py2neo/rest.pyc in _send(self, request)
428 return self._client().send(request)
429 except socket.error as err:
--> 430 raise SocketError(err)
431
432 def _metadata(self, key, default=None):
SocketError: error(54, 'Connection reset by peer')
2 ответа
Решение
Попробуйте это:
from py2neo.packages.httpstream import http
http.socket_timeout = 9999
Ограничение размера пакета транзакций до ~20 000 строк решило проблему для меня. Надеюсь это поможет!