couchdb-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rand...@apache.org
Subject svn commit: r1135313 - in /couchdb/trunk/src/couchdb: couch_api_wrap.erl couch_replicator.erl
Date Mon, 13 Jun 2011 22:10:09 GMT
Author: randall
Date: Mon Jun 13 22:10:09 2011
New Revision: 1135313

URL: http://svn.apache.org/viewvc?rev=1135313&view=rev
Log:
safer db close on rep terminate than in r1133561

As fdmanana pointed out to me, my last change to this broke the
replication js test. While dropping the ref on a local database is not
strictly necessary, closing a remote database might terminate an http
connection that is being help open. The remote server will complain
if we drop it unexpectedly.

Modified:
    couchdb/trunk/src/couchdb/couch_api_wrap.erl
    couchdb/trunk/src/couchdb/couch_replicator.erl

Modified: couchdb/trunk/src/couchdb/couch_api_wrap.erl
URL: http://svn.apache.org/viewvc/couchdb/trunk/src/couchdb/couch_api_wrap.erl?rev=1135313&r1=1135312&r2=1135313&view=diff
==============================================================================
--- couchdb/trunk/src/couchdb/couch_api_wrap.erl (original)
+++ couchdb/trunk/src/couchdb/couch_api_wrap.erl Mon Jun 13 22:10:09 2011
@@ -104,7 +104,7 @@ db_close(#httpdb{httpc_pool = Pool}) ->
     unlink(Pool),
     ok = couch_httpc_pool:stop(Pool);
 db_close(DbName) ->
-    couch_db:close(DbName).
+    catch couch_db:close(DbName).
 
 
 get_db_info(#httpdb{} = Db) ->

Modified: couchdb/trunk/src/couchdb/couch_replicator.erl
URL: http://svn.apache.org/viewvc/couchdb/trunk/src/couchdb/couch_replicator.erl?rev=1135313&r1=1135312&r2=1135313&view=diff
==============================================================================
--- couchdb/trunk/src/couchdb/couch_replicator.erl (original)
+++ couchdb/trunk/src/couchdb/couch_replicator.erl Mon Jun 13 22:10:09 2011
@@ -475,7 +475,9 @@ terminate(Reason, State) ->
 terminate_cleanup(State) ->
     couch_task_status:update("Finishing"),
     stop_db_compaction_notifier(State#rep_state.source_db_compaction_notifier),
-    stop_db_compaction_notifier(State#rep_state.target_db_compaction_notifier).
+    stop_db_compaction_notifier(State#rep_state.target_db_compaction_notifier),
+    couch_api_wrap:db_close(State#rep_state.source),
+    couch_api_wrap:db_close(State#rep_state.target).
 
 
 do_last_checkpoint(#rep_state{seqs_in_progress = [],



Mime
View raw message