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 2023/05/23 22:33:31 UTC

[couchdb] 01/01: Rename NonRep -> Local and merge_conflicts -> replicated_changes

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 <va...@gmail.com>
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,