If a program opens a cursor and tried to fetch values, in the meantime it was deadlocked with some other transaction.
Now, the rollback process happens as a recovery of deadlock
after the roll back, what would be the status of the CURSOR whcih was opened earlier ?
Can anyone please clarify ..?
Joined: 23 Nov 2006 Posts: 19270 Location: Inside the Matrix
When a rollback occurs, all of the updates for that unit of work are "undone".
You would need to either have restart code that would re-sync and open a new cursor to continue or reload the data from the beginning of the run an restart from the beginning.
If you are experiencing a deadlock (rather than a timeout), it is probably a design error and correcting the code will eliminate the deadlock. If you are unable or unwilling to correct the design that permits the deadlock, you might avoid the deadlock by scheduling.