ClickHouse / ClickHouse/clickhouse-java
ClickHouseDatabaseMetaData.getCatalogs exceeds max_execution_time, causing the connection not to be released
- Vorherrschende Sprache
- Java
- Sterne
- 1.6k
- Forks
- 636
- Ø Merge
- 2 T. 23 Std.
- Gemergte PRs (30 T.)
- 29
Beschreibung
class: ClickHouseDatabaseMetaData.getCatalogs
```
SELECT
event_time,
query_duration_ms,
initial_user,
query sql,
if(exception_code = 0,'success',exception) exception,
Settings
FROM clusterAllReplicas('ck', 'system.query_log')
WHERE event_time>='2024-02-29 14:39:00'
AND event_time<'2024-02-29 14:40:00'
AND query_duration_ms>600000
ORDER BY event_time DESC limit 10;\G
```
```
event_time: 2024-02-29 14:39:11
query_duration_ms: 822838
initial_user: trino
sql: select name as TABLE_CAT from system.databases order by name settings max_execution_time=20
exception: success
Settings: {'max_threads':'6','use_hedged_requests':'0','queue_max_wait_ms':'120000','use_uncompressed_cache':'0','background_fetches_pool_size':'26','background_schedule_pool_size':'256','load_balancing':'random','log_queries':'1','max_concurrent_queries_for_user':'100','send_progress_in_http_headers':'1','join_use_nulls':'1','max_replica_delay_for_distributed_queries':'1','distributed_ddl_task_timeout':'360','max_execution_time':'20','timeout_before_checking_execution_speed':'60','max_memory_usage':'50000000000','max_memory_usage_for_user':'50000000000','enable_global_with_statement':'1','date_time_input_format':'best_effort','insert_distributed_one_random_shard':'1'}
```
clickhouse-server HTTP connection:

This will cause many queries for that user to fail.
1. Why does settings max_execution_time=20 in sql not take effect?
2. `show create user trino` get `max_execution_time = 600`, This setting does not take effect either.
3. **How can I avoid time-out metadata queries that on `system.databases` like this? Can I set it in clickhouse-jdbc?**
Beitragsleitfaden
Rechercherichtung
Beginne bei ClickHouseDatabaseMetaData.getCatalogs und reproduziere die Abfrage auf system.databases mit max_execution_time=20. Verfolge anschließend, wie die ClickHouse-HTTP-Verbindung behandelt wird. Als erledigt gilt die Aufgabe, wenn die Metadatenabfrage keine lang laufende Anfrage mehr verursacht und die Verbindung nicht unreleased bleibt; im Issue wird keine Test- oder Quelldatei zur Verifizierung genannt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java, sql
- Bereich
- databases
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100