summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--share/www/script/test/changes.js9
-rw-r--r--src/couchdb/couch_httpd_db.erl2
2 files changed, 10 insertions, 1 deletions
diff --git a/share/www/script/test/changes.js b/share/www/script/test/changes.js
index e7721cbb..1adfaa1b 100644
--- a/share/www/script/test/changes.js
+++ b/share/www/script/test/changes.js
@@ -189,6 +189,15 @@ couchTests.changes = function(debug) {
resp = JSON.parse(req.responseText);
T(resp.results.length == 1);
+ // changes get all_docs style with deleted docs
+ var doc = {a:1};
+ db.save(doc);
+ db.deleteDoc(doc);
+ var req = CouchDB.request("GET",
+ "/test_suite_db/_changes?filter=changes_filter/bop&style=all_docs");
+ var resp = JSON.parse(req.responseText);
+ TEquals(1, resp.results.length, "should return one result row");
+
// test for userCtx
run_on_modified_server(
[{section: "httpd",
diff --git a/src/couchdb/couch_httpd_db.erl b/src/couchdb/couch_httpd_db.erl
index ae58be2b..8bcacfdc 100644
--- a/src/couchdb/couch_httpd_db.erl
+++ b/src/couchdb/couch_httpd_db.erl
@@ -194,7 +194,7 @@ make_filter_funs(Req, Db) ->
FilterSrc = couch_util:get_nested_json_value({Props}, [<<"filters">>, FName]),
{ok, Pid} = couch_query_servers:start_filter(Lang, FilterSrc),
FilterFun = fun(DInfo = #doc_info{revs=[#rev_info{rev=Rev}|_]}) ->
- {ok, Doc} = couch_db:open_doc(Db, DInfo),
+ {ok, Doc} = couch_db:open_doc(Db, DInfo, [deleted]),
{ok, Pass} = couch_query_servers:filter_doc(Pid, Doc, Req, Db),
case Pass of
true ->