You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by da...@apache.org on 2014/01/17 23:10:13 UTC

[28/49] git commit: COUCHDB-1537 Include user_ctx.name in show/list ETag

COUCHDB-1537 Include user_ctx.name in show/list ETag


Project: http://git-wip-us.apache.org/repos/asf/couchdb-couch-mrview/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-couch-mrview/commit/cda6f2f9
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-couch-mrview/tree/cda6f2f9
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-couch-mrview/diff/cda6f2f9

Branch: refs/heads/import
Commit: cda6f2f9e24ab6fb831bbbbe6bc1fb88ace14f2c
Parents: 311138f
Author: Robert Newson <rn...@apache.org>
Authored: Fri Sep 28 18:17:46 2012 +0100
Committer: Robert Newson <rn...@apache.org>
Committed: Fri Sep 28 18:19:18 2012 +0100

----------------------------------------------------------------------
 src/couch_mrview_show.erl | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/couchdb-couch-mrview/blob/cda6f2f9/src/couch_mrview_show.erl
----------------------------------------------------------------------
diff --git a/src/couch_mrview_show.erl b/src/couch_mrview_show.erl
index 426b431..3bfa035 100644
--- a/src/couch_mrview_show.erl
+++ b/src/couch_mrview_show.erl
@@ -99,7 +99,7 @@ show_etag(#httpd{user_ctx=UserCtx}=Req, Doc, DDoc, More) ->
         Doc -> couch_httpd:doc_etag(Doc)
     end,
     couch_httpd:make_etag({couch_httpd:doc_etag(DDoc), DocPart, Accept,
-        UserCtx#user_ctx.roles, More}).
+        {UserCtx#user_ctx.name, UserCtx#user_ctx.roles}, More}).
 
 % updates a doc based on a request
 % handle_doc_update_req(#httpd{method = 'GET'}=Req, _Db, _DDoc) ->
@@ -191,9 +191,10 @@ handle_view_list(Req, Db, DDoc, LName, VDDoc, VName, Keys) ->
     Args0 = couch_mrview_http:parse_qs(Req, Keys),
     ETagFun = fun(BaseSig, Acc0) ->
         UserCtx = Req#httpd.user_ctx,
+        Name = UserCtx#user_ctx.name,
         Roles = UserCtx#user_ctx.roles,
         Accept = couch_httpd:header_value(Req, "Accept"),
-        Parts = {couch_httpd:doc_etag(DDoc), Accept, Roles},
+        Parts = {couch_httpd:doc_etag(DDoc), Accept, {Name, Roles}},
         ETag = couch_httpd:make_etag({BaseSig, Parts}),
         case couch_httpd:etag_match(Req, ETag) of
             true -> throw({etag_match, ETag});