Updated Branches: refs/heads/1994-merge-rcouch b35725144 -> 44580da65
couch_mrview: add couch_mrview:refresh/2 function function to refresh a view index. Project: http://git-wip-us.apache.org/repos/asf/couchdb/repo Commit: http://git-wip-us.apache.org/repos/asf/couchdb/commit/44580da6 Tree: http://git-wip-us.apache.org/repos/asf/couchdb/tree/44580da6 Diff: http://git-wip-us.apache.org/repos/asf/couchdb/diff/44580da6 Branch: refs/heads/1994-merge-rcouch Commit: 44580da65f61be06e281d05de63be42a61645f74 Parents: b357251 Author: Benoit Chesneau <[email protected]> Authored: Tue Jan 28 23:23:37 2014 +0100 Committer: Benoit Chesneau <[email protected]> Committed: Tue Jan 28 23:23:37 2014 +0100 ---------------------------------------------------------------------- apps/couch_mrview/src/couch_mrview.erl | 20 ++++++++++++++++++++ apps/couch_mrview/test/08-changes_since.t | 4 ---- 2 files changed, 20 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/couchdb/blob/44580da6/apps/couch_mrview/src/couch_mrview.erl ---------------------------------------------------------------------- diff --git a/apps/couch_mrview/src/couch_mrview.erl b/apps/couch_mrview/src/couch_mrview.erl index d8f092c..26538a2 100644 --- a/apps/couch_mrview/src/couch_mrview.erl +++ b/apps/couch_mrview/src/couch_mrview.erl @@ -17,6 +17,7 @@ -export([view_changes_since/6, view_changes_since/7]). -export([count_view_changes_since/4, count_view_changes_since/5]). -export([get_info/2]). +-export([refresh/2]). -export([compact/2, compact/3, cancel_compaction/2]). -export([cleanup/1]). @@ -146,6 +147,25 @@ get_info(Db, DDoc) -> couch_index:get_info(Pid). +%% @doc refresh a view index +refresh(#db{name=DbName}, DDoc) -> + refresh(DbName, DDoc); + +refresh(Db, DDoc) -> + UpdateSeq = couch_util:with_db(Db, fun(WDb) -> + couch_db:get_update_seq(WDb) + end), + + case couch_index_server:get_index(couch_mrview_index, Db, DDoc) of + {ok, Pid} -> + case catch couch_index:get_state(Pid, UpdateSeq) of + {ok, _} -> ok; + Error -> {error, Error} + end; + Error -> + {error, Error} + end. + compact(Db, DDoc) -> compact(Db, DDoc, []). http://git-wip-us.apache.org/repos/asf/couchdb/blob/44580da6/apps/couch_mrview/test/08-changes_since.t ---------------------------------------------------------------------- diff --git a/apps/couch_mrview/test/08-changes_since.t b/apps/couch_mrview/test/08-changes_since.t index 5a10f4c..58c92e9 100644 --- a/apps/couch_mrview/test/08-changes_since.t +++ b/apps/couch_mrview/test/08-changes_since.t @@ -146,10 +146,6 @@ test_remove_key(Db) -> ]}, etap:is(Result3, Expect2, "removed key OK."). - - - - run_query(Db, Since, Opts) -> Fun = fun(KV, Acc) -> {ok, [KV | Acc]} end, {ok, R} = couch_mrview:view_changes_since(Db, <<"_design/bar">>, <<"baz">>,
