Introduce reset_vacc
COUCHDB-3060
diff --git a/src/couch_mrview_http.erl b/src/couch_mrview_http.erl
index 529d208..253ee30 100644
--- a/src/couch_mrview_http.erl
+++ b/src/couch_mrview_http.erl
@@ -309,7 +309,7 @@
VAcc1 = VAcc0#vacc{resp=Resp0},
VAcc2 = lists:foldl(fun(Args, Acc0) ->
{ok, Acc1} = couch_mrview:query_view(Db, DDoc, ViewName, Args, fun view_cb/2, Acc0),
- Acc1
+ reset_vacc(Acc1)
end, VAcc1, ArgQueries),
{ok, Resp1} = chttpd:send_delayed_chunk(VAcc2#vacc.resp, "\r\n]}"),
{ok, Resp2} = chttpd:end_delayed_json_response(Resp1),
@@ -320,6 +320,10 @@
_ -> {ok, Resp2}
end.
+%% reset between queries in multi-query
+reset_vacc(Vacc) ->
+ Vacc#vacc{row_sent=false}.
+
filtered_view_cb({row, Row0}, Acc) ->
Row1 = lists:map(fun({doc, null}) ->