-
只有删除的轮次「上次同步」不前进:删除数只并进了项目级汇总,未写进每表结果,只有删除的周期时间戳一直不动。
-
大字段溢出上限按 UTF-8 字节计算:原先按每字符 3 字节保守估算,纯 ASCII 的值到三分之一配额就误报超限;现在按实际写盘字节计数。
-
Oracle/DM LogMiner 写 PG 族目标首条 DML 失败:重做文本里的数值被当字符串绑定,PostgreSQL 拒绝隐式转换;现在数值目标列解析为 BigDecimal 再绑定,文本目标列不受影响。
-
LogMiner 会话泄漏:START_LOGMNR 成功后建游标失败时没有 END_LOGMNR,连接带着挖掘上下文回到池里,下一个借用者会继承;现在异常路径也结束会话。
-
Oracle LogMiner 半读事务被冲刷:批大小或停止请求落在 CSCN 窗口中间时会先冲刷半读事务再推进水位,未读的行永久丢失;现在只冲刷完整读完的游标。
-
PG 逻辑解码 NULL 覆盖目标值:流式行缺少基线后新增的列时,原实现绑定 NULL 覆盖目标值;现在跳过并计数,每表告警一次。
-
SQL Server 大字段删除写错溢出文件:删除事件的溢出文件无读者,批量删除大行会填满溢出目录;现在只溢出插入与更新镜像。
-
SQL Server 源端水位倒退无限重试:源库还原或改指向更早的库时,倒置区间每轮都被拒绝却不 park;现在判定为 PURGED 并提示从新快照重基线,无法识别的形态仍交给 SQL Server 显式报错。
-
PG 事务里的删除落在刷新前的绑定上:事务内删除后重插同键,期间元数据刷新会产生新绑定,删除与插入落在两个桶,先写后删导致静默丢行;现在刷新时把缓冲的删除移到新绑定。
-
test_decoding 的引号标识符被截断:表名带冒号、列名带方括号时事件落错表或列;现在引号内的分隔符不参与切分。
-
PG 基线期间槽滞留无感知:基线可能跑数小时,采样一次也执行不到,源库 WAL 会静默堆积到写满磁盘;现在基线期间每 30 秒采样一次,超过 sync.cdc.pg.wal-retention-warn-bytes(默认 4 GiB)在面板标红并写 WARN。openGauss 无 pg_lsn 时不显示、也不发注定失败的查询。
-
复制槽丢失后静默建新槽续跑:已提交位点存在但槽不见时现判定为 PURGED 并停在错误上,不再继续推进。释放槽的日志区分「本就不存在」与「仍被消费者占用」,删除任务、切换策略、更换源库三条路径都尽力释放。
-
LogMiner 失败周期重放已提交事务:失败后退避期间从位点库回读已提交 SCN 作为下一轮锚点,不再逐条打「refusing to rewind」。
-
SQL Server 捕获实例消失无告警、计数虚增:捕获实例被删除时静默停止采集,现在明确告警并说明恢复方式;没有捕获实例的等待状态不再每轮累加「已跳过」计数。
-
SQL Server 2012/2014 删视图和例程语法不兼容:按这两个版本能理解的语法生成删除语句。
-
目标表重名检测受区域设置影响:表名折叠改为 Locale.ROOT,土耳其语等区域下不再误判重名或漏判。
-
目标列校验被无列名行打断:元数据里没有 COLUMN_NAME 的列行直接跳过,整次校验不再因此失败。
-
预检拒绝被读成源端删除:目标名过长的表被预检剔除后,变更检测曾把它当成源端已删除并执行 DROP TABLE;现在记录为「本轮未处理」,不再删除目标表与快照。
-
无法解析的列清洗规则让整表停住:替换串在首次匹配时才解析,非法规则会抛出异常;现在编译规则时就校验并跳过,与非法正则同样处理。
-
DATE/TIME 主键两侧渲染不一致:删除同步与审计修补要求同一逻辑键在两侧渲染一致,LocalDate/LocalTime 曾分别按 epoch day / nano-of-day 与毫秒比较,驱动返回类型不同时会误判整表被删并清空目标;现在统一为毫秒,与 LocalDateTime/Timestamp 同一空间。
-
模拟 upsert 目标重复记录更新:安全余量重发的相同行照样报「1 行影响」,变更日志反复记录同一次修改;现在 UPDATE 带「任一列真的不同」守卫,重放空操作不再计数,目标含大字段等不可比类型时整表退回原行为。
-
项目删除被自己的租约释放阻塞:删除流程不再等待自身租约释放,删除立即返回。
-
并发升级请求重复启动 helper:一键升级的并发重启请求只放行一个。
-
升级探测地址错误:探测重启进程实际绑定的地址,而不是发起进程的地址;回滚脚本记录新的 java 进程号,便于终止。
-
AI 回复在 SSE 特殊行后丢失:流里出现 id: / retry: 或空行时保留已收到的回复;草稿缓存键改用 provider 端点而不只是 id。
-
Oracle 11 生成的标识名超长:identity 名称控制在 30 字节以内。
-
Oracle 分区表注释读不到:把分区表纳入注释查询的类型列表。
-
SQL*Plus 终止符误删:只剥离独立成行的 /,不再误伤语句中间或字符串里的斜杠。
-
审查页重定向对象名未编码:对象名经百分号编码后再拼进重定向地址。
-
错误页多出一条英文弹窗:不再把框架的英文原因短语渲染成第二条错误信息。
-
非中文界面显示中文更新说明:说明含中文且界面语言不是中文时,只留一句提示与发布页链接。
-
「连接已失效」显示哨兵键:连接健康检查的 error.db.health.invalid 换成人话,不再把键名挂到标题上。
-
核对行数弹窗提示不全:只列已有同步记录的表,不再提示不存在的条目。
-
详情页采集卡片与批量创建判定不一致:两处共用同一套 supportedFor 规则;崖山项目不再渲染必然探测失败的卡片。
-
批量创建的采集方式不随源库收窄:切换源连接即时收窄可选采集方式,无脚本时服务端同样收窄。
-
基线异常路径可能误删位点:租约已丢失时不再删除位点行、不再摘错误标记;键集分块的亚毫秒时间边界保精度,NULL 字面量断点解为「无边界」。
-
Gitee 更新检查因单条记录解析失败整页作废:created_at 解析失败只跳过该条,不再作废整个 release 列表。
-
窄屏与手机宽度下的三处溢出:品牌名不再截成「Jy…」,任务列表分页条自动折行,英文界面在 390px 下不再吞掉左侧的「共 N 条」。
-
中英文案不同步:中文提示与英文同进同退,句末标点对齐;异常任务按数量分支显示,空状态不再重复提示。
-
CDC 探测结果深色主题不可读:补深色主题配色,对比度不再低到 2.9:1。
-
容器镜像不含本版本更新说明:设置页「本版本更新内容」不再为空;新增测试确保 POM、Dockerfile 与 .dockerignore 三者一致。
-
脚本与消息映射漏项:页面脚本统一带版本参数;自定义脚本不再自抄采集方式与文案映射,新增采集方式不会被前端当成无标签丢弃;CDC 检查消息补齐浏览器消息映射。