Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: When I COMMIT....

Re: When I COMMIT....

From: G Quesnel <dbaguy_ott_at_yahoo.com>
Date: 6 Nov 2006 07:36:07 -0800
Message-ID: <1162827367.498872.117640@m73g2000cwd.googlegroups.com>


One of two things will typically happen, depending on the timing of events...
when you updated data (insert/update/delete), the affected data blocks will be updated in memory but not necessarily on the datafile itself (this is not significant). The important part matching entries will be added to redo log, initially to the redo log buffer, and eventually flushed to the redolog OS file. The crucial part is that the change(s) will be associated with a transaction number that is also recorded in the redo log (buffer and later file). Note that various updates from multiple transactions can be mixed together in the redolog buffer/file. Your whole issue boils down to, was the commit recorded in the redolog file (OS level).
If yes, then the database server comes back up, the transaction will be re-applied to the data file(s). If the commit statement did not get recorded, and say the data block had already been flushed from memory to data file, then the change(s) will get rolled out / undone, when the instance is brought back up.

I don't know if you would be able to mine the redolog file to see which transactions were rolled back.
Also, you can turn logging off on a table, which would affect the above described behaviour.

hth Received on Mon Nov 06 2006 - 09:36:07 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US