If a table column is updated with the same value in a row, does Oracle RDBMS engine modify the data? (or) Does RDBMS engine have an optimization skipping the update, as value of that column is not changing? This was the essence of a question asked in Oracle-l list and I think, it is a good topic for further discussion. Jared Still came up with a fine method to understand this issue measuring redo/undo size. We will explore the same questions with redo log dump method in this blog entry.
Following few lines shows a test case creating a table, an index, and then populating a row in the table.
create table updtest (v1 varchar2(30)); create index updtest_i1 on updtest(v1); insert into updtest values ('Riyaj'); commit;
REDO records and change vectors