ZFS sync=disabled on container?

I set ZFS sync=disabled on mysql datasets to increase speed
I wonder
Is there any cons/pros to set sync=disabled on all LXD containers/volumes ZFS datasets?


The main things I can think of are:

  • Increased risk of data loss and corruption in case of full system crash or power loss
  • Less consistent performance profile. If your system is very I/O intensive, you will be piling up those transactions in memory until you reach such memory pressure that ZFS will have no choice but block all new I/O request while it pushes what it has in memory onto disk. If your I/O profile is burty, that’s fine, you’ll effectively buffer in memory and push that to disk at a less busy time, but if busy all the time, you’ll have a problem.