PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Postgres chiude la connessione durante la query dopo alcune centinaia di secondi quando si utilizza Psycopg2

Aggiunta di keepalive parametri al psycopg2.connect la chiamata sembra aver risolto il problema:

self.db = pg.connect(
            dbname=config.db_name,
            user=config.db_user,
            password=config.db_password,
            host=config.db_host,
            port=config.db_port,
            keepalives=1,
            keepalives_idle=30,
            keepalives_interval=10,
            keepalives_count=5
        )

Non so ancora perché questo sia necessario. Non riesco a trovare nessun altro che abbia descritto di dover utilizzare i keepalives parole chiave dei parametri quando si utilizza Postgres in Docker solo per essere in grado di eseguire query che richiedono più di 4-5 minuti, ma forse è abbastanza ovvio che nessuno l'ha notato?