Why extra standby redo log group?

  • From: Yong Huang <yong321@xxxxxxxxx>
  • To: oracle-l@xxxxxxxxxxxxx
  • Date: Fri, 3 Apr 2009 18:53:48 -0700 (PDT)

Oracle recommends one more group for standby redo logs (SRL) on the physical 
standby than the primary online logfile groups: 

http://download.oracle.com/docs/cd/B19306_01/server.102/b14239/create_ps.htm#SBYDB00426

"Step 2   Determine the appropriate number of standby redo log file groups.
Minimally, the configuration should have one more standby redo log file group 
than the number of online redo log file groups on the primary database....
(maximum number of logfiles for each thread + 1) * maximum number of threads
Using this equation reduces the likelihood that the primary instance's log 
writer (LGWR) process will be blocked because a standby redo log file cannot be 
allocated on the standby database. For example, if the primary database has 2 
log files for each thread and 2 threads, then 6 standby redo log file groups 
are needed on the standby database."

I think it says that if you have groups #1 and #2 on primary and #1, #2 on 
standby, and if LGWR on primary just finished #1, switched to #2, and now it 
needs to switch to #1 again because #2 just became full, the standby must catch 
up, otherwise the primary LGWR cannot reuse #1 because the standby is still 
archiving the standby's #1. Now, if you have the extra #3 on standby, the 
standby in this case can start to use #3 while its #1 is being archived. That 
way, the primary can reuse the primary's #1 without delay.

I did a test on 10.2.0.4 with two groups on primary and three SRL groups on 
standby. I keep doing "alter system switch logfile" on primary, which changes 
current log between #1 and #2. However, I see only two of the three SRL groups 
on standby, #1 and #2, being used, just like on primary; #3 is never used. It 
makes no difference whether log_archive_max_processes is set to 2 or 10. This 
seems to contradict what documentation says. However, I barely have any DML or 
DDL so log switching is not triggered because the file is full, but triggered 
manually by my command. Does that matter?

Again, my question is, What's exactly the extra SRL group used for on standby?

Yong Huang


      
--
//www.freelists.org/webpage/oracle-l


Other related posts: