couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jan Lehnardt (Created) (JIRA)" <>
Subject [jira] [Created] (COUCHDB-1342) Asynchronous file writes
Date Wed, 16 Nov 2011 13:29:51 GMT
Asynchronous file writes

                 Key: COUCHDB-1342
             Project: CouchDB
          Issue Type: Improvement
          Components: Database Core
            Reporter: Jan Lehnardt
             Fix For: 1.3
         Attachments: COUCHDB-1342.patch

This change updates the file module so that it can do
asynchronous writes. Basically it replies immediately
to process asking to write something to the file, with
the position where the chunks will be written to the
file, while a dedicated child process keeps collecting
chunks and write them to the file (and batching them
when possible). After issuing a series of write request
to the file module, the caller can call its 'flush'
function which will block the caller until all the
chunks it requested to write are effectively written
to the file.

This maximizes the IO subsystem, as for example, while
the updater is traversing and modifying the btrees and
doing CPU bound tasks, the writes are happening in

Originally described at

Github Commit:

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message