文档解释
ORA-00164: distributed autonomous transaction disallowed within migratable distributed transaction
Cause: A request was made by the application to start a distributed autonomous transaction when the application was in a migratable distributed transaction.
Action: Roll back or commit the current distributed transaction first.
ORA-00164: distributed autonomous transaction disallowed within migratable distributed transaction 错误意味着在可迁移分布式事务中不允许执行分布式自治事务。
常见案例
当在一个可移植的分布式事务中执行一个分布式的自主事务时将出现此错误。这会发生在用于更新本地数据库的分布式事务下。
正常处理方法及步骤
1.检查是否有同步更新,如果有,使用同步更新替换分布式自动事务。
2.确保在发出ORA-00164错误之前,每个表上仅做一次增量报道。
3.检查网格数据库中是否有短期回滚段,如果有,确保它们正确被提交。
4.尝试合并update语句以实现批量更新影响最小。
5.检查是否有多余的autonomous transactions,如果有,删除它们。