This question is forwarded from ZFS-discussion. Hope any developer can throw some light on it.
I'm a newbie to ZFS. I have a special question against the COW transaction of ZFS. Does ZFS keeps the sequential consistency of the same file when it meets power outage or server crash? Assume following scenario: My application has only a single thread and it appends the data to the file continuously. Suppose at time t1, it append a buf named A to the file. At time t2, which is later than t1, it appends a buf named B to the file. If the server crashes after t2, is it possible the buf B is flushed back to the disk but buf A is not? My application appends the file only without truncation or overwrite.Does ZFS keep the consistency that the data written to a file in sequential order or casual order be flushed to disk in the same order? If the uncommitted writer operation to a single file always binding with the same opening transaction group and all transaction group is committed in sequential order, I think the answer should be YES. In other words, [b]whether there is only one opening transaction group at any time and the transaction group is committed in order for a single pool?[/b] Hope anybody can help me clarify it. Thank you very much! -- This message posted from opensolaris.org