Which process resolves the distributed transaction failure in Oracle

Recoverer Process (RECO) in Oracle

Recoverer Process (RECO)

The recoverer process is a background process that helps resolve the failures in distributed transactions. The RECO process automatically checks with other databases involved in the in-doubt transaction. It automatically makes connections with the other databases and resolve the issues & removing database pending transaction tables.

Note:

  1. If open_links parameter is set to 0, then no distributed transactions are allowed

Default open links in database is 4.

SQL> show parameter open_links


NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
open_links integer 4
open_links_per_instance integer 4

Disable or Enable the RECO process

-- To disable RECO:

ALTER SYSTEM DISABLE DISTRIBUTED RECOVERY;

-- Enable RECO
ALTER SYSTEM ENABLE DISTRIBUTED RECOVERY;

Check RECO backgroup process



SQL> select sid, process, program from v$session s join v$bgprocess using (paddr) where s.status = 'ACTIVE' and program like '%REC%';
SID PROCESS PROGRAM
---------- --------------- ------------------
865 5832_38936 ORACLE.EXE (RECO)

Leave a Reply