I updated the list of Postfix requirements, with the following note:

* In a virtual machine when Postfix flushes a file with fsync(),
  the file information must not be cached in volatile hypervisor
  memory[1]. Instead the information must be written to disk (or
  to persistent cache) before fsync() returns in the virtual machine.

Where [1] links to http://communities.vmware.com/thread/332142.
This thread discusses some practical mail server experiences.

Below are a few tips that I found with a quick search.

* For XEN, good results are reported with the phy: driver (see
  http://lists.xen.org/archives/html/xen-devel/2012-04/threads.html#00438).

* With KVM and QEMU, one would set "cache=none" to bypass the write
  cache in the physical host and make fsync() work as expected in
  a virtual machine.

Comments are welcome, especially on how to make fsync() work as
expected with VMware, VirtualBox and other hypervisors.

        Wietse

Reply via email to