You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by ei...@apache.org on 2019/11/22 02:55:44 UTC

[couchdb] branch 2167-no-view-changes updated (def6707 -> 34d3db4)

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

eiri pushed a change to branch 2167-no-view-changes
in repository https://gitbox.apache.org/repos/asf/couchdb.git.


    from def6707  Change mrheader record
     new 28272b1  Modify upgrade view files test to verify new upgrade
     new 34d3db4  Fix view state maker

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 src/couch/test/eunit/couchdb_views_tests.erl       |  22 ++++++++++++---------
 ....view => 6cf2c2f766f87b618edf6630b00f8736.view} | Bin 4192 -> 8310 bytes
 src/couch/test/eunit/fixtures/test.couch           | Bin 16482 -> 28878 bytes
 src/couch_mrview/src/couch_mrview_util.erl         |   4 ++--
 4 files changed, 15 insertions(+), 11 deletions(-)
 rename src/couch/test/eunit/fixtures/{3b835456c235b1827e012e25666152f3.view => 6cf2c2f766f87b618edf6630b00f8736.view} (50%)


[couchdb] 02/02: Fix view state maker

Posted by ei...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

eiri pushed a commit to branch 2167-no-view-changes
in repository https://gitbox.apache.org/repos/asf/couchdb.git

commit 34d3db4193b2f4817004e0954e133fcbb6dc52cf
Author: Eric Avdey <ei...@eiri.ca>
AuthorDate: Thu Nov 21 22:55:20 2019 -0400

    Fix view state maker
---
 src/couch_mrview/src/couch_mrview_util.erl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/couch_mrview/src/couch_mrview_util.erl b/src/couch_mrview/src/couch_mrview_util.erl
index 6f58e9d..609b22c 100644
--- a/src/couch_mrview/src/couch_mrview_util.erl
+++ b/src/couch_mrview/src/couch_mrview_util.erl
@@ -1023,7 +1023,7 @@ maybe_update_header(Header) when tuple_size(Header) == 6 ->
         seq = element(2, Header),
         purge_seq = element(3, Header),
         id_btree_state = element(4, Header),
-        view_states = element(6, Header)
+        view_states = [make_view_state(S) || S <- element(6, Header)]
     }.
 
 %% End of <= 2.x upgrade code.
@@ -1035,7 +1035,7 @@ make_view_state(#mrview{} = View) ->
         View#mrview.update_seq,
         View#mrview.purge_seq
     };
-make_view_state({BTState, UpdateSeq, PurgeSeq}) ->
+make_view_state({BTState, _SeqBTState, _KSeqBTState, UpdateSeq, PurgeSeq}) ->
     {BTState, UpdateSeq, PurgeSeq};
 make_view_state(nil) ->
     {nil, 0, 0}.


[couchdb] 01/02: Modify upgrade view files test to verify new upgrade

Posted by ei...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

eiri pushed a commit to branch 2167-no-view-changes
in repository https://gitbox.apache.org/repos/asf/couchdb.git

commit 28272b17445d370fb9a2ce92464d2c243c574c9f
Author: Eric Avdey <ei...@eiri.ca>
AuthorDate: Thu Nov 21 22:54:06 2019 -0400

    Modify upgrade view files test to verify new upgrade
---
 src/couch/test/eunit/couchdb_views_tests.erl       |  22 ++++++++++++---------
 ....view => 6cf2c2f766f87b618edf6630b00f8736.view} | Bin 4192 -> 8310 bytes
 src/couch/test/eunit/fixtures/test.couch           | Bin 16482 -> 28878 bytes
 3 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/src/couch/test/eunit/couchdb_views_tests.erl b/src/couch/test/eunit/couchdb_views_tests.erl
index d1aba8f..06e2f03 100644
--- a/src/couch/test/eunit/couchdb_views_tests.erl
+++ b/src/couch/test/eunit/couchdb_views_tests.erl
@@ -42,13 +42,14 @@ setup_legacy() ->
     DbName = <<"test">>,
     DbFileName = "test.couch",
     OldDbFilePath = filename:join([?FIXTURESDIR, DbFileName]),
-    OldViewName = "3b835456c235b1827e012e25666152f3.view",
+    OldViewName = "6cf2c2f766f87b618edf6630b00f8736.view",
     FixtureViewFilePath = filename:join([?FIXTURESDIR, OldViewName]),
-    NewViewName = "6cf2c2f766f87b618edf6630b00f8736.view",
+    NewViewName = "a1c5929f912aca32f13446122cc6ce50.view",
 
     DbDir = config:get("couchdb", "database_dir"),
     ViewDir = config:get("couchdb", "view_index_dir"),
-    OldViewFilePath = filename:join([ViewDir, ".test_design", OldViewName]),
+    OldViewFilePath = filename:join([ViewDir, ".test_design", "mrview",
+                                     OldViewName]),
     NewViewFilePath = filename:join([ViewDir, ".test_design", "mrview",
                                      NewViewName]),
 
@@ -192,28 +193,31 @@ should_upgrade_legacy_view_files({DbName, Files}) ->
 
         % ensure old header
         OldHeader = read_header(OldViewFilePath),
-        ?assertMatch(#index_header{}, OldHeader),
+        ?assertEqual(6, tuple_size(OldHeader)),
+        ?assertMatch(mrheader, element(1, OldHeader)),
 
         % query view for expected results
         Rows0 = query_view(DbName, "test", "test"),
-        ?assertEqual(2, length(Rows0)),
+        ?assertEqual(3, length(Rows0)),
 
         % ensure old file gone
         ?assertNot(filelib:is_regular(OldViewFilePath)),
 
         % add doc to trigger update
-        DocUrl = db_url(DbName) ++ "/boo",
+        DocUrl = db_url(DbName) ++ "/bar",
         {ok, _, _, _} = test_request:put(
-            DocUrl, [{"Content-Type", "application/json"}], <<"{\"a\":3}">>),
+            DocUrl, [{"Content-Type", "application/json"}], <<"{\"a\":4}">>),
 
         % query view for expected results
         Rows1 = query_view(DbName, "test", "test"),
-        ?assertEqual(3, length(Rows1)),
+        ?assertEqual(4, length(Rows1)),
 
         % ensure new header
         timer:sleep(2000),  % have to wait for awhile to upgrade the index
         NewHeader = read_header(NewViewFilePath),
-        ?assertMatch(#mrheader{}, NewHeader)
+        ?assertMatch(#mrheader{}, NewHeader),
+        NewViewStatus = hd(NewHeader#mrheader.view_states),
+        ?assertEqual(3, tuple_size(NewViewStatus))
     end).
 
 
diff --git a/src/couch/test/eunit/fixtures/3b835456c235b1827e012e25666152f3.view b/src/couch/test/eunit/fixtures/6cf2c2f766f87b618edf6630b00f8736.view
similarity index 50%
rename from src/couch/test/eunit/fixtures/3b835456c235b1827e012e25666152f3.view
rename to src/couch/test/eunit/fixtures/6cf2c2f766f87b618edf6630b00f8736.view
index 9c67648..a5668ee 100644
Binary files a/src/couch/test/eunit/fixtures/3b835456c235b1827e012e25666152f3.view and b/src/couch/test/eunit/fixtures/6cf2c2f766f87b618edf6630b00f8736.view differ
diff --git a/src/couch/test/eunit/fixtures/test.couch b/src/couch/test/eunit/fixtures/test.couch
index 32c79af..5347a22 100644
Binary files a/src/couch/test/eunit/fixtures/test.couch and b/src/couch/test/eunit/fixtures/test.couch differ