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

Привет всем! Подскажите - есть ошибка при выборке Query error:

Code: 241. DB::Exception: Memory limit (total) exceeded: would use 5.28 GiB (attempt to allocate chunk of 1073754536 bytes), maximum: 5.19 GiB: while executing 'FUNCTION dictGet('dictionary_subid2' :: 39, 'value' : 37, toUInt64(subid2_id) :: 9) -> dictGet('dictionary_subid2', 'value', toUInt64(subid2_id)) String : 8'. (MEMORY_LIMIT_EXCEEDED) (version 22.1.3.7 (official build))
КХ в докере. Лимитов по памяти нет.
docker inspect test-ch | grep Mem
"Memory": 0,
"CpusetMems": "",
"KernelMemory": 0,
"KernelMemoryTCP": 0,
"MemoryReservation": 0,
"MemorySwap": 0,
"MemorySwappiness": null,
free -h
total used free shared buff/cache available
Mem: 5.8Gi 4.7Gi 119Mi 3.0Mi 1.0Gi 893Mi
Swap: 19Gi 184Mi 19Gi
Своп не используется вообще. При этом
┌─name───────────────────────────────────────┬─value───────┐
│ distributed_aggregation_memory_efficient │ 1 │
│ aggregation_memory_efficient_merge_threads │ 0 │
│ memory_tracker_fault_probability │ 0 │
│ remerge_sort_lowered_memory_bytes_ratio │ 2 │
│ max_memory_usage │ 18000000000 │
│ max_memory_usage_for_user │ 0 │
│ max_untracked_memory │ 4194304 │
│ memory_profiler_step │ 4194304 │
│ memory_profiler_sample_probability │ 0 │
│ max_memory_usage_for_all_queries │ 0 │
└────────────────────────────────────────────┴─────────────┘
Что крутануть чтобы своп сожрался? И откуда вылезло 5.19 в ограничении? Кто то может подсказать?

10 ответов

129 просмотров

https://clickhouse.com/docs/ru/operations/settings/query-complexity/#settings_max_memory_usage https://clickhouse.com/docs/ru/operations/server-configuration-parameters/settings/#max_server_memory_usage_to_ram_ratio

Vladimir-P Автор вопроса
Vladimir-P Автор вопроса

Вот тут. Плюс когда делаю set тоже ругается

Vladimir P
Нет такого параметра

Такой параметр есть. Но не там где вы ищите.

Vladimir-P Автор вопроса
Ilya Golshtein
Такой параметр есть. Но не там где вы ищите.

Ну то есть set .... В глобальной настройке не то? В users.xml его?

Vladimir P
Ну то есть set .... В глобальной настройке не то? ...

1. какого из двух параметров нет 2. как вы выяснили, что его нет (пример запроса или конфига).

Vladimir-P Автор вопроса
Ilya Golshtein
1. какого из двух параметров нет 2. как вы выяснил...

34751a07f0ad :) set max_server_memory_usage_to_ram_ratio=2; SET max_server_memory_usage_to_ram_ratio = 2 Query id: 7445ee77-c467-44ce-b3fb-e97c00091ac3 0 rows in set. Elapsed: 0.016 sec. Received exception from server (version 22.1.3): Code: 115. DB::Exception: Received from localhost:9000. DB::Exception: Unknown setting max_server_memory_usage_to_ram_ratio. (UNKNOWN_SETTING)

Vladimir-P Автор вопроса

max_server_memory_usage - тут уже приведен. И запрос был SELECT name,value FROM system.settings where name like '%memory%';

Vladimir P
34751a07f0ad :) set max_server_memory_usage_to_ram...

https://clickhouse.com/docs/ru/operations/server-configuration-parameters/settings/#max_server_memory_usage_to_ram_ratio , если она находится в Конфигурационные параметры сервера, возможно её настройка находится в config.xml

Vladimir-P Автор вопроса
Константин
https://clickhouse.com/docs/ru/operations/server-c...

сейчас попытаюсь прописать в тот файл но не думаю что перечень параметров берется именно с файла а не из самого сервиса. Это было бы крайне странно, так как в том же config не все параметры фигурируют, например есть которые с default. Отпишу

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

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

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
Карта сайта