Q:

OCP: Which two are true about LGWR?

A. LGWR always writes to the redo logs each time a COMMIT occurs. 
B. LGWR always writes to the redo logs each time a ROLLBACK occurs. 
C. LGWR never writes a single COMMIT to the redo logs. 
D. LGWR may write to the redo logs when DBWR writes a dirty buffer. 
E. Multiple COMMITs can be written by LGWR in the same write request. 
F. LGWR always writes to the redo logs when DBWR writes a dirty buffer.

The answer is DE.
But why? 
Why A and F is wrong?

A:

Why A and F is wrong?

It's not obvious, but the Oracle Concepts guide does have explanations. You should check it out.
Anyway....

A. LGWR always writes to the redo logs each time a COMMIT occurs.

A user committing a transaction is one of the things which triggers LGWR to write to the redo log. So it might seem that A is correct. But the Concept Guide says: "When activity is high, LGWR can use group commits". If several users commit their transactions while LGWR is still writing to the redo log those commits are kept in the redo buffer and then all of them are written when LGWR frees up. 
So, there isn't one write for every commit. That's why E is correct.

F. LGWR always writes to the redo logs when DBWR writes a dirty buffer.

The Concept Guide says: "Before DBW can write a dirty buffer, the database must write to disk the redo records associated with changes to the buffer (the write-ahead protocol). If DBW discovers that some redo records have not been written, it signals LGWR to write the records to disk, and waits for LGWR to complete before writing the data buffers to disk." 
So F is not true because the LGWR does not always have to write when DBWR writes, just sometimes. That's why D is correct. 

