That is correct -- but that can only happen when the ZIL is enabled.
With ZIL disabled, we always preserve event ordering.
Jeff
On Apr 3, 2010, at 3:41 AM, Robert Milkowski wrote:
On 03/04/2010 00:06, Jeff Bonwick wrote:
What I mean is that the barrier semantic is implicit even with no
ZIL at all.
In ZFS, if event A happens before event B, and you lose power, then
what you'll see on disk is either nothing, A, or both A and B.
Never just B.
It is impossible for us not to have at least barrier semantics.
I'm not entirely sure but I think there might be an exception to this.
A happens as an asynchronous write, then B happens as a synchronous
write and is written to ZIL.
Now before A is committed a server looses power, after reboot B will
be committed to a pool. But A would never make it there.
Or am I missing something?
I think that sync=barrier would be confusing as it suggest that
fsync() is synchronous while it isn't with this setting.
However an extra explanation as the one above would be useful to be
in the zfs/zpool man page.
--
Robert Milkowski
http://milek.blogspot.com
_______________________________________________
opensolaris-arc mailing list
[email protected]