Błąd:psycopg2.operationalerror: SSL SYSCALL error: EOF detected
Konfiguracja:Przepływ powietrza + Przesunięcie ku czerwieni + psycopg2
Kiedy:zapytania trwają długo czas na wykonanie (ponad 300 sekund).
W tym przypadku występuje przekroczenie limitu czasu gniazda. Tym, co rozwiązuje ten konkretny wariant błędu, jest dodanie argumentów podtrzymania aktywności do ciągu połączenia.
keepalive_kwargs = {
"keepalives": 1,
"keepalives_idle": 30,
"keepalives_interval": 5,
"keepalives_count": 5,
}
conection = psycopg2.connect(connection_string, **keepalive_kwargs)
Redshift wymaga keepalives_idle
mniej niż 300. Dla mnie pracowała wartość 30, Twój przebieg może się różnić. Możliwe jest również, że keepalives_idle
argument jest jedynym, który musisz ustawić - ale upewnij się, że keepalives
jest ustawiony na 1.
Link do dokumentów na temat aktywności postgres.
Link do dokumentu przepływu powietrza z informacją o przekroczeniu limitu czasu 300.