From 9848a00ea5751bc38bd5e65c716e7709be3be534 Mon Sep 17 00:00:00 2001 From: silverbullet233 <3675229+silverbullet233@users.noreply.github.com> Date: Wed, 1 Feb 2023 12:39:36 +0800 Subject: [PATCH] fix element_memory_usage of ArrayColumn --- be/src/column/array_column.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/be/src/column/array_column.cpp b/be/src/column/array_column.cpp index 74932fd018393b..af4263064f8ff0 100644 --- a/be/src/column/array_column.cpp +++ b/be/src/column/array_column.cpp @@ -534,8 +534,9 @@ bool ArrayColumn::set_null(size_t idx) { size_t ArrayColumn::element_memory_usage(size_t from, size_t size) const { DCHECK_LE(from + size, this->size()) << "Range error"; - return _elements->element_memory_usage(_offsets->get_data()[from], _offsets->get_data()[from + size]) + - _offsets->Column::element_memory_usage(from, size); + size_t start_offset = _offsets->get_data()[from]; + size_t elements_num = _offsets->get_data()[from + size] - start_offset; + return _elements->element_memory_usage(start_offset, elements_num) + _offsets->Column::element_memory_usage(from, size); } void ArrayColumn::swap_column(Column& rhs) {