This is an automated email from the ASF dual-hosted git repository. vatamane pushed a commit to branch couch-db-updater-rename-for-consistency in repository https://gitbox.apache.org/repos/asf/couchdb.git
commit 52238bc77ae456bcf77cc33bc530d0746bd059f9 Author: Nick Vatamaniuc <[email protected]> AuthorDate: Tue May 23 18:24:50 2023 -0400 Rename NonRep -> Local and merge_conflicts -> replicated_changes `couch_db` and `couch_db_updater` modules are the only place using "non-rep" to refer to "local" documents and "merge conflicts" to refer to "replicated changes", so rename them to make them consistent with the rest of the codebase. --- src/couch/src/couch_db.erl | 26 ++++++++++++------------- src/couch/src/couch_db_updater.erl | 40 +++++++++++++++++++------------------- 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/src/couch/src/couch_db.erl b/src/couch/src/couch_db.erl index 66e9a6db0..4bc2aca8f 100644 --- a/src/couch/src/couch_db.erl +++ b/src/couch/src/couch_db.erl @@ -1320,7 +1320,7 @@ update_docs(Db, Docs0, Options, ?REPLICATED_CHANGES) -> ) end, - {ok, DocBuckets, NonRepDocs, DocErrors} = + {ok, DocBuckets, LocalDocs, DocErrors} = before_docs_update(Db, Docs, PrepValidateFun, ?REPLICATED_CHANGES), DocBuckets2 = [ @@ -1333,8 +1333,8 @@ update_docs(Db, Docs0, Options, ?REPLICATED_CHANGES) -> {ok, _} = write_and_commit( Db, DocBuckets2, - NonRepDocs, - [merge_conflicts | Options] + LocalDocs, + [?REPLICATED_CHANGES | Options] ), {ok, DocErrors}; update_docs(Db, Docs0, Options, ?INTERACTIVE_EDIT) -> @@ -1352,7 +1352,7 @@ update_docs(Db, Docs0, Options, ?INTERACTIVE_EDIT) -> ) end, - {ok, DocBuckets, NonRepDocs, DocErrors} = + {ok, DocBuckets, LocalDocs, DocErrors} = before_docs_update(Db, Docs, PrepValidateFun, ?INTERACTIVE_EDIT), if @@ -1372,7 +1372,7 @@ update_docs(Db, Docs0, Options, ?INTERACTIVE_EDIT) -> true -> Options2 = if - AllOrNothing -> [merge_conflicts]; + AllOrNothing -> [?REPLICATED_CHANGES]; true -> [] end ++ Options, DocBuckets2 = [ @@ -1392,7 +1392,7 @@ update_docs(Db, Docs0, Options, ?INTERACTIVE_EDIT) -> {ok, CommitResults} = write_and_commit( Db, DocBuckets3, - NonRepDocs, + LocalDocs, Options2 ), @@ -1451,14 +1451,14 @@ collect_results(Pid, MRef, ResultsAcc) -> write_and_commit( #db{main_pid = Pid, user_ctx = Ctx} = Db, DocBuckets1, - NonRepDocs, + LocalDocs, Options ) -> DocBuckets = prepare_doc_summaries(Db, DocBuckets1), - MergeConflicts = lists:member(merge_conflicts, Options), + ReplicatedChanges = lists:member(?REPLICATED_CHANGES, Options), MRef = erlang:monitor(process, Pid), try - Pid ! {update_docs, self(), DocBuckets, NonRepDocs, MergeConflicts}, + Pid ! {update_docs, self(), DocBuckets, LocalDocs, ReplicatedChanges}, case collect_results_with_metrics(Pid, MRef, []) of {ok, Results} -> {ok, Results}; @@ -1473,7 +1473,7 @@ write_and_commit( % We only retry once DocBuckets3 = prepare_doc_summaries(Db2, DocBuckets2), close(Db2), - Pid ! {update_docs, self(), DocBuckets3, NonRepDocs, MergeConflicts}, + Pid ! {update_docs, self(), DocBuckets3, LocalDocs, ReplicatedChanges}, case collect_results_with_metrics(Pid, MRef, []) of {ok, Results} -> {ok, Results}; retry -> throw({update_error, compaction_retry}) @@ -1521,7 +1521,7 @@ before_docs_update(#db{validate_doc_funs = VDFuns} = Db, Docs, PVFun, UpdateType (#doc{id = <<?LOCAL_DOC_PREFIX, _/binary>>}) -> true; (_) -> false end, - {NonRepDocs, Docs2} = lists:partition(IsLocal, Docs), + {LocalDocs, Docs2} = lists:partition(IsLocal, Docs), BucketList = group_alike_docs(Docs2), @@ -1551,9 +1551,9 @@ before_docs_update(#db{validate_doc_funs = VDFuns} = Db, Docs, PVFun, UpdateType {DocBuckets2, DocErrors} = PVFun(Db, DocBuckets, ExistingDocs), % remove empty buckets DocBuckets3 = [Bucket || Bucket <- DocBuckets2, Bucket /= []], - {ok, DocBuckets3, NonRepDocs, DocErrors}; + {ok, DocBuckets3, LocalDocs, DocErrors}; false -> - {ok, DocBuckets, NonRepDocs, []} + {ok, DocBuckets, LocalDocs, []} end. set_new_att_revpos(#doc{revs = {RevPos, _Revs}, atts = Atts0} = Doc) -> diff --git a/src/couch/src/couch_db_updater.erl b/src/couch/src/couch_db_updater.erl index 30f61aea0..767a3190a 100644 --- a/src/couch/src/couch_db_updater.erl +++ b/src/couch/src/couch_db_updater.erl @@ -26,7 +26,7 @@ -record(merge_acc, { revs_limit, - merge_conflicts, + replicated_changes, add_infos = [], rem_seqs = [], cur_seq, @@ -165,23 +165,23 @@ handle_cast(Msg, #db{name = Name} = Db) -> {stop, Msg, Db}. handle_info( - {update_docs, Client, GroupedDocs, NonRepDocs, MergeConflicts}, + {update_docs, Client, GroupedDocs, LocalDocs, ReplicatedChanges}, Db ) -> GroupedDocs2 = sort_and_tag_grouped_docs(Client, GroupedDocs), if - NonRepDocs == [] -> + LocalDocs == [] -> {GroupedDocs3, Clients} = collect_updates( GroupedDocs2, [Client], - MergeConflicts + ReplicatedChanges ); true -> GroupedDocs3 = GroupedDocs2, Clients = [Client] end, - NonRepDocs2 = [{Client, NRDoc} || NRDoc <- NonRepDocs], - try update_docs_int(Db, GroupedDocs3, NonRepDocs2, MergeConflicts) of + LocalDocs2 = [{Client, NRDoc} || NRDoc <- LocalDocs], + try update_docs_int(Db, GroupedDocs3, LocalDocs2, ReplicatedChanges) of {ok, Db2, UpdatedDDocIds} -> ok = couch_server:db_updated(Db2), case {couch_db:get_update_seq(Db), couch_db:get_update_seq(Db2)} of @@ -189,7 +189,7 @@ handle_info( _ -> couch_event:notify(Db2#db.name, updated) end, if - NonRepDocs2 /= [] -> + LocalDocs2 /= [] -> couch_event:notify(Db2#db.name, local_updated); true -> ok @@ -288,14 +288,14 @@ merge_updates([], RestB) -> merge_updates(RestA, []) -> RestA. -collect_updates(GroupedDocsAcc, ClientsAcc, MergeConflicts) -> +collect_updates(GroupedDocsAcc, ClientsAcc, ReplicatedChanges) -> receive - % Only collect updates with the same MergeConflicts flag and without + % Only collect updates with the same ReplicatedChanges flag and without % local docs. It's easier to just avoid multiple _local doc % updaters than deal with their possible conflicts, and local docs % writes are relatively rare. Can be optmized later if really needed. - {update_docs, Client, GroupedDocs, [], MergeConflicts} -> - case MergeConflicts of + {update_docs, Client, GroupedDocs, [], ReplicatedChanges} -> + case ReplicatedChanges of true -> couch_stats:increment_counter([couchdb, coalesced_updates, replicated]); false -> couch_stats:increment_counter([couchdb, coalesced_updates, interactive]) end, @@ -305,7 +305,7 @@ collect_updates(GroupedDocsAcc, ClientsAcc, MergeConflicts) -> collect_updates( GroupedDocsAcc2, [Client | ClientsAcc], - MergeConflicts + ReplicatedChanges ) after 0 -> {GroupedDocsAcc, ClientsAcc} @@ -485,7 +485,7 @@ merge_rev_trees([], [], Acc) -> merge_rev_trees([NewDocs | RestDocsList], [OldDocInfo | RestOldInfo], Acc) -> #merge_acc{ revs_limit = Limit, - merge_conflicts = MergeConflicts, + replicated_changes = ReplicatedChanges, full_partitions = FullPartitions } = Acc, @@ -493,9 +493,9 @@ merge_rev_trees([NewDocs | RestDocsList], [OldDocInfo | RestOldInfo], Acc) -> erlang:put(last_id_merged, OldDocInfo#full_doc_info.id), NewDocInfo0 = lists:foldl( fun({Client, NewDoc}, OldInfoAcc) -> - NewInfo = merge_rev_tree(OldInfoAcc, NewDoc, Client, MergeConflicts), + NewInfo = merge_rev_tree(OldInfoAcc, NewDoc, Client, ReplicatedChanges), case is_overflowed(NewInfo, OldInfoAcc, FullPartitions) of - true when not MergeConflicts -> + true when not ReplicatedChanges -> DocId = NewInfo#full_doc_info.id, send_result(Client, NewDoc, {partition_overflow, DocId}), OldInfoAcc; @@ -507,14 +507,14 @@ merge_rev_trees([NewDocs | RestDocsList], [OldDocInfo | RestOldInfo], Acc) -> NewDocs ), NewDocInfo1 = maybe_stem_full_doc_info(NewDocInfo0, Limit), - % When MergeConflicts is false, we updated #full_doc_info.deleted on every + % When ReplicatedChanges is false, we updated #full_doc_info.deleted on every % iteration of merge_rev_tree. However, merge_rev_tree does not update - % #full_doc_info.deleted when MergeConflicts is true, since we don't need + % #full_doc_info.deleted when ReplicatedChanges is true, since we don't need % to know whether the doc is deleted between iterations. Since we still % need to know if the doc is deleted after the merge happens, we have to % set it here. NewDocInfo2 = - case MergeConflicts of + case ReplicatedChanges of true -> NewDocInfo1#full_doc_info{ deleted = couch_doc:is_deleted(NewDocInfo1) @@ -659,7 +659,7 @@ maybe_stem_full_doc_info(#full_doc_info{rev_tree = Tree} = Info, Limit) -> Info end. -update_docs_int(Db, DocsList, LocalDocs, MergeConflicts) -> +update_docs_int(Db, DocsList, LocalDocs, ReplicatedChanges) -> UpdateSeq = couch_db_engine:get_update_seq(Db), RevsLimit = couch_db_engine:get_revs_limit(Db), @@ -705,7 +705,7 @@ update_docs_int(Db, DocsList, LocalDocs, MergeConflicts) -> % Merge the new docs into the revision trees. AccIn = #merge_acc{ revs_limit = RevsLimit, - merge_conflicts = MergeConflicts, + replicated_changes = ReplicatedChanges, add_infos = [], rem_seqs = [], cur_seq = UpdateSeq,
