This is an automated email from the ASF dual-hosted git repository. davisp pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/couchdb.git.
from 0f833fd Fix timeout in chttpd_purge_tests new 5d219dd Add PSE API to store opaque properties new 24a3698 Improve `couch_db:clustered_db` flexibility new 3ff043e Implement `fabric_util:open_cluster_db` new 72eb129 Pass the DB record to index validation functions new 7bbe828 Validate design document options more strictly new 05678b9 Implement configurable hash functions new 25ac408 Implement partitioned dbs new 6edb9a5 Implement `couch_db:get_partition_info/2` new 3a1dd0a Implement partitioned views new eb1ffcf Optimize all_docs queries in a single partition new dc369e9 Optimize offset/limit for partition queries new 47efcbd Use index names when testing index selection new 53d3515 Support partitioned queries in Mango new 16e6af4 Add Elixir tests for database partitions The 11546 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: src/chttpd/src/chttpd.erl | 2 + src/chttpd/src/chttpd_db.erl | 148 ++++-- src/chttpd/src/chttpd_httpd_handlers.erl | 1 + src/chttpd/src/chttpd_show.erl | 2 +- src/chttpd/src/chttpd_view.erl | 8 +- .../test/chttpd_db_bulk_get_multipart_test.erl | 29 +- src/chttpd/test/chttpd_db_bulk_get_test.erl | 14 +- src/couch/src/couch_bt_engine.erl | 98 +++- src/couch/src/couch_bt_engine_compactor.erl | 8 +- src/couch/src/couch_bt_engine_header.erl | 3 +- src/couch/src/couch_btree.erl | 6 +- src/couch/src/couch_db.erl | 68 ++- src/couch/src/couch_db_engine.erl | 50 ++ src/couch/src/couch_db_updater.erl | 9 +- src/couch/src/couch_ejson_compare.erl | 4 + src/couch/src/couch_httpd.erl | 2 + src/couch/src/couch_httpd_db.erl | 44 +- src/couch/src/couch_partition.erl | 164 ++++++ src/couch/src/couch_server.erl | 4 + src/couch/test/couch_db_props_upgrade_tests.erl | 83 +++ src/couch_index/src/couch_index_server.erl | 4 +- src/couch_mrview/include/couch_mrview.hrl | 1 + src/couch_mrview/src/couch_mrview.erl | 28 +- src/couch_mrview/src/couch_mrview_http.erl | 6 +- src/couch_mrview/src/couch_mrview_index.erl | 31 +- src/couch_mrview/src/couch_mrview_show.erl | 3 +- src/couch_mrview/src/couch_mrview_updater.erl | 38 +- src/couch_mrview/src/couch_mrview_util.erl | 139 ++++- src/fabric/src/fabric.erl | 60 ++- src/fabric/src/fabric_db_create.erl | 7 +- src/fabric/src/fabric_db_info.erl | 15 +- src/fabric/src/fabric_db_partition_info.erl | 99 ++++ src/fabric/src/fabric_doc_update.erl | 8 +- src/fabric/src/fabric_rpc.erl | 17 +- src/fabric/src/fabric_streams.erl | 1 - src/fabric/src/fabric_util.erl | 45 +- src/fabric/src/fabric_view.erl | 51 +- src/fabric/src/fabric_view_all_docs.erl | 36 +- src/fabric/src/fabric_view_map.erl | 10 +- src/fabric/src/fabric_view_reduce.erl | 10 +- src/mango/src/mango_cursor.erl | 1 + src/mango/src/mango_cursor_text.erl | 9 + src/mango/src/mango_cursor_view.erl | 6 + src/mango/src/mango_error.erl | 7 + src/mango/src/mango_httpd.erl | 23 +- src/mango/src/mango_idx.erl | 114 +++- src/mango/src/mango_idx.hrl | 1 + src/mango/src/mango_idx_text.erl | 1 + src/mango/src/mango_idx_view.erl | 1 + src/mango/src/mango_opts.erl | 30 ++ src/mango/test/05-index-selection-test.py | 20 +- src/mango/test/user_docs.py | 37 +- src/mem3/src/mem3.erl | 20 +- src/mem3/src/mem3_hash.erl | 73 +++ src/mem3/src/mem3_shards.erl | 4 +- src/mem3/src/mem3_util.erl | 21 +- .../test/mem3_hash_test.erl} | 13 +- src/mem3/test/mem3_util_test.erl | 8 - test/elixir/lib/couch/db_test.ex | 12 +- test/elixir/test/partition_all_docs_test.exs | 118 ++++ test/elixir/test/partition_crud_test.exs | 356 +++++++++++++ test/elixir/test/partition_ddoc_test.exs | 171 ++++++ test/elixir/test/partition_design_docs_test.exs | 16 + test/elixir/test/partition_helpers.exs | 76 +++ test/elixir/test/partition_mango_test.exs | 591 +++++++++++++++++++++ test/elixir/test/partition_size_test.exs | 357 +++++++++++++ test/elixir/test/partition_view_test.exs | 299 +++++++++++ test/elixir/test/partition_view_update_test.exs | 155 ++++++ test/elixir/test/test_helper.exs | 1 + 69 files changed, 3647 insertions(+), 250 deletions(-) create mode 100644 src/couch/src/couch_partition.erl create mode 100644 src/couch/test/couch_db_props_upgrade_tests.erl create mode 100644 src/fabric/src/fabric_db_partition_info.erl create mode 100644 src/mem3/src/mem3_hash.erl copy src/{couch/test/couch_bt_engine_tests.erl => mem3/test/mem3_hash_test.erl} (65%) create mode 100644 test/elixir/test/partition_all_docs_test.exs create mode 100644 test/elixir/test/partition_crud_test.exs create mode 100644 test/elixir/test/partition_ddoc_test.exs create mode 100644 test/elixir/test/partition_design_docs_test.exs create mode 100644 test/elixir/test/partition_helpers.exs create mode 100644 test/elixir/test/partition_mango_test.exs create mode 100644 test/elixir/test/partition_size_test.exs create mode 100644 test/elixir/test/partition_view_test.exs create mode 100644 test/elixir/test/partition_view_update_test.exs