diff options
author | John Christopher Anderson <jchris@apache.org> | 2009-02-13 20:52:28 +0000 |
---|---|---|
committer | John Christopher Anderson <jchris@apache.org> | 2009-02-13 20:52:28 +0000 |
commit | 4b691efb97cbbe3b0150c59c25d97882260a4984 (patch) | |
tree | 601287d898553f9623591ffc70781acbe566e606 /src/couchdb/couch_httpd_show.erl | |
parent | eb81ff32d07cb8cbe1a13a495a2aabd968313821 (diff) |
apply COUCHDB-252.
Allow _list functions to signal that iteration of the view should cease.
Thanks davisp.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@744240 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/couchdb/couch_httpd_show.erl')
-rw-r--r-- | src/couchdb/couch_httpd_show.erl | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/couchdb/couch_httpd_show.erl b/src/couchdb/couch_httpd_show.erl index 2771a1c9..1da8fe98 100644 --- a/src/couchdb/couch_httpd_show.erl +++ b/src/couchdb/couch_httpd_show.erl @@ -127,13 +127,17 @@ output_map_list(Req, Lang, ListSrc, View, Db, QueryArgs) -> JsonResp = couch_query_servers:render_list_row(QueryServer, Req, Db2, {{Key, DocId}, Value}), #extern_resp_args{ + stop = StopIter, data = RowBody } = couch_httpd_external:parse_external_response(JsonResp), RowFront2 = case RowFront of nil -> []; _ -> RowFront end, - send_chunk(Resp, RowFront2 ++ binary_to_list(RowBody)) + case StopIter of + true -> stop; + _ -> send_chunk(Resp, RowFront2 ++ binary_to_list(RowBody)) + end end, FoldlFun = couch_httpd_view:make_view_fold_fun(Req, QueryArgs, Db, RowCount, |