Open global changes db with admin context
The global changes feed should work even if the security object says otherwise.
BugzID: 43665
diff --git a/src/global_changes_server.erl b/src/global_changes_server.erl
index 812d6da..b69b17a 100644
--- a/src/global_changes_server.erl
+++ b/src/global_changes_server.erl
@@ -36,6 +36,7 @@
-include_lib("couch/include/couch_db.hrl").
-include_lib("mem3/include/mem3.hrl").
+-define(ADMIN_CTX, {user_ctx, #user_ctx{roles = [<<"_admin">>]}}).
-record(state, {
update_db,
@@ -151,7 +152,7 @@
try group_ids_by_shard(State#state.dbname, DocIds) of
GroupedIds ->
Docs = dict:fold(fun(ShardName, Ids, DocInfoAcc) ->
- {ok, Shard} = couch_db:open(ShardName, []),
+ {ok, Shard} = couch_db:open(ShardName, [?ADMIN_CTX]),
try
GroupedDocs = get_docs_locally(Shard, Ids),
GroupedDocs ++ DocInfoAcc