On Mon, Mar 10, 2014 at 7:01 PM, Jono Poff <jonathan.p...@taitradio.com> wrote: > I'm using Solaris 10 with zfs and I may be able to disable write caching on > the entire disk, but would prefer not to! Any ideas appreciated.
The way ZFS works, if you don't have a ZIL (ZFS Intent Log) device then all fdatasync() calls sync metadata as well. It has to be thus due to ZFS' copy-on-write filesystem nature. Things you should do: 1) Make sure that the SQLite3 page size and ZFS recordsize in the dataset holding the SQLite DB match. 2) Make that size something appropriate (SQLite3 does -or used to- default to a page size of 512 bytes on Unix, which is way too small nowadays). 3) Get an SSD with high write IOPs rates, and use it as a ZIL. Or a battery-backed RAM ZIL. 4) If you do get a ZIL, make sure you set the SQLite3 page size and ZFS recordsize to match the device's natural block size (which will typically be either 4KB or 8KB). Nico -- _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users