How to identify a session started by a remote distributed transaction? (文档 ID 332326.1)
Applies to:
Oracle Database - Enterprise Edition - Version 8.1.7.4 to 12.1.0.1 [Release 8.1.7 to 12.1]
Information in this document applies to any platform.
Goal
In a distributed database environment it may be required to identify a session
started by a remote distributed transaction, especially to enable tracing. This
note provides a method to do that.
Solution
The following query can be used to identify the session started by a
distributed transaction
from v$session
where saddr in (select k2gtdses from sys.x$k2gte );
The fixed table x$k2gte contains 2PC Global Transaction Entry. The column
k2gtdses in x$k2gte has the session state object and this can be mapped to the
saddr column of v$session.