On Tue, Jun 30, 2009 at 09:08:17AM -0700, Jeremy Archer wrote:
> Hi Darren,
> 
> Thanks for replying.  
> 
> I am confused then. What is the purpose of incorporating the birth txg 
> in the arc hash?   

Consider:

        TXG     action
         5      write of first block of File A, assigned DVA 5, birth TXG 5
        10      file A is deleted
        15      write to first block of File B, assigned DVA 5 birth TXG 15

The two blocks are distinct, and are cached seperately in the ARC.

Cheers,
- jonathan

> How do 2 different files find a shared block?
> 
> Obviously, the first one  has to read it from disk, and subsequently remember 
> the 
> birth txg in addition to to the dva.  
> 
> How does the 2nd file know what is the birth txg of the desired block?
> Does each file have do an initial read from disk to learn the birth txg of 
> the block?
> 
> I am looking for easy to understand metaphores, 
> such as "cache entries are valid for current txg only"... 
> but it looks I am out of luck in this case.
> -- 
> This message posted from opensolaris.org
> _______________________________________________
> zfs-code mailing list
> zfs-code at opensolaris.org
> http://mail.opensolaris.org/mailman/listinfo/zfs-code

Reply via email to