You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by va...@apache.org on 2017/03/14 20:50:04 UTC
[6/8] couch-replicator commit: updated refs/heads/63012-scheduler to
eda73a2
Revert "Don't scan empty replicator databases"
This reverts commit 46aa27fa674a4c1e590aeecd76123e4f91d78fd5.
Project: http://git-wip-us.apache.org/repos/asf/couchdb-couch-replicator/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-couch-replicator/commit/f63efa78
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-couch-replicator/tree/f63efa78
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-couch-replicator/diff/f63efa78
Branch: refs/heads/63012-scheduler
Commit: f63efa786fec5cc40e6c6193470399da99385abf
Parents: 46aa27f
Author: Nick Vatamaniuc <va...@apache.org>
Authored: Fri Mar 10 01:13:28 2017 -0500
Committer: Nick Vatamaniuc <va...@apache.org>
Committed: Fri Mar 10 01:13:28 2017 -0500
----------------------------------------------------------------------
src/couch_replicator_manager.erl | 46 +++--------------------------------
1 file changed, 3 insertions(+), 43 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-couch-replicator/blob/f63efa78/src/couch_replicator_manager.erl
----------------------------------------------------------------------
diff --git a/src/couch_replicator_manager.erl b/src/couch_replicator_manager.erl
index 9f17087..2bcad69 100644
--- a/src/couch_replicator_manager.erl
+++ b/src/couch_replicator_manager.erl
@@ -266,17 +266,9 @@ handle_cast({resume_scan, DbName}, State) ->
end,
true = ets:insert(?DB_TO_SEQ, {DbName, Since, false}),
ensure_rep_ddoc_exists(DbName),
- case has_replication_docs(DbName) of
- false ->
- %% the database is empty save for the rep_ddoc,
- %% don't bother scanning it.
- couch_log:debug("ignoring empty ~s", [DbName]),
- Pids;
- true ->
- Pid = start_changes_reader(DbName, Since, State#state.epoch),
- couch_log:debug("Scanning ~s from update_seq ~p", [DbName, Since]),
- [{DbName, Pid} | Pids]
- end
+ Pid = start_changes_reader(DbName, Since, State#state.epoch),
+ couch_log:debug("Scanning ~s from update_seq ~p", [DbName, Since]),
+ [{DbName, Pid} | Pids]
end,
{noreply, State#state{rep_start_pids = NewPids}};
@@ -1013,38 +1005,6 @@ get_json_value(Key, Props, Default) when is_binary(Key) ->
end.
-has_replication_docs(DbName) ->
- {ok, Db} = couch_db:open(DbName, []),
- try
- case couch_db:get_doc_count(Db) of
- {ok, 0} ->
- false;
- {ok, 1} ->
- case first_doc_id(Db) of
- <<"_design/_replicator">> ->
- false;
- _Else ->
- true
- end;
- _Else ->
- true
- end
- after
- couch_db:close(Db)
- end.
-
-
-first_doc_id(#db{} = Db) ->
- Fun = fun
- (#full_doc_info{deleted = true}, _Reds, Acc) ->
- {ok, Acc};
- (FDI, _Reds, _Acc) ->
- {stop, FDI#full_doc_info.id}
- end,
- {ok, _, Id} = couch_btree:fold(Db#db.id_tree, Fun, nil, []),
- Id.
-
-
-ifdef(TEST).
-include_lib("couch/include/couch_eunit.hrl").