[ 
https://issues.apache.org/jira/browse/COUCHDB-2097?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14048548#comment-14048548
 ] 

Benoit Chesneau commented on COUCHDB-2097:
------------------------------------------

@Russel Branca what are you calling tolerable limit? This change has the 
following effect:

1. read and writes are all waiting first that the couch_updater process become 
available. reads to get the latest db value. Updates happen in the updater 
process and can be long.
2. then when a read happen it will still wait for writes ince they all share 
the same couch_file process.

This is a huge regression compared to the current separation where:

1. read and write are all waiting for the couch_db process, but it is only done 
so for read the latest db value is returned and for update the pid. They no 
longer wait for a write.
2. read and write have 2 different file processes.

So read and write are more concurrent right now compared to the new situation 
where everything share the same queue and is serialised. It is very noticable 
on 1 node today when you have a lot of writes consecutives to reads.

Anyway we need figures before to close this ticket imo.

> Avoid performance regression with a single fd
> ---------------------------------------------
>
>                 Key: COUCHDB-2097
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-2097
>             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
(v6.2#6252)

Reply via email to