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

Здравствуйте! Кто-то сталкивался с прерыванием длительных запросов после ~300 секунд? Текст

ошибки: requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
Сетап:
- Managed Clickhouse (Y.Cloud)
- Используется clickhouse_connect (python) через dbt-clickhouse
Настройка send_receive_timeout=500 не действует.

14 ответов

23 просмотра

смотрите в настройках профиля вашего https://clickhouse.com/docs/en/operations/settings/query-complexity/#max-execution-time ну и в system.query_log поглядите как там на сервере запрос записывается

Artemiy-Kzr Автор вопроса
Slach [altinity]
смотрите в настройках профиля вашего https://click...

max-execution-time проверил, на 5 секундах, например, запрос отстреливается. Выставил 500. Но после 300 секунд всё равно получаю requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response')) Согласно логу system.query_log запросы успешно завершаются на сервере, просто на своей стороне после 300 секунд я получаю таймаут и закрытие сокета. Пока не могу понять, какая настройка за это отвечает.

Artemiy Kzr
max-execution-time проверил, на 5 секундах, наприм...

а с клиентской стороны timeout пробовали выставить?

Artemiy-Kzr Автор вопроса
Slach [altinity]
а с клиентской стороны timeout пробовали выставить...

В принципе так и делаю, в конце запроса приписываю settings receive_timeout=500 , send_timeout=500 , send_progress_in_http_headers=0 , max_execution_time=500

Artemiy Kzr
max-execution-time проверил, на 5 секундах, наприм...

вообще там вроде отдельно send_timeout и receive_timeout думаю имеет смысл с полным стектрейсом завести issue в репозитории dbt-clickhouse

Artemiy Kzr
В принципе так и делаю, в конце запроса приписываю...

это настройки уровная коннекта а не запроса, так что где то в параметрах коннекта задаваться должны

Artemiy-Kzr Автор вопроса

В коннекте profiles.yml тоже есть: clickhouse_starschema: outputs: dev: type: clickhouse schema: default host: "{{ env_var('DBT_HOST') }}" port: 8443 user: "{{ env_var('DBT_USER') }}" password: "{{ env_var('DBT_PASSWORD') }}" secure: True verify: False send_receive_timeout: 500 target: dev

Artemiy-Kzr Автор вопроса
Artemiy Kzr
В коннекте profiles.yml тоже есть: clickhouse_star...

по моему нет настройки send_receive_timeout есть три отдельные send_timeout, receive_timeout , connect_timeout

Artemiy Kzr
В принципе так и делаю, в конце запроса приписываю...

никто, кстати, не сталкивался, что в графане запросы отстреливаются после 30 секунд работы? таймаут датасорса выставлен в 900 секунд, не помогает

Valeriy Simonov
никто, кстати, не сталкивался, что в графане запро...

это встроенный для всех сорцов таймаут на уровне прокси графаны [dataproxy] timeout = 30 можно поменять

Slach [altinity]
это встроенный для всех сорцов таймаут на уровне п...

я поменял настройки на датасорсе, в документации на провиженинг пишут, что этот параметр подменяет настройки. в исходниках тоже вижу, как будто меняется таймаут на тот, который я задаю в датасорсе. при этом запрос отстреливает по таймауту именно графана

Valeriy Simonov
screenshot я поменял настройки на датасорсе, в документации н...

перечитайте еще раз мое сообщение вам grafana.ini поменять надо чтобы dataproxy не отваливался после 30 секунд но вообще если у вас запрос занимает больше 30 секунд времени, то может быть grafana не для вас а лучше использовать какой то репортинг типа https://github.com/evidence-dev/evidence ?

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта