Log switch frecuency so fast
In have a RAC compose by 2 instances. Two weeks ago I had problems with my redologs because the group number was not enough. That is why I increased from 3 group of online redolog to 10 each one of 50MB. From yesterday on I noticed that the log switch occur every 20 seconds and its provoque that the disk group where I'm archiving them gets full faster than ever. When I say faster I mean really really fast.
Could someone, please help me out.
Thanks in advance.
user13007224 wrote:
In have a RAC compose by 2 instances. Two weeks ago I had problems with my redologs because the group number was not enough. That is why I increased from 3 group of online redolog to 10 each one of 50MB. From yesterday on I noticed that the log switch occur every 20 seconds and its provoque that the disk group where I'm archiving them gets full faster than ever. When I say faster I mean really really fast.
Could someone, please help me out.
Thanks in advance.In addition to Cocksan's comments, if you are filling up your archivelog destination, increasing the SIZE of your redologs won't really help. Doing that will cause you to SWITCH less frequently but the resulting archivelogs will be bigger. If you a generateing redo at the rate of 100mb/sec (just to pull a number out of the air) your archivelog destination will be consumed at the rate of 100mb/sec, regardless of the number or size of your online redo logs. You need to find out what is causing so much redo in the first place.
Similar Messages
-
Forcing log switch every minute.
Hi,
I want to force a log switch every one minute how can i do it?
What should be the value of fast_start_mttr_target?
Does a checkpoint force a log switch?
Do i need to only reduce the size of redo log to a small size?
How can i make sure that a log switch will happen after a particular time period for ex. 1Minute,2 minute.
I want to force a log switch every minute because i want to send the archive redo log to standby database so that not more than 1 minute changes in database are lost. I am using 10g R2 on windows 2003 server.
I am unable to find a solution. Any help?Hi,
I want to force a log switch every one minute how
can i do it? yes with archive_lag_target parameter
http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/onlineredo.htm#sthref934
What should be the value of fast_start_mttr_target?incremental or normal checkpoint "fast instance recovery/downtime concerned" introduced from oracle 8, this feature is enabled with the initialization parameter FAST_START_MTTR_TARGET in 9i.
fast_start_mttr_target to database writer tries to keep the number of dirty blocks in the buffer cache low enough to guarantee rapid recovery in the event of a crash. It frequently updates the file headers to reflect the fact that there are not dirty buffers older than a particular SCN.
http://download.oracle.com/docs/cd/B19306_01/backup.102/b14191/rcmtunin004.htm#sthref1110
Does a checkpoint force a log switch? log switch force to checkpoint ,checkpoint never force to log switch.
Do i need to only reduce the size of redo log to a
small size?depends yours SLA how far you can risk the data ,but it will effect yours database performance ,recommended to set the size of log which should imply the log swtich after filling to 20 mins,its a trade off risk vs perofrmance.
How can i make sure that a log switch will happen
after a particular time period for ex. 1Minute,2
minute.
want to force a log switch every minute because i
want to send the archive redo log to standby database
so that not more than 1 minute changes in database
are lost. I am using 10g R2 on windows 2003 server.
am unable to find a solution. Any help?
http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/onlineredo.htm#sthref934Khurram -
High Commit @ Log switch
Dear Oracle Experts,
From Oracle EM, high commit is observed in one of our database (10g with dataguard) when it is performing a archive log switch. Currently archivelog size is 50MB and in average one log switch per hour.
According to Oracle EM, the following SQL seems to cause the problem.
SELECT IDX_ID FROM DR$INDEX WHERE IDX_OWNER# = :B2 AND IDX_NAME = :B1
What could be the problem? How can I fix this?
Thanks in advance.I don't know how EM generates that information.
However, what would be happening is this :
1. Some sessions do some significant DML (this could be the CTX_DDL.SYNC_INDEX OR could be other INSERT/UPDATE/DELETE etc operations)
2. Many other sessions do very small but very many transactions
3. Both types of sesssions issue COMMITs
4. When they issue COMMITs , they wait on the 'log file sync' event (This is in the COMMIT class of events). Essentially, they are waiting for LGWR to write redo to disk (from the redo log buffer in the SGA to the redo log files on disk).
4a. The LGWR, if it cannot write fast enough to disk, may, itself, wait on the 'log file parallel write' wait
5. On completion of the redo writes, LGWR posts back to the sessions
6. The sessions then proceed with the next set of operations. Now, these could be Queries.
7. EM attempts to identify the SQLs that were waiting on 'log file sync' a short while ago. It had tracked the SIDs , now it joins to V$SQL based on HASH_VALUE+ADDRESS or based on SQL_ID.
8. By now, the SQL_ID for the current operation of those sessions is pointing to the Queries they are running.
9. EM now reports the SELECT as the operation that the session was doing.
Since step 4 and step 6 are at different points in time and EM is possibly running seperate queries, it is likely to be running getting two different "images" of the operations those sessions are doing -- from two different points in time. -
Database log switch and WLS connection pool relation
Hi,
We have been facing WLS JDBC connection pool disable and suspension issue very frequently in our environment and as a work around have implemented multi-datasource configuration (fail over method).
But we need to know the root cause for the same and want to fix the issue too.
We have tried many options like increasing no. of processes and transaction on Database, fine tune the weblogic datasource but still we could not isolate the issue.
Recently we have been advised to minimize the log switch on database front and increase the redo log size. Not sure if this will help in isolating the issue or not.
So we are Looking forward for the comments and suggestions on what would be the relationship b/w datasource and log switch be and if someone have faced this issue and resolved the same by fine tuning the database and minimizing the log switch.
We are using WLS 10.3.3.0
-Rohitturn on jdbc logging. The server log should be showing the troubles WLS is having
while testing connections and trying/failing to make replacement connections. -
Is there a way to identify manual log switches?
Hi!
A while ago I upgraded a 10g database to 11.2.0.2 64 Bit Windows.
During the Upgrade we realized that redo logs were configured really small (~10MB) what resulted in a lot of log switches (a few hundred per day). So we adjusted redo log size to 100MB and set archive_lag_target to 1800.
The amount of log switches went down a little but less far than we expected it. After further analysing the situation we recognized that Oracle is switching logs far before reaching the 100MB log size (and also far before reaching 1800s). All the archived logs have a size of about 15MB. I know that 11g invented something like "preemptive log switching" that switches logs round about 20% before reaching the maximum value (if I remember it correctly..). But switching already at 15% of the maximum size seems strange to me...
I couldn't find any helpful stuff on Google or Metalink about that topic but today I had a different idea: what if it's the application software that's doing manual log switches?
(I have no idea why it should do that but I can remember that the application user does require the sysdba privilege - don't ask me why, I didn't write it, I won't defend it...)
So I checked the alert log but unfortunately I had to realize that there is no difference between an automatic switch and a manual one (only alter system archive log... does get an extra line).
So my questions are:
1) Does anybody know a way of distinguishing between an automatic log switch and a manual one? Is there a table or another logfile where this information is recorded?
2) Has anybody experienced a similar situation where Oracle is switching the logs way before reaching the maximum size?
Best regards,
Marcuslebigmac wrote:
1) Does anybody know a way of distinguishing between an automatic log switch and a manual one? Is there a table or another logfile where this information is recorded?
Off the top of my head - I think the only way to do a manual log switch is to issue "alter system switch log file", and I think that any "alter system" command is written to the alter log in you version of Oracle. (I really ought to check both statements before posting this, but I've been up since 2:30 am).
2) Has anybody experienced a similar situation where Oracle is switching the logs way before reaching the maximum size?
It's very common with recent versions of Oracle when private redo threads come into play; but your example seems a little exaggerated. The log file switch has to start when there is enough space left in the log file for all the public and all (or maybe it's the previously used - i'll have to check my book) private redo threads. You could check x$kcrfstrand to see what this sizes look like: http://jonathanlewis.wordpress.com/?s=private+thread
Regards
Jonathan Lewis -
Dataguard- scheduling manual log switch to have minimal lag
Hi,
I need some suggestion..
Recentry I had configured a physical standby for my 10g production database in maximum performance mode.
Now , to reduce the lag between the primary and standby , I put one cron job which will do a manual log switch(alter system switch logfile) in every 30 minutes.
and it is doing the job..!
Does this have any impact on my databases...?
Looking forward for your invaluable responce...
Regards
Noushad
DBAMaybe you should let Oracle do it's job, configure this parameter which signifies that no buffer will remain dirty (in the cache) for more than 1800 (or whatever you want) seconds:
LOG_CHECKPOINT_TIMEOUT = 1800:p -
Redo logs switches too frequent after migrating the db to different server
Dear Experts,
A couple of days back, we migrated our database (belonging to EBusiness Suite) to a different server, to get good performance benefit. The database is 10.2.0.4 and it was migrated from AIX 5.3 to Linux x86 64.
Users are happy with the performance, but I am getting below errors in the alert logs
a) Thread 1 cannot allocate new log, sequence 498
b) Private strand flush not complete
c) ORACLE Instance PROD - Can not allocate log, archival requiredOracle support is saying the issue is coming because of too frequent log switches. I am wondering how the log switches has become frequent in the new server. In the old server it was about 10 mins for every switch, now it is as frequent as 1 minute?
Any idea, what could be the reason behind this? Do you agree this issue is coming because frequent log switches?
Thanks
ARSKanchana Devasurendra wrote:
Hi ARS,
Please check the following item in your new database.
1. log_archive_max_processes Most properbly value set for this parameter is low ( may be it's set to 1.) Please increase up ( 4)I am curious to know what makes you think 4 is the right magic number for log_archive_max_processes - after all, he's only got one archive destination.
Regards
Jonathan Lewis
http://jonathanlewis.wordpress.com
http://www.jlcomp.demon.co.uk
A general reminder about "Forum Etiquette / Reward Points": http://forums.oracle.com/forums/ann.jspa?annID=718
If you never mark your questions as answered people will eventually decide that it's not worth trying to answer you because they will never know whether or not their answer has been of any use, or whether you even bothered to read it.
It is also important to mark answers that you thought helpful - again it lets other people know that you appreciate their help, but it also acts as a pointer for other people when they are researching the same question, moreover it means that when you mark a bad or wrong answer as helpful someone may be prompted to tell you (and the rest of the forum) what's so bad or wrong about the answer you found helpful. -
Wonder if anyone can help me with a question?
I am new to data guard and only recently setup my first implementation of a primary and standby Oracle 11 g database.
It's all setup correctly, i.e no gaps sequences showing, no errors in the alert logs and I have successfully tested a switch over and switch back.
I wanted to re-test the archive logs were going across to the standby database ok, unfortunately I performed an alter system switch logfile on the standby database instead of primary.
No errors are reported anywhere, no archive log sequence gaps or errors in the alert logs, but I am wondering if this will cause a problem the next time I have to failover to the standby database?
Apologies for my lack of my knowledge I am new data guard and only been a DBA for a couple of years, have not had time to read up on the 500 page Data Guard book yet.
Thanks in AdvanceFirst you have to know what happens when log switch occurs either manually or internally.
All data & changes will be in online redo log files, once log switch occurred either automatic or forcefully, these information from online redo log files will be dumped to archives.
Now tell me. Where will be the online redo? There is no concept of online redo data on standby, in case of real time apply you will have only standby redo log files, even you cannot switch standby redo log files.
First this command on standby won't work, it's applicable only for online redo log files. So onions redo exists/active only in primary.
So nothing to worry on it. Make sure environment is sync prior to performing switchover.
Hope this helps.
Your all questions why unanswered? Close them and keep the forum clean. -
Question about frequent log switches
I support an Oracle 10g database (10.2.0.4) and database activity has increase to the point that, during the heaviest parts of the day, log switches are occurring too frequently (15 - 20 times per hour!). We also utilize Data Guard to replicate the database to our DR site. We currently have 2 log groups with 2 membes in each group.
I understand that I can tackle this issue 2 ways: either to increase the size of my redo log files (they are currently at 50 Meg each), or I can add additional redo log groups to the database.
I would like to get some opinions on whether on solution is better than the other, or the pros and cons of each course of action.
Thank you in advance for your advice with my question!CowTown_dba wrote:
Thanks for helping me to understand my true problem. The issue is that because of the frequent log switches, database performance is degrading.Maybe that's the cause, maybe it isn't.
Users are complaining about slow response. So if I add more groups it will buy the archiver extra time but it will not help with the slow response issue.Depends on the root cause of the slow response issue. That has yet to be determined. While it may be true that your car has a short in the electrical system and your car doesn't start, it doesn't necessarily follow that the car doesn't start because of the short in the electrical system.
>
I really appreciate everyone contributing to my understanding of the issue, and helping clarify the root problem so that I can fix it the first time around.
You guys rock! -
I have seen in many RMAN backup scripts that a manual log switching is performed in first line of the script? What is it purpose, just to write changes needed to reconstruct the DML/DDL statements to online redo logfiles and start the archiving process if db is running in archive log mode?
918868 wrote:
I have seen in many RMAN backup scripts that a manual log switching is performed in first line of the script? What is it purpose, just to write changes needed to reconstruct the DML/DDL statements to online redo logfiles and start the archiving process if db is running in archive log mode?That could be the only reason but even that is not needed as RMAN would do a log switch automatically to push the current redo log file to make it's archive log and include it in the backup.
Aman.... -
Hello all,
From Oracle Docs:
"A log switch on the primary database triggers a log switch on the standby database, causing ARCn processes on the standby database to archive the standby redo log files to archived redo log files on the standby database."
Does the ARCH process on the primary send a message to the RFS process on the standby server, and then the RFS process sends a message to the ARCH process on the standby server telling the standby server ARCH to archive the current standby redo log?
With regards992801 wrote:
Hello all,
From Oracle Docs:
"A log switch on the primary database triggers a log switch on the standby database, causing ARCn processes on the standby database to archive the standby redo log files to archived redo log files on the standby database."
Does the ARCH process on the primary send a message to the RFS process on the standby server, and then the RFS process sends a message to the ARCH process on the standby server telling the standby server ARCH to archive the current standby redo log?
With regardsWhat is the version you are using?
As simple, Redo data transmitted from the primary database will be received by RFS on the standby, From here RFS process writes the redo data to either standby redo logs or to archived redo logs. -
Hello Everybody,
Solaris ver : 10
Oracle ver : 10.2.0.1.0
I am gettin gthe following Messages in my Alert Log..
Sun Oct 25 02:38:46 2009
Thread 1 cannot allocate new log, sequence 1709
Private strand flush not complete
Current log# 4 seq# 1708 mem# 0: /u04/oradata/inora/redo/redo04.log
Current log# 4 seq# 1708 mem# 1: /u03/oradata/inora/ctrl/redo04.log
Thread 1 advanced to log sequence 1709
Current log# 1 seq# 1709 mem# 0: /u04/oradata/inora/redo/redo01.log
Current log# 1 seq# 1709 mem# 1: /u03/oradata/inora/ctrl/redo01.log
Sun Oct 25 02:39:06 2009
Thread 1 cannot allocate new log, sequence 1710
Private strand flush not complete
Current log# 1 seq# 1709 mem# 0: /u04/oradata/inora/redo/redo01.log
Current log# 1 seq# 1709 mem# 1: /u03/oradata/inora/ctrl/redo01.log
Thread 1 advanced to log sequence 1710
Current log# 2 seq# 1710 mem# 0: /u04/oradata/inora/redo/redo02.log
Current log# 2 seq# 1710 mem# 1: /u03/oradata/inora/ctrl/redo02.log
Sun Oct 25 02:39:53 2009
Thread 1 cannot allocate new log, sequence 1711
Private strand flush not complete
Current log# 2 seq# 1710 mem# 0: /u04/oradata/inora/redo/redo02.log
Current log# 2 seq# 1710 mem# 1: /u03/oradata/inora/ctrl/redo02.log
Thread 1 advanced to log sequence 1711
Current log# 3 seq# 1711 mem# 0: /u04/oradata/inora/redo/redo03.log
Current log# 3 seq# 1711 mem# 1: /u03/oradata/inora/ctrl/redo03.logCan this be resolved by Increasing the Sizes of Online Redo Logs..
Any Help Appreciated..
Thanks & Regards,
Prosenjit Mukherjee.Dear
If you see such messages then better to go for either of the 2 things.
1- increase the size of the redo log files,
2- increase the groups of the redo logs.
Also ideally there should be around max. 4 log switches per hour, so you can calculate that and act accordingly.
cheers
Mehmood
url: http://mehmoodm.blogspot.com -
Dear all,
In my oltp system,the redo size for per member is 20m,and the average log switch is in 10-15 mints.But today i saw a disturbing information in my alert_log......
Thread 1 advanced to log sequence 221335
Current log# 1 seq# 221335 mem# 0: O:\ORACLE\ORADATA\TEST\REDO_A\REDO01_A.LOG
Current log# 1 seq# 221335 mem# 1: O:\ORACLE\ORADATA\TEST\REDO_B\REDO01_B.LOG
Thread 1 advanced to log sequence 221336
Current log# 3 seq# 221336 mem# 0: O:\ORACLE\ORADATA\TEST\REDO_A\REDO03_A.LOG
Current log# 3 seq# 221336 mem# 1: O:\ORACLE\ORADATA\TEST\REDO_B\REDO03_B.LOG
Thread 1 advanced to log sequence 221337
Current log# 4 seq# 221337 mem# 0: O:\ORACLE\ORADATA\TEST\REDO_A\REDO04_A.LOG
Current log# 4 seq# 221337 mem# 1: O:\ORACLE\ORADATA\TEST\REDO_B\REDO04_B.LOG
Thread 1 advanced to log sequence 221338
Current log# 5 seq# 221338 mem# 0: O:\ORACLE\ORADATA\TEST\REDO_A\REDO05_A.LOG
Current log# 5 seq# 221338 mem# 1: O:\ORACLE\ORADATA\TEST\REDO_B\REDO05_B.LOG
Thread 1 cannot allocate new log, sequence 221339
All online logs needed archiving
Current log# 5 seq# 221338 mem# 0: O:\ORACLE\ORADATA\TEST\REDO_A\REDO05_A.LOG
Current log# 5 seq# 221338 mem# 1: O:\ORACLE\ORADATA\TEST\REDO_B\REDO05_B.LOG
What is the reason behind these 5 log switches at a time?I'm very much worried with this matter....
Any suggestion......................?????
Warm Regards,Hi.
I guess you have a very high load values on your system... inserts / updates... Your database is running in archivlog mode. The archiver process could not backup the redo log files in that time period that the database take to round robin the log switches.
Its not a big deal you will gain a wait enqueue for database changes. You can increase the logfile size to avoid this problem. but keep in mind that in recovery case the recovery take more time.
*T -
Continiously log switching, one node unavailable
We run 4-node RAC 9.2.0.4 on Solaris 9. Recently, one of nodes crashed due to hardware failure. After some time since this crash, i executed the command forcing log switching within the cluster: 'Alter system archive log current'. After this command, our redo logs started switching continuously - every 5-6 seconds. Generated archived logs where almost empty - they contained only a few blocks, often only one - header, i suppose. The problem was resolved only after the thread of the died node was disabled with command 'Alter database disable thread 4;'.
I made a few experiments to investigate this problem. It seems that every command forcing redo log switch in a RAC leads to such excessive log switching, when one of nodes in cluster is unavailable. I tested 'Alter system archive log current', ARCHIVE_LAG_TARGET parameter, and the command 'Alter system switch logfile', executing from an Oracle job. In all these cases redo logs began switching continuously when the commands had beed executed or it was time to switch logs by ARCHIVE_LAG_TARGET parameter. Is there any possibility to force redo logs switch in all threads in a cluster without any problems, when one node is unavailable? We would like to switch logs every 10 minutes - to limit the amount of data that can be lost in case of whole cluster failure...
Thanks in advance
Alexey Sergeyev
[email protected]Joel, thank you for replay. I tested forcing log switch with one node down on different ways - within a job or without one. The command 'Alter system archive log current' was executed without any job from SQL*Plus command line. This triggered continuously log switching on working nodes. The parameter ARCHIVE_LAG_TARGET does'nt produce any job - at least this job is'nt shown in DBA_JOBS. This parameter leads to continuously log switching on survived nodes, when one node goes down.
I tried make a job, one per instance, with 'Execute immediate ''Alter system switch logfile''' command inside. Executing of such a job also triggered continuously log switching on working nodes...
It seems that forcing log switching in a cluster works only when all is fine - all nodes are running. Is it Oracle bug? Or is it expected, but not documented behaviour?
Alexey Sergeyev
[email protected] -
Log switch must occur every 15 to 30 minutes: good practice or myth?
I often heard that it is recommended to size redo log files in a way that Oracle performs a log switch every 15 to 30 minutes.
I would like to know if it is true or if it is a myth ?
I would like to know the best way for sizing redo log files ?
What happen exactly in the database when a log switch occurs ?
Please help me to clarify these concepts.So we can say that a log switch induces a full checkpoint. That's correct ?Well, no :-) . Indeed with a log switch the checkpoint event is generated requesting DBWR to flush the buffers from the checkpoint-queue to the data files but this is not a full checkpoint and it would not update the datafile and control file headers. The Full Checkpoint happens with the alter system checkpoint ( as shown) , database being shutdown properly.
Please see the below code which shows the same,
Connected to:
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> select checkpoint_change# from V$datafile;
CHECKPOINT_CHANGE#
3507400
3507400
3507400
3507400
3507400
3507400
3507400
7 rows selected.
SQL> select * from V$log;
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS
FIRST_CHANGE# FIRST_TIM
1 1 91 52428800 1 NO CURRENT
3507399 13-APR-10
2 1 89 52428800 1 NO INACTIVE
3486253 13-APR-10
3 1 90 52428800 1 NO INACTIVE
3486256 13-APR-10
SQL> alter system switch logfile;
System altered.
SQL> select * from V$log;
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS
FIRST_CHANGE# FIRST_TIM
1 1 91 52428800 1 NO ACTIVE
3507399 13-APR-10
2 1 92 52428800 1 NO CURRENT
3507906 13-APR-10
3 1 90 52428800 1 NO INACTIVE
3486256 13-APR-10
SQL> select checkpoint_change# from V$datafile;
CHECKPOINT_CHANGE#
3507400
3507400
3507400
3507400
3507400
3507400
3507400
7 rows selected.
SQL> select checkpoint_change# from V$datafile;
CHECKPOINT_CHANGE#
3507400
3507400
3507400
3507400
3507400
3507400
3507400
7 rows selected.
SQL> alter system checkpoint;
System altered.
SQL> select checkpoint_change# from V$datafile;
CHECKPOINT_CHANGE#
3507936
3507936
3507936
3507936
3507936
3507936
3507936
7 rows selected.
SQL>HTH
Aman....
Maybe you are looking for
-
Web report - print layout - store of input
Hi, the customer wants to have the grid lines and grey boxes on his printout as see on the screen. We are using internet exporer and when we print there is only the text and and the figures on the paper - no lines that give orientation. When the cust
-
I recently looked at a question about how not to sync the iPad to a different computer... But I can't find edit to start anything.. Please help me
-
Oracle Work flow/e-Biz Events
Hi All, Need some info regarding Oracle Workflow and E-Business Suite R12 events. We have defined a business event in a E-Biz R12 and its subscription is of type 'Launch Work Flow' to launch a node(activity) of the work-flow. This activity is not the
-
My iPhone don't backup automatically
All options are on but why my iPhone doesn't upload picture to iCloud?
-
Settings of application server.
When reports are run using application server 10g, the font size and output changes as compared to the output achieved on running the reports in report builder. Please, suggest some remedy.