#sqlite #vfs #traits #virtual #systems #memory

sqlite-vfs

通过实现简单的 Rust 特性构建 SQLite 虚拟文件系统 (VFS)

2 个不稳定版本

0.2.0 2022年7月8日
0.1.0 2022年1月25日

#702 in 文件系统

41 个月下载量

MIT/Apache

105KB
2.5K SLoC

sqlite-vfs

通过实现简单的 Rust 特性构建 SQLite 虚拟文件系统 (VFS)。

文档 | 示例

此库是为我的特定用途构建的。它不公开 SQLite VFS 提供的所有功能(例如,内存映射文件)。如果当前状态不适合您的用途,请随时提出建议。

状态

此库仍处于 原型 状态,尚未准备好使用(可能仅限于原型)。虽然进展缓慢,但仍处于积极开发中。

  • ✅ 通过了 SQLite 的 TCL 测试套件的大部分测试。
    • ⚠️ CI 仅运行 full.test 而不是 all.test
    • ⚠️ 一些测试 被跳过。
  • ✅ 成功运行了如 do-sqlite 的实验。
  • ⚠️ 它使用了 unsafe Rust,尚未经过同行评审。
  • ⚠️ 目前尚未用于任何生产环境。

限制

  • 不支持 WAL(但正在开发中)
  • 不支持内存映射(xFetch/xUnfetch
  • 不支持加载扩展(xDl*
  • 测试目前仅在 UNIX 上运行(由于测试中使用了 std::os::unix
  • 不支持目录同步
  • 扇区大小始终为 1024
  • 不支持自定义设备特性(xDeviceCharacteristics

依赖关系

~1MB
~15K SLoC