diff options
author | benoitc <benoitc@apache.org> | 2014-01-28 23:23:37 +0100 |
---|---|---|
committer | benoitc <benoitc@apache.org> | 2014-01-28 23:23:37 +0100 |
commit | 44580da65f61be06e281d05de63be42a61645f74 (patch) | |
tree | b6fab600ce694e3f18a1eaffe2e39738b8b6b20c | |
parent | b357251448a2f7c2e9aca5056834a52d80bfeaeb (diff) | |
download | couchdb-44580da65f61be06e281d05de63be42a61645f74.tar.gz |
couch_mrview: add couch_mrview:refresh/2 function
function to refresh a view index.
-rw-r--r-- | apps/couch_mrview/src/couch_mrview.erl | 20 | ||||
-rw-r--r-- | apps/couch_mrview/test/08-changes_since.t | 4 |
2 files changed, 20 insertions, 4 deletions
diff --git a/apps/couch_mrview/src/couch_mrview.erl b/apps/couch_mrview/src/couch_mrview.erl index d8f092c60..26538a251 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, []). diff --git a/apps/couch_mrview/test/08-changes_since.t b/apps/couch_mrview/test/08-changes_since.t index 5a10f4cda..58c92e94a 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">>, |