Mark D. Anderson wrote:

Just to check my understanding: the suggestion here is to reduce reader-writer conflict windows by buffering of writes. The writer acquires a read lock at the start of the transaction, and upgrades to a write lock only when it comes time to commit all pending IO.
>

That's my understanding.


If i understand the proposal, this improves read concurrency at the cost of write throughput, because write IO is held back and started later than it could be if it were commenced as soon as the intent was known.


Probably not. Even if you did a write early, the OS is probably not going to send the data to disk until you fsync anyway, unless it is under memory pressure. So you might as well defer the writes.

In various attempts to make things go faster, I
experimented with "early" write and ordered writes
and lots of other tricks.  None of it made any
measurable difference.  What did make a differences
was reducing the number of fsyncs to a minimum
and deferring them as long as possible.


-- D. Richard Hipp -- [EMAIL PROTECTED] -- 704.948.4565


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to