Генерация кода MemSQL не удалась: не удалось создать код

У меня есть рабочая станция с 250 ГБ оперативной памяти и 4 ТБ SSD. В memsql есть таблица, содержащая 1 миллиард записей, каждая из которых содержит 44 столбца с данными по 500 ГБ. Когда я запускаю следующий запрос в этой таблице

SELECT  count(*) ct,name,age FROM research.all_data  group by name having count(*) >100 order by ct desc

Я получил следующую ошибку

Генерация кода MemSQL не удалась

Я сделал рестарт на сервер и после этого у меня появилась другая ошибка

Недостаточно памяти для выполнения текущего запроса. Запрос не был обработан

Я дал серверу максимальную память 220 ГБ и max_table_memory 190 ГБ.

почему эта ошибка может произойти?

почему memsql потребляет 140 ГБ памяти, хотя я использую хранилище столбцов?


person Ahmed Alashrafy    schedule 24.06.2016    source источник
comment
Проблемы такого типа проще отлаживать через наш общедоступный канал в Slack: chat.memsql.com.   -  person Adam Prout    schedule 27.06.2016


Ответы (1)


В случае ошибки генерации кода MemSQL проверьте журнал трассировки (http://docs.memsql.com/docs/trace-log) на узле MemSQL, где произошла ошибка, для получения более подробной информации — это может означать много разных вещей.

MemSQL требуется память для обработки результатов запроса, хранения некоторых метаданных и т. д., даже если данные columnstore хранятся на диске. Проверьте информацию о состоянии memsql, чтобы узнать, что использует память — https://knowledgebase.memsql.com/hc/en-us/articles/208759276-What-is-using-memory-on-my-leaves-.

person Jack Chen    schedule 24.06.2016