Standby v$archived_log

It happened last week, that one of my colleague came to me in a hurry and said that the archived logs are not getting applied on standby (Oracle 10gR1).  When I went and checked the standby database, everything was OK.  It applied till the last archived log.  On the primary database side though, the status was ‘NO’ for few of the archive logs

Standby:

SQL> SELECT SEQUENCE#, ARCHIVED, APPLIED FROM V$ARCHIVED_LOG WHERE SEQUENCE# > 11210 ORDER BY SEQUENCE#;

SEQUENCE# DEST_ID ARC APP
———- ———- —
11211 YES YES
11212 YES YES
11213 YES YES
11214 YES YES
11215 YES YES
11216 YES YES
11217 YES YES
11218 YES YES
11219 YES YES

Primary:

SQL> SELECT SEQUENCE#, ARCHIVED, APPLIED FROM V$ARCHIVED_LOG WHERE DEST_ID = 2 AND SEQUENCE# > 11210 ORDER BY SEQUENCE#;

SEQUENCE# DEST_ID ARC APP
———- ———- —
11211  YES YES
11212  YES YES
11213  YES NO
11214  YES YES
11215  YES NO
11216  YES YES
11217  YES YES
11218  YES NO
11219  YES YES

 I did a search on metalink and came across this document ‘Note:263994.1This is what mentioned as cause :

“The cause of the problem is that the APPLIED column of V$ARCHIVED_LOG on the primary is not always updated. If the sequence number you look at was actually sent as a GAP (could not be sent originally and was later sent by an ARCH process as part of a FAL request).

In such a case the APPLIED column for that sequence number will not be updated. “

The conclusion is that, we cannot fully trust the v$archived_log on primary server.

Leave a Reply