Look at v$transaction - used_ublk, used_urec undo blocks and records used for updates that are not array-based, each record is roughly equivalent to one change to a table or index block. For example, if you update one row, changing non-null columns that are in three indexes, you will get 7 undo records: One for the table, two for each index. The view also has start_time to tell you when the transaction started, and ses_addr to get you back to the owning session (v$session.saddr) Regards Jonathan Lewis http://www.jlcomp.demon.co.uk/faq/ind_faq.html The Co-operative Oracle Users' FAQ http://www.jlcomp.demon.co.uk/seminar.html Public Appearances - schedule updated Dec 23rd 2004 ----- Original Message ----- From: "John Dunn" <jdunn@xxxxxxxxx> To: <Oracle-L@xxxxxxxxxxxxx> Sent: Tuesday, January 04, 2005 1:08 PM Subject: How to identify large transactions I believe that some developers sql is generating large transactions possibly due to lack of commit statements. How can I identify these large transactions and the sql responsible? -- //www.freelists.org/webpage/oracle-l -- //www.freelists.org/webpage/oracle-l