couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Filipe Manana (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (COUCHDB-1309) File descriptor leaks on design document update and view cleanup
Date Mon, 17 Oct 2011 15:20:10 GMT

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

Filipe Manana commented on COUCHDB-1309:
----------------------------------------

Benoit, what I meant by synchronous is the handle_call vs handle_cast in couch_index.erl.

I'm afraid you're missing some details about how the view system works. There's more than
the updater process that depends on the design document properties and view signature, like
couch_index_server.
Spawning a new group when the ddoc signature changes is not a new behaviour I'm adding - it
was always like this afaik.
I'm concentrated on fixing this particular issue and not redesigning a big part of the view
system. Feel free to do it and provide a working patch.
                
> File descriptor leaks on design document update and view cleanup
> ----------------------------------------------------------------
>
>                 Key: COUCHDB-1309
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-1309
>             Project: CouchDB
>          Issue Type: Bug
>            Reporter: Filipe Manana
>            Assignee: Filipe Manana
>         Attachments: couchdb-1309_12x.patch, couchdb-1309_trunk.patch
>
>
> If we add a design document with views defined in it, open the corresponding view group
(by querying one of its views for e.g.), then update the design document in such a way that
the view signature changes (changing a view's map function code for e.g), the old view group
remains open forever (unless a server restart happens) and keeps it's view file reference
counter active forever.
> If a view cleanup request comes, the old view file is not deleted since the reference
counter is not dropped by the old view group, keeping the file descriptor in use forever.
> This leakage is different from what is reported in COUCHDB-1129 but it's somehow related.
> The attached patch, simply shutdowns a view group when the design document is updated
and the new view signature changes, releasing the old view file descriptor (as soon as no
more clients are using the old view).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message