Neil,

Thank you. You closed my question. :-)

best regards,
hanzhu


On Mon, Dec 7, 2009 at 3:00 AM, Neil Perrin <neil.per...@sun.com> wrote:

>
>  I'll try to find out whether ZFS binding the same file always to the same
>> opening transaction group.
>>
>
> Not sure what you mean by this. Transactions (eg writes) will go into
> the current open transaction group (txg). Subsequent writes may enter
> the same or a future txg. Txgs are obviously committed in order.
> So writes are not committed out of order. The txg commit is all or nothing,
> so on a crash you get to see all the transactions in that txg or none.
> I think this answers your original question/concern.
>
>
>  If so, I guess my assumption here would be true.
>> Seems like there is only one opening transaction group at anytime.
>> Can anybody give me a definitive answer here?
>>
>
> ZFS uses a 3 stage transaction model: Open, Quiescing and Syncing.
> Transactions enter in Open. Quiescing is where a new Open stage has
> started and waits for transactions that have yet to commit to finish.
> Syncing is where all the completed transactions are pushed to the pool
> in an atomic manner with the last write being the root of the new tree
> of blocks (uberblock).
>
> All the guarantees assume good hardware. As part of the new uberblock
> update
> we flush the write caches of the pool devices. If this is broken all bets
> are off.
>
> Neil.
>
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to