On 24-Jul-09, at 6:41 PM, Frank Middleton wrote:

On 07/24/09 04:35 PM, Bob Friesenhahn wrote:
 Regardless, it [VirtualBox] has committed a crime.

But ZFS is a journalled file system! Any hardware can lose a flush;

No, the problematic default in VirtualBox is flushes being *ignored*, which has a different failure mode. A host crash under this regime can potentially corrupt *any* journaled and transactional system (starting with filesystems and RDBMS) in a manner that does not occur on properly functioning bare metal that honours flushes, because their ordering assumptions no longer hold.

Whether this is 'possible' with a guest-only crash is arguable - I don't want to speak for Miles, but I suspect he was reasoning that a guest crash would not interact with ignore-flush, as all requested issued I/O up until the crash "should" finally complete - making a guest crash similar to a "real" crash. But the virtualised stack is complex enough that I don't know if we can be certain about that.

I would say that ignoring flushes is still a suspect.


it's just more likely in a VM, especially when anything Microsoft
is involved,

I originally saw the problem on a Ubuntu system, 6 months ago. The subsystems which broke were ext3fs and InnoDB - both supposedly "journaling".

and the whole point of journalling is to prevent things
like this happening.


It can ONLY do that when flushes/barriers/ordering are respected.

--Toby


...
HTH -- Frank







_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to