Stock Ubuntu KVM ignores guest synchronous fileIO requests
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
qemu-kvm (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: qemu-kvm
Reference the SQLite results in http://
Under KVM, SQLite performs at least an order of magnitude faster than outside the VM. This is counter-intuitive since - in almost all cases, performance should be at host speed or slower.
It is believed that SQLite opens files with O_SYNC set. Hence the SQLite library will be expecting that the operations will be written to disk. Judging by the numbers, the physical disk is not having the data written. It may be synchronous from the guest's perspective, but the physical disk on the host backing the guest
This implies that for _any_ application that is expecting to have synchronous writes for data integrity, that running under Ubuntu's current KVM/qemu configration should be highly discouraged.
The current Indication is that qemu is configured with write-back enabled.
This behavior will not be demonstrated on current qemu-kvm packages in Karmic.