есть такой эксепшен.
2020.12.02 14:19:29.379682 [ 21 ] {} <Error> dump.Distributed.DirectoryMonitor: Code: 241, e.displayText() = DB::Exception: Received from 192.168.100.23:9010. DB::Exception: Memory limit (for query) exceeded: would use 12.08 GiB (attempt to allocate chunk of 4295431741 bytes), maximum: 9.31 GiB. Stack trace:
Очевидно, что великоват размер батча (мемори лимиты стоят 20 и 30 гб на шарде-отправителе и шарде-приёмнике соответственно)
на гитхабе нашёл issue https://github.com/ClickHouse/ClickHouse/issues/5959
@den_crane посоветовал выставить max_insert_block_size меньшего размера - выставил 1024 и даже 32. Всё равно падает ошибка
есть идеи что сделать, чтобы вставка прошла?
Если даже вставлять одну запись через консоль - ошибка воспроизводится. Есть мнение, что где-то в клике есть очередь для повторной вставки в distributed таблицы для неуспешных вставок (в директории клика есть папка с названием distributed таблицы весом в 30гб)
А лимит увеличен на всех репликах?
да, всего два клика - один пишет в distributed таблицу на втором эта таблица находится физически данные хранятся на втором клике
max_memory_usage смотри
сколько колонок в таблице? в тысячах
Около 20 Не тысяч, просто 20
а чем вставляете? какое api ? materialized view есть?
Обсуждают сегодня