-
Notifications
You must be signed in to change notification settings - Fork 8.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DruidXADataSource不能正常工作在ORACLE上 #3707
Comments
通过 DruidXADataSource 创建的 XAConnection 是 oracle.jdbc.xa.client.OracleXAConnection 实例。 |
而通过 ORACLE 原生数据源 OracleXADataSource 创建的 XAConnection 是 oracle.jdbc.driver.T4CXAConnection 实例。 |
初步测试,把 com.alibaba.druid.util.OracleUtils#OracleXAConnection 实现改为 T4CXAConnection 就没有问题了。 |
wenshao
added a commit
that referenced
this issue
Apr 6, 2020
哪个版本改成T4CXAConnection了呢 |
哦哦 看到了 |
XA模式下Table 'seata.lock_table' doesn't exist怎么解决 |
1 task
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
测试用例:通过 DruidXADataSource 获取 XA 连接,调用 XA start
报错:
oracle.jdbc.xa.OracleXAException: XAErr (-3): A resource manager error has occured in the transaction branch. ORA-6550 SQLErr (0)
Caused by: java.sql.SQLException: ORA-06550: 第 1 行, 第 14 列:
PLS-00201: 必须声明标识符 'JAVA_XA.XA_START_NEW'
ORA-06550: 第 1 行, 第 7 列:
PL/SQL: Statement ignored
Caused by: Error : 6550, Position : 13, Sql = begin :1 := JAVA_XA.xa_start_new(:2 ,:3 ,:4 ,:5 ,:6 ); end;, OriginalSql = begin ? := JAVA_XA.xa_start_new(?,?,?,?,?); end;, Error Msg = ORA-06550: 第 1 行, 第 14 列:
PLS-00201: 必须声明标识符 'JAVA_XA.XA_START_NEW'
ORA-06550: 第 1 行, 第 7 列:
PL/SQL: Statement ignored
而相同的逻辑,使用 ORACLE 驱动包中原生的 XA 数据源 OracleXADataSource 就没有问题:
运行正常。
ojdbc 驱动:
和
都一样的结果。
ORACLE 数据库:11gR2 Express Edition
The text was updated successfully, but these errors were encountered: