couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Paul Joseph Davis (JIRA)" <>
Subject [jira] [Commented] (COUCHDB-2097) Avoid performance regression with a single fd
Date Sat, 05 Jul 2014 15:43:33 GMT


Paul Joseph Davis commented on COUCHDB-2097:

> With the change everything is now serialised, first in the updater process and then in
the file process. So with this changes read and writes are now waiting in the same queue.
2 times.

This is incorrect. Reads don't go through the couch_db_updater process. You are right that
reads and writes are going through the same fd now though. As to why the change uses the fd
process instead of the db process, couch_file can outlive the db updater process for clients
that have long requests. Streaming large views when the number of open dbs is near max_dbs_open
for instance.

> I would be interested by measuring the difference on that particular part, not on the
overall performance of the db.

Which particular part? two vs one fd? Mike Wallace did that and showed that the single fd
version was considerably slower which we would expect. The changes that this ticket was concerned
with involve the entire change set which necessarily includes the changes to couch_server.

> Avoid performance regression with a single fd
> ---------------------------------------------
>                 Key: COUCHDB-2097
>                 URL:
>             Project: CouchDB
>          Issue Type: Improvement
>      Security Level: public(Regular issues) 
>          Components: BigCouch
>            Reporter: Paul Joseph Davis
>              Labels: release
>         Attachments: mike-wallace-fd-benchmarks.txt
> Part of one of our large enhancements required that we remove a CouchDB performance optimization
on having two file handles to each .couch file. We need to make sure that this doesn't negatively
impact performance.

This message was sent by Atlassian JIRA

View raw message