Results 1 to 2 of 2
  1. #1
    Join Date
    Oct 2003
    Location
    Brazil
    Posts
    30

    Unanswered: set transaction isolation level serializable

    Hi,

    Would issuing SET TRANSACTION ISOLATION LEVEL SERIALIZABLE be a way of preventing a given group of statements to run through a "snapshot too old" exception ? In other words, my question is: if the problem is that the whole procedure or transaction wasn't able to recover the rollback segment of a datablock that was changed after the beginning of the first statement of this procedure/transaction - knowing that the result will not actually reflect the new reality of the database, if simply avoiding the "snapshot too old" exception would satisfy the user, would it be a way to get around the message ?

    Thanks,
    Abraham

  2. #2
    Join Date
    May 2004
    Location
    Dominican Republic
    Posts
    721
    No, setting a transaction SERIALIZABLE can indeed introduce more ORA-01555. When you set a transaction SERIALIZABLE, you're basically telling Oracle that every statement at the point in time you set it, will see the data as that time. This will make Oracle look more for undo segments that belong to possible changed data blocks.

    The way to get around this message is to size the UNDO accordingly.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •