Увеличьте параметр memtx_memory
в box.cfg{}
, чтобы преодолеть ошибку «Не удалось выделить» для пространств memtx (то же самое для виниловых пространств и vinyl_memory
):
box.cfg{
<...>,
memtx_memory = <...>,
vinyl_memory = <...>,
<...>,
}
Я предполагаю, что вы используете виниловый мотор. <space object>:len()
или <index object>:len()
оценивается как число операторов в дереве LSM и может быть больше, чем фактическое число кортежей в пространстве. Операция удаления создает инструкцию в дереве LSM, поэтому она увеличивает значение :len()
.
Если вам нужно точное количество кортежей в виниловом пространстве, используйте :count()
, но это лучше чтобы избежать этого, потому что его гибкость является линейной (полное сканирование всего пространства, что может быть очень дорого для больших пространств). См. документацию .