PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Грешка в Postgres SSL SYSCALL:EOF е открит с python и psycopg

Грешката:psycopg2.operationalerror: SSL SYSCALL error: EOF detected

Настройката:Въздушен поток +Червено отместване +psycopg2

Кога:Заявките отнемат дълго време за изпълнение (повече от 300 секунди).

В този случай възниква изтичане на времето за изчакване на сокета. Това, което решава този специфичен вариант на грешката, е добавянето на аргументи за поддържане на активността към низа за връзка.

keepalive_kwargs = {
    "keepalives": 1,
    "keepalives_idle": 30,
    "keepalives_interval": 5,
    "keepalives_count": 5,
}

conection = psycopg2.connect(connection_string, **keepalive_kwargs)

Redshift изисква keepalives_idle на по-малко от 300. Стойност от 30 работи за мен, вашият пробег може да варира. Възможно е също така keepalives_idle аргументът е единственият, който трябва да зададете - но уверете се, че keepalives е настроен на 1.

Връзка към документи за поддръжка на postgres.

Връзка към документ за въздушния поток, който съветва за изчакване 300.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Настройка и поддръжка на PostgreSQL репликация с помощта на Ansible

  2. Как да разбера дали резервното ми копие на PostgreSQL е добро?

  3. Разработване на PostgreSQL за Windows, част 1

  4. Как работи Abs() в PostgreSQL

  5. Изпълнение на множество екземпляри на PostgreSQL на един хост