Rust 基础
稳定类型、Schema、解析器、HIR 与关系 IR。
路线图
实现顺序为垂直推进。已完成 62 项。编号引擎序列止于 73;其后的协调器、列存与 schema 演进工作亦已完成。可串行化隔离、并发写者以及 MCP 仍属规划或暂缓内容。
稳定类型、Schema、解析器、HIR 与关系 IR。
4 KiB 槽页、有界缓冲池、堆插入 / 扫描与重开。
事务生命周期、版本化 WAL、LSN / pageLSN 与提交持久化。
启动分析、重做历史、逆序 undo 与崩溃尾处理。
惰性写者所有权、可重试 commit / rollback 与 before-image undo。
静止检查点、单调逻辑 LSN 与有界 WAL 代际回收。
上下文 NULL 类型、三值逻辑与显式 IS NULL。
INSERT / UPDATE / DELETE、稳定 RowId 与受影响行结果。
限定列、别名、自连接与 nested-loop 执行。
规范表编码、SHA-256 指纹,以及打开时的身份校验。
Page v4/v5 CRC32C、WAL v4 校验和与解码 fuzz。
ORDER BY、全局聚合与内存 GROUP BY。
Page v5 slot generation、墓碑复用与过期定位符检测。
确定性 first-fit,以及返回当前 RowId 的 UPDATE 搬迁。
事务性创建 / 插入 / 点查,以及混合页与分裂恢复。
精确 (key, RowId) 删除、仅合并再平衡与根收缩。
持久 IndexCatalog,以及事务性 create_index 回填。
已注册索引与堆及 SQL DML 保持一致。
等值与 IS NULL 谓词可选择点查 IndexScan。
显式 ANALYZE 快照,以及确定性的点访问路径代价。
语言中立的二进制分帧。已冻结;当前服务器拒绝 v1 帧。
清单启动、TCP 会话与专用数据库工作线程。
双向 TLS、证书主体与按表操作范围。
独立 Go Protocol v2 客户端与生成的类型化绑定。
基于 Protocol v2 的同步 netbadb-sdk::remote 客户端。
离线目录与语句检查;当前机器契约为 Inspection JSON v7。
基于 SDK Schema Spec v1 或 v2 的只读语言服务器。
可复现的热缓存基准,不改变引擎行为。
带代价的有界 Int64/UInt64 范围扫描。
被拒绝的连接候选不再分配合并行。
经过分析的 Scan × Scan INNER JOIN 可选择简单等值 HashJoin。
顺序扫描中每个不可变堆页只做一次完整校验。
NLJ 与 HashJoin 在候选循环前一次性绑定列位置。
连接谓词借用列与字面量标量,仅计算结果为自有值。
NestedLoopJoin 跳过不可能匹配任何右行的左探测。
精确候选计数可替代完整 NestedLoopJoin 内层循环。
查询计划仅解码所需堆列;DML 仍使用完整行。
恒等与唯一投影移动已有值,而不是克隆。
单独的全局 COUNT(column) 在 SeqScan 上统计存在性,不物化行。
一次精确堆扫描可在多个 COUNT 输出间共享存活行计数。
借用式 Filter 求值、流式 SeqScan/Filter/Project,以及 COUNT 特化路径。
WAL Prepare 与独立协调日志,用于两个及以上本地写存储。
PartitionCatalog v1 范围分区,支持精确裁剪与原子行迁移。
同步 LSM 表存储,含 MVCC、SSTable、flush 与分层 compaction。
至多 256 行的批处理,覆盖 SeqScan、Filter、Project、Limit、Aggregate 与 HashJoin 探测。
显式隔离句柄;隐式语句使用读已提交。不提供可串行化。
经过分析的 Scan × Scan 等值 INNER JOIN 可对右侧有序索引做点探测。
堆点探测代价与 managed_page_count 顺序扫描比较保持一致。
Database::open_catalog 无需外部 TableDef 即可重建完整 schema。
在原生 SQL 上提供事务性 Heap CREATE TABLE。
原生 SQL 前端支持精确预备的 DROP TABLE name。
单列非唯一 Heap BTree 的 CREATE INDEX 与 DROP INDEX。
定宽整数、Float32/Float64 与 Bytes;不做隐式数值拓宽。
当前原生线协议。服务器与 Rust/Go 客户端仅使用 v2。
Heap 上的改名、可空 ADD、受限 DROP 与 SET/DROP NOT NULL,覆盖原生 SQL。
无间隙 DatabaseCommitSeq 与已发布的 Heap/LSM 可见性向量。可重复读固定首次向量。
同步流水线、日志压缩,以及带批 Prepare/Commit/Change Stream 屏障的显式组提交。
可选 ColumnarScan、变更流、Base+Delta、compaction、惰性 I/O 与调用方驱动的维护。Heap 与 LSM 仍为权威存储。
由调用方驱动的检查与单步维护。没有后台调度器或定时器。
当前 netbadbd 启动契约。清单 v1–v10 均被拒绝。
本地 Unix 域运维协议,用于状态、自适应控制与显式物理设计批准。
已删除 netbadb-pgwire 与 netbadbd --postgres。Native Protocol v2 是唯一的数据库网络前端。
可串行化隔离、并发写者与更广的连接枚举仍属后续工作。
暂缓:官方 MCP SDK 目前超过 Rust 1.85 MSRV。
通用 ALTER COLUMN TYPE、单侧 / Text 范围代价,以及更广的 HashJoin 适用范围。
可串行化隔离、并发写者与跨进程文件锁
PRIMARY KEY / UNIQUE / FK 约束、IF EXISTS,以及仅索引扫描
通用 ALTER COLUMN TYPE、LSM/分区 DDL 组合,以及任意 DML 之后的 ALTER
完整 SQL:外连接、子查询、HAVING、DISTINCT、窗口函数
外部排序落盘、PostgreSQL 协议兼容,以及完整 information_schema
MCP 适配器(受 MSRV 限制暂缓)、SQL EXPLAIN、网络 CDC,以及磁盘格式迁移