As far as I know after a transaction eventhough the undo_retention is 2 hours, if there is no inactive segments in undo tablespace,the segment that is responsible for keeping data until two hours will be overwritten.
Inorder to prevent snapshot too old errors,it is suggested to increase undo_retention.But I dont understand the reason?
What is the negative effect if I make undo retention=0 except the usage of flashback feature.
Assuming UNDO_MANAGEMENT=AUTO, the parameter UNDO_RETENTION is automatically tuned with 10g+. Unless you need a particular value for LOBS and/or an exaggerated Flashback policy, you can set the value to 0.