3 ms·
With synchronous_commit = on the throughput heavily depends on your IO subsystem and the number of concurrent transactions. As every transaction has to be dura
by anarazel 11y ago
With synchronous_commit = on the throughput heavily depends on your IO subsystem and the number of concurrent transactions.
As every transaction has to be durable at commit, fsync (well, fdatasync() if supported) of a sequential log is required. Most single drives can do a ~100 (rotational disks, normal speeds) to a few thousands fsyncs/sec. If you have a battery backed raid controller you can do tens to hundreds of thousands, since the data will not actually be written to disk.
Concurrency matters because several commits can be made durable with a single flush to disk if they're happening concurrently (sometimes called "group commit").
EDIT: spelling, grammar, minor clarification.