This is an automated email from the ASF dual-hosted git repository.

vatamane pushed a commit to branch 
cleanup-upgrade-clauses-for-fabric-view-changes
in repository https://gitbox.apache.org/repos/asf/couchdb.git

commit b50240fe7f34d3dcd3aeb08ef3c2111d6478716d
Author: Nick Vatamaniuc <vatam...@gmail.com>
AuthorDate: Fri May 17 15:54:37 2024 -0400

    Cleanup a few clauses in fabric_view_changes
    
    `#changes{}` record and old `complete` format was deprecated 10 years ago 
[1].
    
    While at it, cleanup un-necessarily long arg per line call formats.
    
    Coincidentally, this also improve code coverage a bit:
    
    ```
    fabric_view_changes           :  72% (pr)
    fabric_view_changes           :  71% (main)
    ```
    
    [1] 
https://github.com/apache/couchdb/commit/865b5555771e6099c9b34b1b14d2428ce02e50c3
---
 src/fabric/include/fabric.hrl          |  1 -
 src/fabric/src/fabric_view_changes.erl | 44 +++++-----------------------------
 2 files changed, 6 insertions(+), 39 deletions(-)

diff --git a/src/fabric/include/fabric.hrl b/src/fabric/include/fabric.hrl
index 19eb6751c..dd312f028 100644
--- a/src/fabric/include/fabric.hrl
+++ b/src/fabric/include/fabric.hrl
@@ -41,7 +41,6 @@
 }).
 
 -record(view_row, {key, id, value, doc, worker}).
--record(change, {key, id, value, deleted=false, doc, worker}).
 
 -type row_property_key() :: id | key | value | doc | worker.
 -type row_properties() :: [{row_property_key(), any()}].
diff --git a/src/fabric/src/fabric_view_changes.erl 
b/src/fabric/src/fabric_view_changes.erl
index 6697a1c67..85bc7370c 100644
--- a/src/fabric/src/fabric_view_changes.erl
+++ b/src/fabric/src/fabric_view_changes.erl
@@ -124,15 +124,9 @@ keep_sending_changes(DbName, Args, Callback, Seqs, AccIn, 
Timeout, UpListen, T0)
                     Callback({stop, LastSeq, pending_count(Offset)}, AccOut);
                 _ ->
                     {ok, AccTimeout} = Callback(timeout, AccOut),
-                    ?MODULE:keep_sending_changes(
-                        DbName,
-                        Args#changes_args{limit = Limit2},
-                        Callback,
-                        LastSeq,
-                        AccTimeout,
-                        Timeout,
-                        UpListen,
-                        T0
+                    Args1 = Args#changes_args{limit = Limit2},
+                    keep_sending_changes(
+                        DbName, Args1, Callback, LastSeq, AccTimeout, Timeout, 
UpListen, T0
                     )
             end
     end.
@@ -201,15 +195,7 @@ send_changes(DbName, ChangesArgs, Callback, PackedSeqs, 
AccIn, Timeout) ->
                         end,
                         Workers
                     ),
-                    send_changes(
-                        DbName,
-                        Workers,
-                        LiveSeqs,
-                        ChangesArgs,
-                        Callback,
-                        AccIn,
-                        Timeout
-                    )
+                    send_changes(DbName, Workers, LiveSeqs, ChangesArgs, 
Callback, AccIn, Timeout)
                 after
                     fabric_streams:cleanup(Workers)
                 end;
@@ -270,9 +256,6 @@ handle_message({rexi_DOWN, _, {_, NodeRef}, _}, _, State) ->
     fabric_view:check_down_shards(State, NodeRef);
 handle_message({rexi_EXIT, Reason}, Worker, State) ->
     fabric_view:handle_worker_exit(State, Worker, Reason);
-% Temporary upgrade clause - Case 24236
-handle_message({complete, Key}, Worker, State) when is_tuple(Key) ->
-    handle_message({complete, [{seq, Key}, {pending, 0}]}, Worker, State);
 handle_message({change, Props}, {Worker, _}, #collector{limit = 0} = State) ->
     O0 = State#collector.offset,
     O1 =
@@ -295,9 +278,7 @@ handle_message({complete, Props}, Worker, #collector{limit 
= 0} = State) ->
                 O0
         end,
     maybe_stop(State#collector{offset = O1});
-handle_message({no_pass, Props}, {Worker, From}, #collector{limit = 0} = 
State) when
-    is_list(Props)
-->
+handle_message({no_pass, [_ | _] = Props}, {Worker, From}, #collector{limit = 
0} = State) ->
     #collector{counters = S0, offset = O0} = State,
     O1 =
         case fabric_dict:lookup_element(Worker, O0) of
@@ -309,16 +290,6 @@ handle_message({no_pass, Props}, {Worker, From}, 
#collector{limit = 0} = State)
     S1 = fabric_dict:store(Worker, couch_util:get_value(seq, Props), S0),
     rexi:stream_ack(From),
     maybe_stop(State#collector{counters = S1, offset = O1});
-handle_message(#change{} = Row, {Worker, From}, St) ->
-    Change =
-        {change, [
-            {seq, Row#change.key},
-            {id, Row#change.id},
-            {changes, Row#change.value},
-            {deleted, Row#change.deleted},
-            {doc, Row#change.doc}
-        ]},
-    handle_message(Change, {Worker, From}, St);
 handle_message({change, Props}, {Worker, From}, St) ->
     #collector{
         callback = Callback,
@@ -341,9 +312,6 @@ handle_message({change, Props}, {Worker, From}, St) ->
     {Go, Acc} = Callback(changes_row(Props2), AccIn),
     rexi:stream_ack(From),
     {Go, St#collector{counters = S1, offset = O1, limit = Limit - 1, user_acc 
= Acc}};
-%% upgrade clause
-handle_message({no_pass, Seq}, From, St) when is_integer(Seq) ->
-    handle_message({no_pass, [{seq, Seq}]}, From, St);
 handle_message({no_pass, Props}, {Worker, From}, St) ->
     Seq = couch_util:get_value(seq, Props),
     #collector{counters = S0} = St,
@@ -351,7 +319,7 @@ handle_message({no_pass, Props}, {Worker, From}, St) ->
     S1 = fabric_dict:store(Worker, Seq, S0),
     rexi:stream_ack(From),
     {ok, St#collector{counters = S1}};
-handle_message({complete, Props}, Worker, State) ->
+handle_message({complete, [_ | _] = Props}, Worker, State) ->
     Key = couch_util:get_value(seq, Props),
     #collector{
         counters = S0,

Reply via email to