无损迁移含 NUL 的来源文本并恢复 PostgreSQL 断点 #14
Reference in New Issue
Block a user
Delete Branch "codex/postgres-nul"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
全量迁移在一条来源摘要包含 NUL 时失败,PostgreSQL text 无法接收该字符,导致 source_records 的 COPY 事务回滚。本修复保留原始内容并允许从同一固定 SQLite 快照继续恢复。
验证:本提交 CI964/job1061 已成功(aliyun-ces-control,ces-control 标签):完整192项测试通过,包含9项实际 PostgreSQL 集成用例,wheel 构建、安装及入口检查通过。此前最终源码16项 PostgreSQL 专项检查也通过。未在本机测试或构建,git diff --check 通过。
运行状态:生产迁移与独立验收现已完成。完整21表数量及还原内容SHA-256全部一致,21主键/26外键/7唯一约束/4CHECK均有效,历史ID序列、GIN索引、PG与SQLite统计/标签/详情比较、含NUL来源摘要3684518原文还原、跨会议拒稿后录用历史及原生全文查询通过。原foundry-postgres实例未重启,foundry-core readiness为200,临时自动维护设置已恢复。独立验收单元4d7a32b301194ac99b63e3ddd65fcd13退出码0;报告/data/paper-index/collected/postgres-postcheck.json状态passed,2026-11-07T06:50:20Z验收。主库指针/data/paper-index/postgres-primary.json已写入,指向foundry_data.research;SQLite保留0444只读备份并有匹配切换标记。首次NUL失败与后续验收控制器因临时单元回收而停止的现场均保留,未重跑已完成迁移;已独立恢复维护并完成验收。当前3,526,999条论文记录,原目标最终去重、剩余来源导入和会议覆盖仍未完成。按用户要求暂停完整goal并保留待办。本PR已由用户手动合并,bot未合并或推送main。
base main;head codex/postgres-nul(4e62710)。已由用户手动合并;未开启自动合并。