FATAL-1651: Set trigger firing failed

The article explains how to resolve issue pertaining to APPLY crash with TFO(Trigger Fire Once) Parameter set in the replication

Problem Details

Problem Statement

Apply Crashes with TFO issue

Applicable Error Code

FATAL-1651: Set trigger firing failed

Affected Versions

Replicate Versions and Oracle Database version 11.2.0.2 and 11.2.0.3

Affected Platforms

Platform Independent

 

Problem Description

Post database upgrade from version 11.2.0.3 to version 11.2.0.4 APPLY process crash with "FATAL-1651: Set trigger firing failed. Note that _APPLY_TFO_11202 requires Oracle Database 11.2.0.2." 

Solution

Value of parameter APPLY._APPLY_TFO_11202 is set to YES. Changing the parameter value to NO and restarting APPLY process resolved the Issue. i.e: APPLY._APPLY_TFO_11202 = NO

Possible values of the parameter "_APPLY_TFO_11202" are yes|no|auto . It can be set to AUTO meaning by default Dbvisit Replicate will try to enable it and if not possible then we create a warning.

Further explanation:

TFO stands of Trigger fire once - they control whether we try to enable the fire-once (by default, we do). It's an attribute of trigger you have to set after it's created (it's not part of the DDL). And fire-once=YES is actually the default setting for a new trigger.