25002 — 分支事务已活动(branch_transaction_already_active)
PostgreSQL SQLSTATE 25002:分支事务已活动的来源与诊断参考。
25002 — 分支事务已活动
速览
25002 表示分支事务已经活动,范围窄于 25001,也不同于 25P02。本文只记录锁定条件定义和 18.6 核心调用扫描未发现直接报文路径的边界。
| 字段 | 值 |
|---|---|
| SQLSTATE | 25002 |
| 条件名 | branch_transaction_already_active |
| 状态 | 有效 |
| 已知存在于 | 7.4 |
| 锁定快照 | 9.0.23, 9.1.24, 9.2.24, 9.3.25, 9.4.26, 9.5.25, 9.6.24, 10.23, 11.22, 12.22, 13.23, 14.24, 15.19, 16.15, 17.11, 18.6, 19beta3 |
| 宏 | ERRCODE_BRANCH_TRANSACTION_ALREADY_ACTIVE |
| 别名 | — |
含义
它属于 Class 25,但不应作为嵌套事务或普通保存点的总称。核心 errcodes.txt 定义了宏;项目对 18.6 核心解析调用的穷尽扫描没有找到 25002 报告组。
诊断
使用精确 SQLSTATE 和事务上下文,区分分支管理 API、保存点、活动事务块和失败事务。没有核心调用点不代表可以从别的码推断报文或触发器。
处理
保留分支管理操作及其事务边界,按创建该分支的 API 处理。本批没有确认安全自然触发,不用 RAISE 代替。
源码报文模板
适用边界
本批没有为 25002 构造自然 SQL 触发器;请把它视为源码/协议边界,而不是可直接复制的复现脚本。结构化证据 · 案例导出。
作者证据 ID:identity, source-boundary。选定运行记录:—。
版本与边界
锁定目录在 7.4 已观察到该条件,并在列出的正式快照中均存在。18.6 核心调用扫描没有解析出的路径;扩展或未来源码可能增加路径。
相关
对比 25001 活动 SQL 事务、25000 事务状态无效 和 3B000 保存点异常。
来源
src.errcodes.18.6(SHA-2566e8de346643ba84aa3c9c6a73360acfc7b2dfb89162c06c08ce9bf5bcd5bbcba)src.calls.REL_18_6(SHA-2569ee8a0e81d8f0825c5c1ae45583439859a26e602bdd4ce2f2a62aa278867ccbf)