At some point, you must have encountered a “Snapshot too old” error when running a huge batch transaction. Then you find that you may have to restart the process all over again when 80 percent of the transaction was complete when the error occurred.
Ask your DBA to create a large rollback segment for these large batch-oriented transactions. But in order for your long-running transaction to use this “large” rollback segment, you have to explicitly specify it prior to the start of the transaction. Use the DBMS_TRANSACTION package to specify the rollback segment:
DBMS_TRANSACTION.USE_ROLLBACK_SEGMENT('RBS_BIG');
In this case, RBS_BIG is the name of the large rollback segment.