Here's an annoying one. I'm using a C++ application to perform MANY oracle d/b transactions using stored procs, and recently, with an increase in data size, I continually get errors informing that the rollback segments are full. The DBA's have increased them but won't anymore due to their already large size.
They have also informed me that one reason they are filling up is because each stored proc used returns data in a ref cursor, and these hold data in the rollback segment for consistant data readings.
The question is, how do you release the ref cursor from holding the rollback segment open?
Ending the transaction should help using commit or rollback and closing the cursor using close. You may also be selecting more data than is necessary and you may be able to break a large transaction down into smaller transactions especially ifa lot of data is being changed.