Simon Riggs wrote:
>> Here's the next version (v10) of the patch, ready for review.
>>
>> I've struggled with what to call all of the new concepts inherent in
>> this patch, but I think I've got something now. COMMIT NOWAIT doesn't
>> describe this feature, since there is no command of that name in the
>> implementation that we've agreed. So what's it called?
Hmm. Deferred commit? Asynchronous commit?
>> v10 fixes a number of lurking bugs present in v9. There are no
>> outstanding bugs, after a range of tests, though more are needed.
We don't need any more bugs, thank you ;-).
>> wal_writer_delay = 0 (default) ms enables this feature at server start.
>> Once enabled, individual sessions or transactions may request
>> transaction_guarantee = off, or it may be set for the whole server.
This error message talks about commit_fsync_delay:
ERROR: cannot set transaction guarantee when server commit_fsync_delay = 0
Should be wal_writer_delay, I suppose.
The HeapTupleSetVisibilityInfo function with it's action-argument looks
funny to me.
You don't need to check if a transaction has been flushed when setting
the HEAP_XMAX/XMIN_INVALID flags for aborted transactions.
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com