h1

ORA-16826: apply service state is inconsistent with the DelayMins property

August 4, 2009

16826, 0000, “apply service state is inconsistent with the DelayMins property”
// *Cause:  This warning was caused by one of the following reasons:
//          1. Apply service was started without specifying the real time apply
//             option or without the NODELAY option while DelayMins is zero.
//          2. Apply service was started with the real-time apply option or
//             with the NODELAY option while DelayMins is greater than zero.
// *Action: Reenable the standby database to allow the broker to restart
//          the apply service with the apply options that are consistent
//          with the specified value of the DelayMins property.

well, this error has convinced me to really start out this blog because I don’t want to spend a lot of time researching just to find out that it only takes less than a minute to fix it. i’ve encountered this error before but forgot how to troubleshoot it thus the blog.

if ever you have this error, the simple fix would be to get on data guard manager line-mode (dgmgrl, i prefer command lines rather than gui’s because it gives more control over what’s happening) and disable the configuration and reenable it. see below for details

 

prim-oradb:dgmgrl
DGMGRL for Solaris: Version 10.2.0.3.0 – 64bit Production

Copyright (c) 2000, 2005, Oracle. All rights reserved.

Welcome to DGMGRL, type “help” for information.
DGMGRL> connect sys
Password:
Connected.
DGMGRL> show configuration

Configuration
  Name:                dg_iq_oradb
  Enabled:             YES
  Protection Mode:     MaxPerformance
  Fast-Start Failover: DISABLED
  Databases:
    prim_oradb – Primary database
    std_oradb – Physical standby database

Current status for “dg_iq_oradb”:
Warning: ORA-16608: one or more databases have warnings
DGMGRL> show database verbose ‘prim_oradb’

Database
  Name:            prim_oradb
  Role:            PRIMARY
  Enabled:         YES
  Intended State:  ONLINE
  Instance(s):
    oradb

  Properties:
    InitialConnectIdentifier        = ‘prim_oradb’
    LogXptMode                      = ‘ASYNC’
    Dependency                      = ”
    DelayMins                       = ’0′
    Binding                         = ‘OPTIONAL’
    MaxFailure                      = ’0′
    MaxConnections                  = ’1′
    ReopenSecs                      = ’300′
    NetTimeout                      = ’180′
    LogShipping                     = ‘ON’
    PreferredApplyInstance          = ”
    ApplyInstanceTimeout            = ’0′
    ApplyParallel                   = ‘AUTO’
    StandbyFileManagement           = ‘MANUAL’
    ArchiveLagTarget                = ’0′
    LogArchiveMaxProcesses          = ’2′
    LogArchiveMinSucceedDest        = ’1′
    DbFileNameConvert               = ”
    LogFileNameConvert              = ”
    FastStartFailoverTarget         = ”
    StatusReport                    = ‘(monitor)’
    InconsistentProperties          = ‘(monitor)’
    InconsistentLogXptProps         = ‘(monitor)’
    SendQEntries                    = ‘(monitor)’
    LogXptStatus                    = ‘(monitor)’
    RecvQEntries                    = ‘(monitor)’
    HostName                        = ‘prim_oradb’
    SidName                         = ‘oradb’
    LocalListenerAddress            = ‘(ADDRESS=(PROTOCOL=tcp)(HOST=prim-oradb.com)(port=1522))’
    StandbyArchiveLocation          = ‘/opt/Oraarch/arch/oradb/’
    AlternateLocation               = ”
    LogArchiveTrace                 = ’0′
    LogArchiveFormat                = ‘arch_%t_%s_%r.log’
    LatestLog                       = ‘(monitor)’
    TopWaitEvents                   = ‘(monitor)’

Current status for “prim_oradb”:
SUCCESS

DGMGRL> show database verbose ‘std_oradb’

Database
  Name:            std_oradb
  Role:            PHYSICAL STANDBY
  Enabled:         YES
  Intended State:  ONLINE
  Instance(s):
    oradb

  Properties:
    InitialConnectIdentifier        = ‘std_oradb’
    LogXptMode                      = ‘ASYNC’
    Dependency                      = ”
    DelayMins                       = ’0′
    Binding                         = ‘OPTIONAL’
    MaxFailure                      = ’0′
    MaxConnections                  = ’1′
    ReopenSecs                      = ’300′
    NetTimeout                      = ’180′
    LogShipping                     = ‘ON’
    PreferredApplyInstance          = ”
    ApplyInstanceTimeout            = ’0′
    ApplyParallel                   = ‘AUTO’
    StandbyFileManagement           = ‘MANUAL’
    ArchiveLagTarget                = ’0′
    LogArchiveMaxProcesses          = ’2′
    LogArchiveMinSucceedDest        = ’1′
    DbFileNameConvert               = ”
    LogFileNameConvert              = ”
    FastStartFailoverTarget         = ”
    StatusReport                    = ‘(monitor)’
    InconsistentProperties          = ‘(monitor)’
    InconsistentLogXptProps         = ‘(monitor)’
    SendQEntries                    = ‘(monitor)’
    LogXptStatus                    = ‘(monitor)’
    RecvQEntries                    = ‘(monitor)’
    HostName                        = ‘std-oradb’
    SidName                         = ‘oradb’
    LocalListenerAddress            = ‘(ADDRESS=(PROTOCOL=tcp)(HOST=std-oradb.com)(port=1522))’
    StandbyArchiveLocation          = ‘/opt/Oraarch/arch/oradb/’
    AlternateLocation               = ”
    LogArchiveTrace                 = ’1′
    LogArchiveFormat                = ‘arch_%t_%s_%r.log’
    LatestLog                       = ‘(monitor)’
    TopWaitEvents                   = ‘(monitor)’

Current status for “std_oradb”:
Warning: ORA-16826: apply service state is inconsistent with the DelayMins property

DGMGRL> disable configuration
Disabled.
DGMGRL> show configuration

Configuration
  Name:                dg_iq_oradb
  Enabled:             NO
  Protection Mode:     MaxPerformance
  Fast-Start Failover: DISABLED
  Databases:
    prim_oradb – Primary database
    std_oradb – Physical standby database

Current status for “dg_iq_oradb”:
DISABLED

DGMGRL> enable configuration
Enabled.

DGMGRL> show configuration

Configuration
  Name:                dg_iq_oradb
  Enabled:             YES
  Protection Mode:     MaxPerformance
  Fast-Start Failover: DISABLED
  Databases:
    prim_oradb – Primary database
    std_oradb – Physical standby database

Current status for “dg_iq_oradb”:
Warning: ORA-16610: command ‘Broker automatic health check’ in progress
DGMGRL> show configuration

Configuration
  Name:                dg_iq_oradb
  Enabled:             YES
  Protection Mode:     MaxPerformance
  Fast-Start Failover: DISABLED
  Databases:
    prim_oradb – Primary database
    std_oradb – Physical standby database

Current status for “dg_iq_oradb”:
SUCCESS

DGMGRL>

About these ads

17 comments

  1. Hi,

    This has saved lot of my time. ORACLE Metalink only mentions the error and we don’t get a direct clue as how to solve it. This is exactly what needs to be done.

    Thanks a Lot !


  2. Great, worked perfectly, thanks!


  3. Guys if you couldnt enable hen enable it in the primary and the above issue will get fixed automatically


  4. THANKS!
    First I used the gui from Grid control, but did not work.
    Your blog saved the day.


  5. THANKS!
    It worked perfectly!!!


  6. Thank you kindly for your post on ORA-16826.
    It helped me today!


  7. Hi,

    Thanks for sharing this blog. It helps me to resolve the issue.


  8. Great blog, keep in mind to do the disable / enable from Primary node or the enable from standby node will fail.


    • Hi Koka,

      I think this is the reason why in my example I logged onto the Primary database (prim-oradb). But thanks for pointing this out!


  9. This caused the following error, and now I’ve log my configuration:

    ORA-16541: database is not enabled

    Configuration details cannot be determined by DBMGRL

    How do I fix this???!!!


  10. Correction, Now I’ve lost my configuration….


  11. I did mine from the standby node. Is it safe to run it from the primary node at this point?


    • Yes. Please do it from the primary node.


  12. Thanks, that seemed to clear my immediate issue up, but I’m still experiencing the original problem.


  13. I finally resolved my issue. After changing the sys password, I only copied the orapwd file over to the dr server, but we have a rac environment, so I also had to copy the file to the primary and dr server on the other side. Thank you for your quick response!


    • I’m glad this post has helped you.

      Cheers!


  14. Great Post… There is no hit on metalink for this error. Though the solution is very simple, hadn’t i googled this page, it could have taken quite some time to fix it up.



Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: