Neil Conway <[EMAIL PROTECTED]> writes: > There is a TODO item about allowing the delaying of WAL writes. If we > maintain the WAL invariant (that is, a WAL record describing a change > must hit disk before the change itself does) but simply don't flush the > WAL at transaction commit, we should be able to get better performance > without the risk of database corruption (so we would need to keep pages > modified by the committed transaction pinned in memory until the WAL has > been flushed, which might be done on a periodic basis).
That interlock already exists, in the form of the bufmgr LSN logic. I think this "feature" might be as simple as XLogFlush(recptr); becomes /* Must flush if we are deleting files... */ if (PerCommitFlush || nrels > 0) XLogFlush(recptr); in RecordTransactionCommit. regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings