• A higher MINEXTENTS value, this will avoid new transactions wrap the the extents freed by the large transaction therefore the read consistency wont be lost
• Larger extent sizes, this will avoid the large transaction to extend in several extents therefore the possibility of extents being wraped by other transaction is decreased
• A higher OPTIMAL value, avoid dynamic extent allocation, in other words keep large extents or high number of extents (both of above points)
Higher RBS may and may NOT help, in a busy system it wont help that is for sure. For example you have 10 RBS and they are all active, one with the large transaction (let's call it RBS01) and the others with smaller transactions but higher number of transactions
imagine this:
1. there is a long select going and it uses the before image in RBS01
2. the large transaction commits
3. a new transaction comes in
4. Oracle assigns RBS01 to this new transaction because Oracle 's RBS allocating algorithm is that it assigns the transaction to the RBS with less active transaction
5. the new transaction overwrites the before image of previous large transaction
6. the long select lost the trace of before image, 1555 occurs
In an active/busy system this will happen because of the small transactions (and many) so more RBS does not really help
Also the question is asking of how to avoid overwritting extents in RBS since A & E are related of tuning the number of extents they should be more correct