You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@couchdb.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2017/03/13 19:41:41 UTC

[jira] [Commented] (COUCHDB-3323) Idle dbs cause excessive overhead

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

ASF GitHub Bot commented on COUCHDB-3323:
-----------------------------------------

GitHub user nickva opened a pull request:

    https://github.com/apache/couchdb-couch/pull/236

    Close idle dbs

    Previously idle dbs, especially sys_dbs like _replicator shards once opened
    once for scanning would stay open forever. In a large cluster with many
    _replicator shards that can add up to a significant overhead, mostly in terms
    of number of active processes.
    
    Add a mechanism to close dbs which have an idle db updater. Before hibernation
    was used to limit the memory pressure, however that is often not enough in
    practice.
    
    Ideally timeout value would be a configuration option, however we don't want to
    add an ets call for every couch_db_updater callback, and modifiying the db
    record is prohibitive for this patch, however PSE does this work and once it
    lands we can read the idle configuration when the process starts.
    
    (Original idea for this belongs to Paul Davis)
    
    COUCHDB-3323

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/cloudant/couchdb-couch close-idle-dbs

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/couchdb-couch/pull/236.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #236
    
----
commit 85a9f13632a6828420e01cc7d39cdaa7c19c2170
Author: Nick Vatamaniuc <va...@apache.org>
Date:   2017-03-10T19:24:01Z

    Close idle dbs
    
    Previously idle dbs, especially sys_dbs like _replicator shards once opened
    once for scanning would stay open forever. In a large cluster with many
    _replicator shards that can add up to a significant overhead, mostly in terms
    of number of active processes.
    
    Add a mechanism to close dbs which have an idle db updater. Before hibernation
    was used to limit the memory pressure, however that is often not enough in
    practice.
    
    Ideally timeout value would be a configuration option, however we don't want to
    add an ets call for every couch_db_updater callback, and modifiying the db
    record is prohibitive for this patch, however PSE does this work and once it
    lands we can read the idle configuration when the process starts.
    
    (Original idea for this belongs to Paul Davis)
    
    COUCHDB-3323

----


> Idle dbs cause excessive overhead
> ---------------------------------
>
>                 Key: COUCHDB-3323
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-3323
>             Project: CouchDB
>          Issue Type: Bug
>            Reporter: Nick Vatamaniuc
>
> Idle dbs, especially sys_dbs like _replicator shards once opened
> once for scanning would stay open forever. In a large cluster with many
> _replicator shards that can add up to a significant overhead, mostly in terms
> of number of active processes.
> Add a mechanism to close dbs which are idle.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)