diff options
author | Paul J. Davis <paul.joseph.davis@gmail.com> | 2019-04-30 13:41:11 -0500 |
---|---|---|
committer | Paul J. Davis <paul.joseph.davis@gmail.com> | 2019-04-30 13:41:11 -0500 |
commit | add48a531221703f8d87494fbd2dbc6ccf1f3735 (patch) | |
tree | 5ac11ecd3775d8c594f18bf05e9e8c41a7d7dafa | |
parent | ca63700f98ba59459bac3b3283048614ccfc2d5d (diff) | |
download | couchdb-add48a531221703f8d87494fbd2dbc6ccf1f3735.tar.gz |
Add ddoc validation for fabric2 dbs
-rw-r--r-- | src/couch_mrview/src/couch_mrview.erl | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/couch_mrview/src/couch_mrview.erl b/src/couch_mrview/src/couch_mrview.erl index ae1d8d6f5..cf6f27fde 100644 --- a/src/couch_mrview/src/couch_mrview.erl +++ b/src/couch_mrview/src/couch_mrview.erl @@ -173,8 +173,18 @@ join([H|[]], _, Acc) -> join([H|T], Sep, Acc) -> join(T, Sep, [Sep, H | Acc]). +validate(#{} = Db, DDoc) -> + DbName = fabric2_db:name(Db), + IsPartitioned = fabric2_db:is_partitioned(Db), + validate(DbName, IsPartitioned, DDoc); -validate(Db, DDoc) -> +validate(Db, DDoc) -> + DbName = couch_db:name(Db), + IsPartitioned = couch_db:is_partitioned(Db), + validate(DbName, IsPartitioned, DDoc). + + +validate(DbName, IsDbPartitioned, DDoc) -> ok = validate_ddoc_fields(DDoc#doc.body), GetName = fun (#mrview{map_names = [Name | _]}) -> Name; @@ -203,9 +213,9 @@ validate(Db, DDoc) -> language = Lang, views = Views, partitioned = Partitioned - }} = couch_mrview_util:ddoc_to_mrst(couch_db:name(Db), DDoc), + }} = couch_mrview_util:ddoc_to_mrst(DbName, DDoc), - case {couch_db:is_partitioned(Db), Partitioned} of + case {IsDbPartitioned, Partitioned} of {false, true} -> throw({invalid_design_doc, <<"partitioned option cannot be true in a " |