reusee
reusee
原因已找到,传递的 marker 应为 result 的 NextMarker 字段,错用了 Marker 字段 会在这个pr一并修复:https://github.com/matrixorigin/matrixone/pull/19573
OOM killer 会发 sigkill 到要杀的进程,但这个进程没法抓到这个sigkill,所以想要在oom时做一些工作,暂时想不到办法。
不是所有堆外分配的场景,都可以做内存回收。内存缓存、可以spill的hashmap或者batch/vector,这些场景可以。I/O,网络传输这些不可以。 所以需要针对每个具体的场景,实现可以配置和控制的容量,没法对全局的分配量做限制。
实现伸缩,需要在使用堆外分配器的模块实现,不是在分配器内部。内存缓存容量控制、spill的逻辑,都不是在分配器实现的,没有统一的方法去实现的。
堆外内存不能控制上限,否则会出现死锁的问题。
repro: https://github.com/matrixorigin/matrixone/actions/runs/11471563158/job/31922675110?pr=19521
working on other issues.