> Actually, it seems to me that with the addition of the WAL in PostgreSQL > and the subsequent decreased need to fsync the data files themselves > (only during checkpoints?), that the only time a battery-backed write > cache would make a really large performance difference would be on the > drive(s) hosting the WAL.
It still helps. In my experience a good BBU Raid controller is only slightly slower than fsync=false. Fear the checkpoint storm if you don't have some write caching. Beyond that I don't really care about write delay. Another thing to watch out for is that some sync modes (varying by platform) can do >1 seeks per sync. This will absolutely kill your commit performance on the WAL without write caching. > So although it is in general good to have a dedicated spindle for the > WAL, for many workloads it is in fact significantly better to have the > WAL written to a battery-backed write cache. The exception would be for > applications with fewer, larger transactions, in which case you could > actually use the dedicated spindle. Exactly. > Hmmm, on second thought, now I think I understand the rationale behind > having a non-zero commit delay setting-- the problem with putting I don't trust commit_delay. Get a good raid controller and make sure pg is properly using it. Now, if you can't (or won't) do some type of write caching bbu or no, your system has to be very carefully designed to get any performance at all, especially with high transaction volumes. Merlin ---------------------------(end of broadcast)--------------------------- TIP 1: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly