If the instance that provides a distributed transaction processing (DTP) service, for example XA_01
, fails, then the service fails over in the same manner as any other service. Because there is a requirement that sessions exist on exactly one instance, however, the -f
(force kill) option for database sessions always applies.
If services migrate to other instances, then you might have to force the relocation of the service back to the preferred instance after it is restarted to evenly re-balance the load on all of the available hardware. You can use data from the GV$ACTIVE_SERVICES
view to determine whether you need to relocate the DTP service.
Note:
Beginning with Oracle RAC 11g release 1 (11.1), global transactions and XA affinity replace the need for DTP services. Most XA deployments should be using global transactions with XA affinity for improved load balancing and flexibility rather than the DTP attribute.