I have a primary ( PRIMARYP ) and 2 standbys - 1 physical standby ( STANDBYP ) and 1 logical standby ( STANDBYL )
When I converted STANDBYL from physical to logical, a couple of new directories appeared under my FRA i.e. ONLINELOG and FOREIGN_ARCHIVELOG. Currently ONLINELOG is empty
My LOG_ARCHIVE_DEST_ID's on my STANDBYL are as such
log_archive_dest_1='LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ONLINE_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=standbyl'
log_archive_dest_2='SERVICE=primaryp ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=primaryp'
log_archive_dest_3='SERVICE=standbyp ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=standbyp'
log_archive_dest_4='LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(STANDBY_LOGFILES,STANDBY_ROLE) DB_UNIQUE_NAME=standbyl'
I can see that DEST_4 created the FOREIGN_ARCHIVELOG and is placing the primary archive logs in it ( so not to possibly overwrite the archive logs of STANDBYL itself, now going into DEST_1 )
Q1. However I assume that ONLINELOG is being created by DEST_3 and the reason it is empty is because the FAL has been able to get all the archive logs from the primary ?
Q2. Would I ever expect to see anything under DEST_3 in these circumstances eg -
If the FAL was unable to get an archive from the Primary but was able to get it from STANDBYP - would the retried archive log go into ONLINELOG or FOREIGN_ARCHIVELOG ?
Q3. If STANDBYP became primary would in STANDBYL, the archive logs go into ONLINELOGS or FOREIGN_ARCHIVELOG ?
any clarity appreciated
No I don't think I am confusing with Cascaded Desinations. In my case DEST_2 and DEST_3 simply allows STANDBYL to become primary and ship logs to PRIMARYP ( DEST_2 ) and STANDBYP ( DEST_3 )
DEST_1 allows this logical standby STANDBYL to archive its local archives to <FRA>/ARCHIVELOGS
DEST_4 allows this logical standby STANDBYL to take receipt of standby redol log archives from the primary and keep them separate from DEST_1. DEST_4 seems to create <FRA>/FOREIGN_ARCHIVELOGS
I am just a bit confused as to what creates <FRA>/ONLINELOGS and what is is used for.
I have been told that ONLINELOGS is auto created when you activate an FRA. However my primary database does not have an ONLINELOGS directory under FRA even though I have activated the FRA on it ( the ONLINELOGS directory appears under the FRA of both my standbys but in both cases this directory is empty ).
Any ideas about <FRA>/ONLINELOGS - when it is created and what bit is used for ?
The purpose of foreign archive logs is as below.
"Foreign archived redo logs are received by a logical standby database for a LogMiner session. Unlike normal archived logs, foreign archived logs have a different DBID. For this reason, they cannot be backed up or restored on a logical standby database."
Check the same here for explanation.
In your case, as you said dest2 and dest3 are out of scope.
You can now check which destination is creating logs in the specified location using below.
SELECT DEST_ID,VALID_TYPE,VALID_ROLE,VALID_NOW FROM V$ARCHIVE_DEST;
Check Data Guard Scenarios for details.
I believe you have not set up standby redo log in your DR set up. So dest 4 will not produce any logs.
Actually your dest 1 is producing the foreign logs for a logminer session.
Hope I have made somewhat clear