Bi File Truncation

Mike

Moderator
Dear all,

I have one doubt about bi file. bi files contains committed and uncommitted transactions. suppose if we truncate bi file .Is there will be an impact of loss of data. Because truncating means we are cutting bi file to make its size small.


Is any impact on loss of database or trasaction of user?
How can we recover if after Truncate data loss?
Why we need bi file to truncate?


Please Clarify me.

Awaiting your response.

Thanks and regards
Mike
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
The term "truncating the BI file" does suggest the possibility of data loss. But the proutil dbname -C truncate bi command doesn't merely zero out the BI extent(s) and return the variable extent to a small size. (If it did, it would cause not just data loss but also logical and physical database corruption.)

The truncate bi command reads the data, called "BI notes" or "recovery log notes", and applies them to the blocks in the out-of-date data extents in the database, applying the changes of committed transactions and rolling back the changes of uncommitted transactions. Once the data extents are up to date the BI notes are no longer needed and the BI file can be truncated safely.

Here is a good explanation of the BI file, the checkpoint process, and database crash recovery. It was given by Gus Björklund of Progress Software at the PUG Challenge Americas 2013 conference.
Slides: http://pugchallenge.org/downloads2013/224_bi_checkpoints_crashes_v03.pdf
Audio: http://pugchallenge.org/downloads2013/audio/224_bi_checkpoints_crashes_v03.mp3
 
Top