From ecb067ba1a2b32a1d6a5a210d496664adedd55ce Mon Sep 17 00:00:00 2001 From: "Paul J. Davis" Date: Tue, 29 Sep 2020 09:56:19 -0500 Subject: Use JSON collation --- src/couch_views/src/couch_views_reduce_fdb.erl | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/couch_views/src/couch_views_reduce_fdb.erl b/src/couch_views/src/couch_views_reduce_fdb.erl index a5cb90568..8ea206174 100644 --- a/src/couch_views/src/couch_views_reduce_fdb.erl +++ b/src/couch_views/src/couch_views_reduce_fdb.erl @@ -193,11 +193,18 @@ open_tree(TxDb, Sig, ViewId, ViewReduceFun) -> TreeOpts = [ {reduce_fun, get_reducer(ViewReduceFun)}, + {collate_fun, fun less_json_rows/2}, {encode_fun, EncodeFun} ], ebtree:open(Tx, ReduceIdxPrefix, btree_order_size(), TreeOpts). +less_json_rows({_, _} = A, {_, _} = B) -> + couch_ejson_compare:less_json_ids(A, B); +less_json_rows(A, B) -> + couch_ejson_compare:less_json(A, B). + + delete_keys(Tx, Tree, DocId, Keys) -> lists:foreach(fun (Key) -> EK = create_key(Key, DocId), -- cgit v1.2.1