StarRocks 3.3.19 版本 BE 列元数据内存 06:17 突发从 5G 暴涨至 30G

【详述】问题详细描述列元数据内存(Column Metadata Mem)在 06:17 左右突发从约 5G 暴涨至 30G,监控图表显示 06:17-06:18 呈陡峭线性增长,后续稳定在 30G 左右,无自然回落;该内存为 BE 节点列元数据缓存内存,并非业务数据处理内存。
需要手动重启be节点才行

【背景】做过哪些操作?

  1. 集群日常运行业务查询、批量数据写入任务,近期无人工变更表结构、集群配置的操作;

【业务影响】
BE 节点内存占用处于高位,出现sql查询延迟、失败等情况,核心业务受到影响,存在内存持续高位导致后续资源不足的风险。
需要重启才能解决

哪个版本?会不会是page cache?

3.3.19
image

大佬 还真是

page cache关掉就好了吗

大佬 可以加个微信吗


这里pagecacheMem又没显示

关了page cache 还是这样

http://BE_IP:8040/mem_tracker,看下是哪一块用的内存最多,看下是不是metadata

是metadata
I20260125 06:14:58.533789 139686111069760 daemon.cpp:187] Current memory statistics: process(51027754352), query_pool(1766096), load(7121861554), metadata(26129000865), compaction(1140496), schema_change(0), column_pool(0), page_cache(0), update(6612349971), chunk_allocator(0), passthrough(0), clone(0), consistency(0), datacache(57320517), jit(0)
W20260125 06:14:58.454912 139682853627456 rowset_update_state.cpp:53] load RowsetUpdateState error: Memory limit exceeded: Memory of process exceed limit. RowsetUpdateState::_do_load Backend: saas-hq-node00, Used: 50995550688, Limit: 50960793600. Mem usage has exceed the limit of BE
be/src/storage/rowset_update_state.cpp:154 CurrentThread::mem_tracker()->check_mem_limit(“RowsetUpdateState::_do_load”) tablet:331098794 stack:
@ 0x634bd05 starrocks::get_stack_traceabi:cxx11
@ 0x67d6925 starrocks::RowsetUpdateState::load(starrocks::Tablet*, starrocks::Rowset*)::{lambda()#1}::operator()() const
@ 0x7f0b3d19eee8 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x99ee7)
@ 0x67cf07a starrocks::RowsetUpdateState::load(starrocks::Tablet*, starrocks::Rowset*)
@ 0x68077ff starrocks::UpdateManager::on_rowset_finished(starrocks::Tablet*, starrocks::Rowset*)
@ 0x71c63c4 starrocks::DeltaWriter::commit()
@ 0x71bf940 starrocks::SegmentFlushTask::run()
@ 0x87563fe starrocks::ThreadPool::dispatch_thread()
@ 0x874ce19 starrocks::thread::supervise_thread(void*)
@ 0x7f0b3d199ac3 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x94ac2)
@ 0x7f0b3d22aa74 clone

内存都用超了 :joy:,这个集群的tablet数是多少来着,什么版本

3.3.19
tablet数20万 字段数并不多
主要是列元数据占太多了 30多个G

@trueeyu 需要鳄鱼大哥确认下是不是bug

@trueeyu 大佬 帮忙看下
另外 query的内存 为什么会高于 jemalloc分配的内存呢