MYSQL RR 下 UPDATE 子查询快照差异

迁移特征 update_subquery_rr_snapshot 的规则事实、精确目标横向结论与可执行验证路径。产品家族相似性不作为精确版本结论的依据。

pendingcriticallowmy.txn.update_subquery_rr

场景说明

该场景属于“事务、并发与运行语义”,适用于 sql。权威状态:待核验,不进入权威统计。

正向识别示例

以下均来自规则库中 should_hit=true 的合成公开示例,不是客户代码。

UPDATE account SET balance=(SELECT amount FROM staging WHERE id=account.id) WHERE id=1
UPDATE task SET state=1 WHERE id IN (SELECT id FROM queue WHERE ready=1)

21 个精确目标版本 / 模式

目标支持度证据等级公开边界深入核对
OceanBase 4.3.5 MySQL 模式partialdoc_based未登记额外公开说明,按来源与验证步骤复核。改造点
openGauss 6.0 A 模式partialdoc_based未登记额外公开说明,按来源与验证步骤复核。改造点
openGauss 6.0 B 模式(Dolphin)partialdoc_based未登记额外公开说明,按来源与验证步骤复核。改造点
PostgreSQL 16 + orafce 4.16partialdoc_based未登记额外公开说明,按来源与验证步骤复核。改造点
PostgreSQL 16partialdoc_based未登记额外公开说明,按来源与验证步骤复核。改造点
TiDB 8.5partialdoc_based未登记额外公开说明,按来源与验证步骤复核。改造点
展开 15 个 unknown / undeclared 结论
达梦 DM8unknownunverified当前事实源不足,不推断兼容。
GaussDB 505(ORA 模式)unknownunverified当前事实源不足,不推断兼容。
GBase 8sunknownunverified当前事实源不足,不推断兼容。
GoldenDB V6unknownunverified当前事实源不足,不推断兼容。
瀚高 HGDB 4.5unknownunverified当前事实源不足,不推断兼容。
人大金仓 KingbaseES V8unknownunverified当前事实源不足,不推断兼容。
OceanBase 4.2.5 MySQL 模式unknownunverified当前事实源不足,不推断兼容。
OceanBase 4.2.5 Oracle 模式unknownunverified当前事实源不足,不推断兼容。
OceanBase 4.3.5 Oracle 模式unknownunverified当前事实源不足,不推断兼容。
openGauss 5.0 A 模式undeclaredunverified当前事实源不足,不推断兼容。
磐维 PanWeiDB 2.0unknownunverified当前事实源不足,不推断兼容。
磐维 PanWeiDB 3.0 A 模式unknownunverified当前事实源不足,不推断兼容。
PolarDB(Oracle 兼容)2.0unknownunverified当前事实源不足,不推断兼容。
神通数据库 7unknownunverified当前事实源不足,不推断兼容。
TDSQL Boundlessunknownunverified当前事实源不足,不推断兼容。

改造与验证路径

推荐方向

case_by_case · 显式锁定参与子查询的数据,或拆分读取与更新并评估改用 RC

库侧

按目标支持面使用锁定读/联接重写并保留影响行数断言 · 风险 manual

应用侧

拆为带版本号的乐观并发更新和有界重试 · 风险 manual

验收步骤

双会话在 RR/RC 下交错提交,核对影响行数、最终值和重试路径

公开来源