Hi All,

During data modification according to my perspective the following actions are performed.

1. pulls data from the data file to the database buffer cache if the data is not available in the buffer.
2. user is modifiying the data and issues commit.
3. changes gets logged into redo log file.
4. after some interval, chkpt occurs - the LGWR pushes the data from the redo buffer to redo data file.
5. then DBWR writes the data from the data buffer cache to the data file.

So DBWR will be performed after the LGWR finishes its job.

If the above statements are true, then I have some doubt in instance recovery.

If the datafile has all the latest changes then what happens at instance recovery stage. The changes made are available in the redo log file and datafile as well.

Correct me if I am wrong

Thanks in advance.