172 похожих чатов

Подскажите, столкнулись с тем, что connect_timeout "не работает" в Connection

String. Есть сервер, допустим X. Курл X:5432 до него отрабатывает за секунду, все ок. connect_timeout стоит на 3 секунды.
Мы "отрубаем" сервер "из розетки", курл теперь весит до него с десяток других секунд, НО connect_timeout в три секунды не срабатывает, а продолжает подключиться примерно столько же, сколько курл.

Есть предположение, что в данном случае нужен какой-то таймаут "уровнем выше", мб на уровне ОС? Видимо приложение пытается еще до подключения к БД и использования Connection String "развезолвить" хост с десяток других секунд, как вот этот вот кейс через таймаут ограничить?

6 ответов

36 просмотров

Покажыте достаточно полный код, которым подключаетесь (лучшэ — повторяемый, т.е. такой, который запустится у других участников чятика).

Terrifin- Автор вопроса
Ilya Anfimov
Покажыте достаточно полный код, которым подключает...

Вряд ли смогу показать :/ Там sql_alchemy с psycopg и engine_options = { "connect_args": {"connect_timeout": 3}

Terrifin
Вряд ли смогу показать :/ Там sql_alchemy с psycop...

Ну, на нет и суда нет. Впрочем, могу посоветовать поискать в коде set_wait_callback. Если найдёте — можэте попытаться всунуть внутрь код таймаута. Или, кстати (лучшэ) — найдите любителя параллелизма и корутинов, который этот set_wait_callback вставил, и заставьте его в этой проблеме разбираться. (После set_wait_callback этот connection_timeout и не должэн работать, есличо).

Terrifin
Вряд ли смогу показать :/ Там sql_alchemy с psycop...

Впрочем, его мог позвать sqlaclemy_gevent или какая-то другая библиотека для облегчения сопряжэния с green threads и корутинами.

Не нужно gevent тащить в 2023м то году, если это не дикое легаси. Тем более что sqlalchemy уже поддерживает asyncio.

Alex
Не нужно gevent тащить в 2023м то году, если это н...

Я сильно подозреваю, что sqlalchemy/asyncio тожэ поставит set_wait_callback...

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта