Resolving Inconsistent Properties in Data Guard Broker

This article tries to resolve InconsistentProperties arising out of mismatch of parameter values between spfile, Data Guard Broker configuration and the database.

Soon after configuring Data Guard Broker, we may find various issues that makes broker not to run properly. The most common issue being the mismatch between the parameter values present in spfile, broker configuration and the database.

This is seen when executing show configuration

DGMGRL> show configuration;

Configuration - voice_dg

  Protection Mode: MaxPerformance
  Databases:
    voice  - Primary database
    voices - Physical standby database
      Warning: ORA-16792: configurable property value is inconsistent with database setting

Fast-Start Failover: DISABLED

Configuration Status:
WARNING

Inconsistent properties can also be found using show database command

DGMGRL> show database '<db_unique_name>' 'InconsistentProperties'
Example
DGMGRL> show database 'voice' 'InconsistentProperties'
INCONSISTENT PROPERTIES
    INSTANCE_NAME      PROPERTY_NAME   MEMORY_VALUE   SPFILE_VALUE   BROKER_VALUE
            voice   ArchiveLagTarget             60             60              0

Data Guard Broker log file drc${ORACLE_SID}.log (under location background_dump_dest) contains sufficient details to know which are the incosistent parameters.

Warning: Property 'ArchiveLagTarget' has inconsistent values:METADATA='0', SPFILE='', DATABASE='0'
Warning: Property 'LogArchiveMinSucceedDest' has inconsistent values:METADATA='1', SPFILE='', DATABASE='1'
Failed to connect to remote database voice. Error is ORA-12514
Failed to send message to site voice. Error code is ORA-12514.
Troubleshooting

Connect to primary database and use show parameter to see the value of the parameters

SQL> show parameter archive_lag_target

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
archive_lag_target                   integer     0

If the database uses spfile, use strings command to see the value of the parameter in the spfile

[oracle@voice dbs]$ strings spfilevoice.ora | grep -i archive_lag_target
*.archive_lag_target=0

archive_lag_target is set in spfile in primary site

Connect to standby database and use show parameter to see the value of the parameters

SQL>  show parameter archive_lag_target

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
archive_lag_target                   integer     0

Use strings command to see the value of the parameter in the spfile

[oracle@oraten dbs]$ strings spfilevoice.ora | grep -i archive_lag_target
[oracle@oraten dbs]$

archive_lag_target is set not in spfile in standby site

Resolution

To update the spfile on the standby site, execute the alter system command

SQL> alter system set archive_lag_target = 1 scope = both;

System altered.

The error disappears

DGMGRL> show database 'voice' 'InconsistentProperties'
INCONSISTENT PROPERTIES
   INSTANCE_NAME   PROPERTY_NAME   MEMORY_VALUE   SPFILE_VALUE   BROKER_VALUE

DGMGRL>

show configuration displays a clean output

DGMGRL> show configuration;

Configuration - voice_dg

	Protection Mode: MaxPerformance
  Databases:
    voice  - Primary database
    voices - Physical standby database

Fast-Start Failover: DISABLED

Configuration Status:
SUCCESS

Hope this helps...

Comments