在没有 sidecars 的 WAL 数据库上,mempalace-native: read-only open 失败
作者: igorls创建于 2026年9月15日更新于 2026年9月15日
** 发生了什么**
VerctorIndex:load from sqlite' (crates/mempalace-core/src/lib.rs')打开了sqlite-exact'数据库,数据库有SQLITE OPEN READ ONLY QLITE OPEN URI'. 一个干净的WAL-mode数据库通常在其上个作者关闭后没有-wal'/-shm'侧车,在SQLite上,无法通过只读连接创建共享记忆索引,但与`SQLITE CANTOPEN'失效。 这是Python为#2489(Apple's system SQLite)而固定在Python一侧的同一类故障等级.
** 影响**
- 在MemPalace内,
RustExactCollection. ensure native index'捕获负载错误,记录未装入Rust本地矢量指数',查询回溯到Python-sqlite-exact'路径,因此`rust-exact'悄悄地失去其本地速度而不是失败。 - 独立的
mempalace-native'可执行性没有倒退,因此,stats'/bench'/search'在这样一个数据库上失效。
** 预期**
Mirror `config.connect sqlite read':当文件为WAL(标题为字节18 == 2),且两台侧车都不在时,打开读写(或以其他方式建立WAL索引),而不是只读.
由Copilot在#2519(审查v3.10.0晋升)上提出,并与开发'@ce54d5d'进行核查。 默认安装时不是发布屏蔽器 .
内容来源: MemPalace/mempalace