Rethinkdb: «Соединение закрыто» - PullRequest
0 голосов
/ 14 февраля 2020

Я использую rethinkdb с flask (python 3), который размещается локально на компьютере Windows. Проблема в том, что соединение закрывается очень часто.

Ошибка выглядит следующим образом:

rethinkdb.errors.ReqlDriverError: Connection is closed.

В python я определил соединение так:

conn = r.connect("localhost", 28015).repl()

Пример моего запроса:

  r.db('izmjene').table("users").get_all(
         email, index="email").count().run(conn)

1 Ответ

0 голосов
/ 19 февраля 2020

Команда repl - это удобный метод, который устанавливает соединение по умолчанию в вашей оболочке, поэтому вам не нужно передавать его в команду run для выполнения ваших запросов. Избегайте использования repl в коде приложения. Объекты соединения RethinkDB не являются поточно-ориентированными, и вызовы для подключения из нескольких потоков могут изменить глобальный объект соединения, используемый repl. Приложения должны указывать соединения явно.

Существует очень хороший пример, который демонстрирует подключение и закрытие соединения здесь

...