On Wed, Oct 5, 2011 at 2:12 AM, <[email protected]> wrote: > Updated Branches: > refs/heads/master 3c24a94dd -> 0c7fbd3da > > > Open replicator database in child process > > This is more correct and less confusing. > > > Project: http://git-wip-us.apache.org/repos/asf/couchdb/repo > Commit: http://git-wip-us.apache.org/repos/asf/couchdb/commit/0c7fbd3d > Tree: http://git-wip-us.apache.org/repos/asf/couchdb/tree/0c7fbd3d > Diff: http://git-wip-us.apache.org/repos/asf/couchdb/diff/0c7fbd3d > > Branch: refs/heads/master > Commit: 0c7fbd3dab5bf13215def4349dbba7f689a22ac6 > Parents: 3c24a94 > Author: Filipe David Manana <[email protected]> > Authored: Wed Oct 5 01:10:54 2011 +0100 > Committer: Filipe David Manana <[email protected]> > Committed: Wed Oct 5 01:12:45 2011 +0100 > > ---------------------------------------------------------------------- > src/couchdb/couch_replication_manager.erl | 11 +++++++---- > 1 files changed, 7 insertions(+), 4 deletions(-) > ---------------------------------------------------------------------- > > > http://git-wip-us.apache.org/repos/asf/couchdb/blob/0c7fbd3d/src/couchdb/couch_replication_manager.erl > ---------------------------------------------------------------------- > diff --git a/src/couchdb/couch_replication_manager.erl > b/src/couchdb/couch_replication_manager.erl > index 5885732..7d1860e 100644 > --- a/src/couchdb/couch_replication_manager.erl > +++ b/src/couchdb/couch_replication_manager.erl > @@ -223,9 +223,12 @@ code_change(_OldVsn, State, _Extra) -> > > changes_feed_loop() -> > {ok, RepDb} = ensure_rep_db_exists(), > + RepDbName = couch_db:name(RepDb), > + couch_db:close(RepDb), > Server = self(), > Pid = spawn_link( > fun() -> > + {ok, Db} = couch_db:open_int(RepDbName, [sys_db]), > ChangesFeedFun = couch_changes:handle_changes( > #changes_args{ > include_docs = true, > @@ -234,7 +237,7 @@ changes_feed_loop() -> > db_open_options = [sys_db] > }, > {json_req, null}, > - RepDb > + Db > ), > ChangesFeedFun( > fun({change, Change, _}, _) -> > @@ -248,11 +251,11 @@ changes_feed_loop() -> > (_, _) -> > ok > end > - ) > + ), > + couch_db:close(Db) > end > ), > - couch_db:close(RepDb), > - {Pid, couch_db:name(RepDb)}. > + {Pid, RepDbName}. > > > has_valid_rep_id({Change}) -> > >
Can't you ensure it in the process too ? What is the reason to have it externally ? - benoit
