|
|
|
|
Re: What happens when one of the dbw0 processes fail for whaterver reason? [message #495131 is a reply to message #494729] |
Thu, 17 February 2011 14:18 |
jxh461
Messages: 185 Registered: March 2005
|
Senior Member |
|
|
My line of thinking is that the dbw0 that has failed will simply not be able to right any blocks to a datafile. Not sure if this would constitute a media failure but I imagine that the other dbw0 processes will continue to write to the datafiles. As long as there is at least one dbw0 running the system would not fail.
I honestly did not have a straight answer for this but I have not heard from anyone who does. If that asshole who interviewed me finds this, I would like him to share his experience.
|
|
|
Re: What happens when one of the dbw0 processes fail for whaterver reason? [message #495354 is a reply to message #495131] |
Fri, 18 February 2011 06:39 |
John Watson
Messages: 8962 Registered: January 2010 Location: Global Village
|
Senior Member |
|
|
I have to say that seems seems like a perfectly reasonable interview question to me. Any competent DBA will know what happens if a background process fails. I won't tell you the answer: you can find out by doing the test. Start up an instance, and kill the dbw0 process. The result will be obvious! Full details will be in your alert log.
|
|
|
Re: What happens when one of the dbw0 processes fail for whaterver reason? [message #495858 is a reply to message #495354] |
Tue, 22 February 2011 20:17 |
jxh461
Messages: 185 Registered: March 2005
|
Senior Member |
|
|
Here is what I found.
After killing the dbw0 process I did the following update and got the error.
>update emp set sal = sal * 1.1;
ERROR at line 1:
ORA-03135: connection lost contact
Process ID: 14285
Session ID: 170 Serial number: 7
/* in alert_log */
Tue Feb 22 20:49:31 2011
Completed: ALTER DATABASE OPEN
Tue Feb 22 20:52:46 2011
Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_pmon_14165.trc:
ORA-00471: DBWR process terminated with error
PMON (ospid: 14165): terminating the instance due to error 471
Instance terminated by PMON, pid = 14165
/* in orcl_pmon_14165.trc */
Background process DBW0 found dead
Oracle pid = 10
OS pid (from detached process) = 14183
OS pid (from process state) = 14183
dtp = 0x60017660, proc = 0xc1335a10
Dump of memory from 0x0000000060017660 to 0x00000000600176C0
...
...
...
error 471 detected in background process
ORA-00471: DBWR process terminated with error
*** 2011-02-22 20:52:46.245
PMON (ospid: 14165): terminating the instance due to error 471
This means that the process monitor will detect that the dbw0 is missing
and shut down the instance. This answers my question as to what happens
when a single dbw0 process is on the machine. I do not have the means to
test what happens in case one of many dbw0 fails. If someone can try this
I will be greatful to learn.
|
|
|
|
Re: What happens when one of the dbw0 processes fail for whaterver reason? [message #495899 is a reply to message #495858] |
Wed, 23 February 2011 02:41 |
John Watson
Messages: 8962 Registered: January 2010 Location: Global Village
|
Senior Member |
|
|
Add more database writers by adjusting the db_writer_processes parameter (it is a static parameter).
You'll find that some other background processes can be killed, but most will result in the instance terminating. I've never made a comprehensive list. This is why I love Oracle: a simple test that takes two minutes can save hours of speculation. When you aren't sure of something, try it out.
|
|
|
Re: What happens when one of the dbw0 processes fail for whaterver reason? [message #496402 is a reply to message #495899] |
Sun, 27 February 2011 19:26 |
jxh461
Messages: 185 Registered: March 2005
|
Senior Member |
|
|
I was hesitant to alter the parameter because I thought it was dependent on the number of cpu. Anyway I decided to go boldly
where I have never been and added another db_writer process and when I killed one the entire instance terminated. So the simple
answer is that when one db_writer process goes down the instance will be terminated. Thanks to all especially JW .
|
|
|
|