ORA-24774,oracle不同用户操作同一个库报错

FuDeRong 2023-04-03 22:30:19

前置条件:Oracle数据库XA事务

A用户下存在a、b两张表

B用户拥有对A用户下操作b的权限

有以下两个服务,T1、T2

T1服务使用A数据源操作表a,开启XA事务

T2服务使用B数据源操作表b,开启XA事务

进度:

客户这边报错,但是我不能复现这个问题,请问大家知道什么样的情况下会出现这个问题吗,感觉网上的资料也好少,急急急急,求求哪位大佬点播以下,送花花

报错日志:

oracle.jdbc.xa.OracleXAException: XAErr (-3): A resource manager error has occured in the transaction branch. ORA-24774 SQLErr (0)
    at oracle.jdbc.xa.OracleXAResource.checkError(OracleXAResource.java:1114)

Caused by: java.sql.SQLException: ORA-24774: 无法切换至指定的事务处理

    at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:509)
    at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:456)
    at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:451)
    at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:1040)
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:550)
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:268)
    at oracle.jdbc.driver.T4CTTIOtxen.doOTXEN(T4CTTIOtxen.java:171)
    at oracle.jdbc.driver.T4CXAResource.doTransaction(T4CXAResource.java:820)
    at oracle.jdbc.driver.T4CXAResource.doCommit(T4CXAResource.java:457)
    at oracle.jdbc.xa.client.OracleXAResource.commit(OracleXAResource.java:626)
    ... 18 common frames omitted
Oracle查阅错误代码:(不知道怎么复现这个问题)

ORA-24774: cannot switch to specified transaction

Cause: The transaction specified in the call refers to a transaction created by a different user.

Action: Create transactions with the same authentication so that they can be switched.

...全文
97 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

17,126

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧