commited data
DBAsupport.com Forums - Powered by vBulletin
Results 1 to 6 of 6

Thread: commited data

  1. #1
    Join Date
    Feb 2002
    Posts
    267
    hi folks,
    when a row is under updation, the commited data is
    stored in the rollback segment; how oracle comes to know that it should go to rollback segment. Where does oracle stores this info
    regards
    sonia

  2. #2
    Join Date
    Jan 2001
    Posts
    2,828

    Talking

    Hi Sonia

    Every segment has a header block which stores this information.

    regards
    Hrishy

  3. #3
    Join Date
    Feb 2002
    Posts
    267
    hrishy,
    u mean to say every time oracle wants to access
    the data it checks the segment header to confirm
    which row in that segment is under updataion.

  4. #4
    Join Date
    Jan 2001
    Posts
    2,828

    Talking

    Hello Sonia

    When a row is under updation the commited data is stored in the rollback segment .


    well that is not true..

    Before a transaction that modifies data is committed the old data is stored in the rollback segment.

    For each rollback segment, Oracle maintains a transaction table--a list of all transactions that use the associated rollback segment and the rollback entries for each change performed by these transactions. Oracle uses the rollback entries in a rollback segment to perform a transaction rollback and to create read-consistent results for queries.

    regards
    Hrishy



  5. #5
    Join Date
    Jan 2001
    Posts
    2,828
    Hi sonia

    My reply to your question

    a) how oracle comes to know that it should go to rollback segment

    From the Interested Transaction List (ITL) and the System Change Number (SCN)

    From the SCN It will know if it needs to recreate the blocks.
    From the ITL in the RBS it will know if the block is commited or not.


    b)Where does oracle stores this info.

    I answered it wrongly the first time my answer should have read..

    The changed block has an ITL (interested transaction list) in the block header which records information about the change i.e which rows have changed in the block together with a pointer to the RBS header (transaction table).



    (sorry hehe)


    [Edited by hrishy on 07-25-2002 at 02:27 AM]

  6. #6
    Join Date
    Feb 2000
    Location
    Singapore
    Posts
    1,758

Posting Permissions

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



Click Here to Expand Forum to Full Width