You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@couchdb.apache.org by "Randall Leeds (JIRA)" <ji...@apache.org> on 2010/08/20 23:03:16 UTC

[jira] Updated: (COUCHDB-863) error log noise when a DELETE kills a replication

     [ https://issues.apache.org/jira/browse/COUCHDB-863?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Randall Leeds updated COUCHDB-863:
----------------------------------

        Summary: error log noise when a DELETE kills a replication  (was: be quiet about dropping invalid references)
    Description: 
couch_ref_counter:drop will complain, dying with noproc, if the reference counter does not exist.
couch_rep listens for the 'DOWN' message but then tries to terminate, closing both source and target dbs. If either one was the source of the 'DOWN' message because it was deleted, this causes loud complaints in the log and gen_server exits. We can do this more cleanly.

  was:
couch_ref_counter:drop will complain, dying with noproc, if the reference counter does not exist. Since dropping a reference to a non-existent process isn't exactly an error I think we should squelch this one. I hate log noise and I've noticed this pop up in the logs a bunch, especially running the test suite. Extra noise doesn't make debugging easier and it could confuse people trying to solve real problems.

Trivial, trivial patch unless I'm missing something really silly. I'll save everyone the extra emails from JIRA and just paste it here.

diff --git a/src/couchdb/couch_ref_counter.erl b/src/couchdb/couch_ref_counter.erl
index 5a111ab..1edc474 100644
--- a/src/couchdb/couch_ref_counter.erl
+++ b/src/couchdb/couch_ref_counter.erl
@@ -24,7 +24,9 @@ drop(RefCounterPid) ->
     drop(RefCounterPid, self()).
 
 drop(RefCounterPid, Pid) ->
-    gen_server:call(RefCounterPid, {drop, Pid}).
+    try gen_server:call(RefCounterPid, {drop, Pid})
+    catch exit:{noproc, _} -> ok
+    end.
 
 
 add(RefCounterPid) ->

    Component/s: Replication
                     (was: Database Core)

> error log noise when a DELETE kills a replication
> -------------------------------------------------
>
>                 Key: COUCHDB-863
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-863
>             Project: CouchDB
>          Issue Type: Improvement
>          Components: Replication
>    Affects Versions: 1.0.1
>            Reporter: Randall Leeds
>            Priority: Trivial
>         Attachments: 0001-die-cleanly-when-local-replication-db-goes-away.patch
>
>
> couch_ref_counter:drop will complain, dying with noproc, if the reference counter does not exist.
> couch_rep listens for the 'DOWN' message but then tries to terminate, closing both source and target dbs. If either one was the source of the 'DOWN' message because it was deleted, this causes loud complaints in the log and gen_server exits. We can do this more cleanly.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.