当前一个 manifest 读取失败时,孤立的索引代数会累积 - 存储空间会不断增长,直到服务器在空闲时耗尽核心。
作者: KEONHEEJ创建于 2026年7月27日更新于 2026年9月15日
** 套件:** gent剂/活用 ' 0.9.28 iii 运行时间: 0.11.2 ** Host:** macOS 26.5.2, arm64, 节点 v24.16.0, 发射管理 (不是Docker) ** Store:** 基于文件的 KV, QQ/ data/ state store.db', ~3,000个观测数据
□ 总结
IndexPersistence.save ()' 只有在成功读取上一份清单时,才能清理出* 以前的* 一代的碎片。 当读取失败时——这恰好发生在商店负荷不足时——清理工作被完全跳过,** 一代的残骸永远成为孤儿**:以后的每一次拯救()'都只看它自己的*`以前',所以再也没有老孤儿了。
孤儿是单调地积累起来的,他们反馈到造成他们的失败之中。
在我的安装中,它达到了8个指数代/140个MB的shards,其中只有两代活(37个MB). 服务器随后坐落在了110–150%的CPU上,同时完全闲置,每一次HTTP路由的出站时间都会出站.
□ 证据
清理前的存储分解(338 MB 总计):
键前缀 * * * 大小 * * * 有点 * * * |. 'mem:index:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;:::::::::::::::::::;::::::::::::::::::::::::::::::::::::::::::::;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ===================================================================================================== (============================================================================ `em:audit' | 42 MB |对数|
因此,79%的商店是衍生出的数据,大部分是无法接触到的.
活人世代的明显名称:
贾森 {'data: manifest': {"生成":"idx mrzxkql0 d41f7623ee4f","硬": [.]}, "活计:活计":{"生成":"idx mrzxkrwf 8fe2c54a3dc8","硬": [.]}}.
其他6个`idx *`-'代人却一无所获。
删除孤儿+图表+审计的影响(未触及的意见):
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}在...
|.
idle CPU(飞行中无请求) **110-150 * * **0-3 * * *
################################################################################################################################################################################################################################################################
`GET/代理/保健 ' 8-25 s,经常超时**6 ms** |
`POST/代理/搜索 ' 20分超时** 14分** |
`POST/Agentemory/smart-search' **44.5 s ** **0.82 s ** |
· 存储大小 · 338 MB · 109 MB · ·
现在服务器已经上升了**45+小时**,没有重启,也没有退化。
□ 根源
`dist/index.mjs',`Indexpresence.save()'结尾:
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你来干什么?
等待此. deleteKey( KV. bm25 Index, 遗留的Key, “legacy cleanup" );
如果(前作?.v + * 1 + array.is Array(前作.shards)) {
相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相接相
为 (前作. shards ) {
如果(当前ShardIds.has (`${hard.scope 0${shard.key}))继续的话;
等待这个. deleteShards([shard],"上一代 清理");
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?以前 ' 是指在save()'开头读出清单。 从我的日志看,
[代理人]警告指数持久性: BM25 显示读取失败
{"镜像":"mem:index:bm25""键":"data:manifest""Message":"180000ms后调用超时:状态::得到"}
[代理]警告指数持久性:矢量显示读取失败
. . . . . . .内容来源: rohitg00/agentmemory