This is an automated email from the ASF dual-hosted git repository.
davisp pushed a change to branch prototype/fdb-layer-final-rebase
in repository https://gitbox.apache.org/repos/asf/couchdb.git.
at 7ee3cb3 Make COPY doc return only one "ok"
This branch includes the following new commits:
new 4671774 Update build system for FoundationDB
new 5fe8faf Disable eunit test suite in fabric
new 1d1392c Initial fabric2 implementation on FoundationDB
new 0ba7f82 Initial test suite for the fabric2 implementation
new 4097e5f Update ddoc_cache to use fabric2
new 8675946 Start switching chttpd HTTP endpoints to fabric2
new ad2e0f4 Remove debug logging
new 098c920 Implement attachment compression
new f62ad1e Fix fabric2_txids:terminate/2
new 5812a0d Fix revision generation on attachment upload
new f8694ad Convert attachment info to disk terms correctly
new f4152e0 Allow for previously configured filters
new f159f24 Fix validate_doc_update when recreating a document
new 56cf822 Database config changes should bump the db version
new abe6092 Implement `_users` db authentication
new cbe6687 Update get security to use fabric2
new f0a4759 Fix arity in changes timeout callback
new 4069753 Fix exception in cache auth doc update
new 9fb4109 CouchDB background jobs
new 4c75842 Remove tests for deprecated features.
new 7cec23b Implement _all_dbs/_all_docs API parameters
new 7a80cad Fix bulk docs error reporting
new 6f501a0 Fix `COPY` method
new 65a2c9a Fix revision tree extensions
new 878e06e Implement `POST /_dbs_info`
new a0484a0 Fix formatting of all_docs_test.exs
new 6aed113 Reinitialize chttpd_auth_cache on config change
new e62e485 Disable broken couch_att tests
new 36bf49b Expose ICU ucol_getSortKey
new 53c2e04 Fix more elixir tests
new e8bdcf7 Make fabric2.hrl public
new 7095a99 Expose the is_replicator_db and is_user_db logic
new 0243c7c Fix default key ranges for fold_range
new 96eb08e CouchDB map indexes on FDB
new 4f11d99 Fix job handling to halt on errors
new ab7ac01 Update to use new fold_range_future/wait functions
new df812e8 Write large documents in chunks
new e3b680d Remember to remove old doc bodies
new a291c7e Configurable FDB directory prefixes for CouchDB instances
new 9599f53 only fetch 1 query server for indexing
new 6fd2265 Add timeout for 'fold_docs-with_different_keys' test
new 69da994 add trace test for couch_views
new 5c0cc99 Implement fabric2_db EPI plugin
new 46b0bfa Fix DB reopen behavior
new c6a53fe Open dbs with admin privileges in couch_views_indexer
new 8e88fb2 Implement update_seq for couch_views
new 8dfabcb Move fabric2_dir_prefix_tests to test directory
new 343673e Fix couch_views encoding test
new 9a1447c Skip before_doc_update processing for local docs
new 6112fa4 Remove debug logging in fabric2_db_plugin
new ad3e199 Fix starkey_docid, endkey_docid and inclusive_end=false for _all_docs
new 874e908 Implement _all_docs/queries
new ee85d71 Implement _design_docs and _local_docs
new 7b03ea0 Add a max db name length config option
new 10c6f65 Handle update_seq for _local_docs
new fb628cb Handle _changes since=now param
new 1d3367e Fetch docs in parallel for view indexing
new caebcee Fix _changes heartbeat option
new a56faa7 Implement setting and getting _revs_limit
new 7b774ec Make get_security and get_revs_limit calls consistent
new f31750e Check members after db is opened
new 51bf9ea Add revision stemming for interactive docs
new 1bda85e Fix doc counts for replicated deletions
new 694dfe0 Add more deleted docs replication cases to integration test
new e5c91fe Add couch_eval abstraction layer
new 94552f6 Initial creation of couch_js application
new 0fb3853 Implement couch_js callbacks for couch_eval
new b971263 Add tests for couch_js application
new 7cbb964 Update couch_views to use couch_eval
new 8ce674e Fix mango index validation
new b80261d Fix timeout in couch_views
new ff5cb2e DRY out CouchDB FDB prefix fetching
new f9dbfa8 Use a shorter name for create_or_open_couchdb_dir
new a8b9b8b Enable FDB transaction tracing
new 003b51c Take better advantage of metadata version key feature
new 6ced531 Remove compiler warning
new 8357a9b Chunkify local docs
new 1e3379d Add a special error for an invalid legacy local doc revsion
new 255b7c5 add test to prove we can view swap
new e191183 Use "\xFF/metadataVersion" key for checking metadata
new 421805b Abandon a view job if the db or ddoc is deleted
new 139d00d Pass contexts to fabric2_db functions
new 096867f Ensure we can create partitioned design docs with FDB
new 3ea171c Check security properties in the main transaction
new 6b1e536 Before starting a db transanction, refresh the db handle from the cache
new fb10746 Update fabric2_fdb's set_config to take un-encoding values
new e30549a Assert Db handle field existence in `load_config/1` in fabric2_fdb
new 01f62f2 Check membership when calling get_security/1 in fabric2_db
new 7e4757f Support regexp based blacklist in config
new cfbb1b4 Implement fabric2_server:fdb_cluster/0
new cef89f6 Add ctrace application
new 780f587 Trace http endpoints
new 4992872 Trace fdb transactions
new c06a6c5 Implement node types
new 24fffde Add operation names for all HTTP endpoints
new cf08836 Change end-point /_up to check fdb connectivity
new 00b5956 Optimize view read latency when the view ready
new 1a44156 Retry for failed indexes builds
new 57b1951 Normalize fabric2 test suite
new 6d86e71 Delete attachments when no longer referenced
new 1bae6f8 Expiring cache
new a09bc6b Improve transaction name setting when tracing FDB transactions
new 44ae82f Add `external` tag to opentrace events
new 37c47ab Change map indexes to be stored in one row
new 599e69c Delete unused ets table creation
new 7e667e2 reserve search namespace
new 41cc0fb Support jaeger http reporter
new c7e6880 fix b3 - Headers suppose to be strings
new 210ea76 Add basic test case for b3 fix
new d4d7933 Encode startkey/endkey for all_docs (#2538)
new f99c295 Fix doc attachment tests
new b081a3c Track a database level view size rollup
new e7e168a Implement async API for `fabric2_fdb:get_info/1`
new 3faa426 Implement `fabric2_db:list_dbs_info/1,2,3`
new 83263cc Support `GET /_dbs_info` endpoint
new da1cb1f Implement mult-transactional iterators for _changes feeds
new 47c8437 Use {restart_tx, false} option in view index builder changes feed
new 5bd27de Remove attachment headers field
new 02ff58d Track the size of data stored in a database
new 96c2b59 Add tests for database size tracking
new ae7e351 Convert versionstamps to binaries
new 61bef06 Test coverage: list_dbs and list_dbs_info
new a7d6f94 Test coverage: get_full_doc_info
new 72dc367 Test coverage: validate_dbname, validate_docid
new ad54a21 Test coverage: apply_open_doc_opts
new f75e74f Re-use changes feed main transaction when including docs
new f0738aa Handle spurious 1009 (future_version) errors in couch_jobs pending
new 73879a0 Let couch_jobs use its own metadata key
new ec60c03 Improve validate_dbname test
new 1d1313a Add 410 status code to stats_descriptions
new 004eb94 Support setting base_url in Couch test helper (take 2)
new b528b7a Do not use the ddoc cache to load _changes filter design documents
new 474e55a Add fdb_to_revinfo compatibility with 5-tuple Val
new 7e7eaca Fix bug in fdb_to_revinfo compatibility clauses
new 193999a Add fdb_to_revinfo version compatibility unit test
new 9e87f15 Fix catching of Jiffy error exceptions
new fbfbda3 Temporary shortcut to running the fdb test suite
new 3009706 Fix couch_views type in wait_for_job
new 04407a4 standardize couch_views_indexer_tests
new 6e0ce76 Add Key/Value size limit for map indexes
new 65ea7a0 Enable fdb feature
new 684158d Clean up view size limit enforcement
new e40d53f Refactor view index layout
new 14e235b Fix handling of duplicate keys
new 3474cfa Don't store `{0,0,[]}` for views with new results
new afa9ca7 Test size calculations for view rows
new 800fd5f Optimize resubmitting pending jobs
new 6dd4d92 Implement a simple index auto-updater
new 370945f Enable index auto-updating for couch_views
new ef6e5bd Fix bug in reverse folding with startkey_docid
new 395d188 couch_jobs resubmit updates job data (#2649)
new 03032ae Fix _changes with a _view filter
new 2022b38 Handle spurious erlfdb future
new 07f2fd6 Handle transaction timeouts in list_dbs and list_dbs_info
new c2bf6a6 Refactor some of the "tx_too_old" tests
new 0e6bc89 A few minor cleanups in fabric2_db_crud_tests
new b3abe44 add _conflicts field to docs for views
new 5664ce6 Handle transaction cancelled errors in list_dbs_info/3
new dfae576 Handle transaction timeouts in _all_docs
new 5c11a85 Reformat and simplify couch_views_indexer_test module
new bc5c5ff Add additional get_doc spans
new da4864d Fix database re-creation
new 34a9339 Add a fabric doc fold test when db is re-created
new 841b28d Fix couch_jobs after recent db re-creation commit
new 8b4de18 add info endpoint for fdb stored views (#2706)
new 0d48755 set DbPrefix with value allocated with erlfdb_hca
new da99ca9 Implement fabric2_db:get_design_docs/1
new bb79704 Improve fabric2_events
new f946f4f Handle db re-creation in view indexing
new e6d6754 Fix db prefix checks in fabric2_fdb
new 7204f28 Make sure to clear db metadata flag before each transaction
new cda053e Implement AES KW algorithm*
new 1b06c01 Return a 400 error code for an invalid update sequence
new 45a8440 Don't advertise unimplemented features
new 03bdf7d change _all_docs to raw collation
new 619f611 Switch erlfdb to the couchdb repo at tag v1.0.0
new 17efbfc Use `couch_rate` application for `couch_view`
new 4075ffc fix all_docs call to return row
new cdce3b7 move all_doc view options to fabric2_util
new e2303f6 add include_docs option to fold_docs
new 196fab2 add fabric2 after_doc_write plugin
new 38a9971 Add couch_views_indexer build to creation versionstamp
new a4d6e6b All couch_view queries to run across transactions
new 9110228 Add couch_views_updater interactive indexer
new 141c79c Add couch_views_encoding max value
new 1cf1873 remove mango native proc
new 6e62d4b remove partition opts from mango
new d68824b remove unneeded r/w parameter
new df5da1c Remove view_cb predicate push down
new 0a55b78 Remove quorum stats
new 5ef5956 Add mango indexing
new cfb242c Update Mango query to work with couch_views
new 8c98bb4 Update mango test creds to same as elixir tests
new b307a0c update mango tests to work with Mango on FDB
new 39755aa remove defer and load_ddocs from mango_utils
new 588978f Return better responses for endpoints which are not implemented
new 5dab689 Fix POST _all_docs/queries endpoint
new d40266f Do not allow editing _security in _user database
new 7ab6905 Start running chttpd eunit tests
new 3fd446c Support soft-deletion in fabric level
new bd30b8f Support soft-deletion in chttpd level
new e4a0932 Compress doc bodies and attachments
new e07694a Add mango_plugin
new 235639b Fix job removal notifications
new a3a6676 Fix division by zero
new 42d060b Make 'make check' run all the passing FDB tests on this branch
new 1ba482e Fix incorrect usage of couch_epi in mango plugin
new b29efae Fix flaky fabric2_index test
new e251d1f Fix index updater configuration keys
new d275664 Rename variables to indicate transaction state
new 93d58e1 Move process_db/1 to match the logical progression
new ae04ecf Update to use `fabric2_db:get_design_docs/1`
new 4f27ba1 Extend fabric2_index callbacks for index cleanup
new 5ab5720 Implement couch_views:cleanup_indices/2
new fc48619 Implement _view_cleanup for FoundationDB
new 7208291 Optionally cleanup stale indices automatically
new d4b79b0 Remove jobs on index cleanup
new b2fb87a Remove failed view jobs
new 94571ec Implement couch_views_cleanup_test.erl
new 66461df Integrate emilio - erang linter
new 62476f9 Enable configurable binary chunk size
new 2823ab3 report changes stats intermittently (#2777)
new 2109522 Refactor expiring cache FDB interface
new 1813ebe Clean up old expiry key on update insert
new dd8d2df Merge keys from rebar.config
new 5e0ffe7 Allow using cached security and revs_limit properties
new 6915c93 Fetch doc in same transaction as _all_doc row
new 38d10c6 Fix typo in error message
new 60f18d3 Add after_interactive_write plugin to couch_views_updater
new 3c69747 Refactor fetching rev code in fabric2_fdb
new 8e5b859 Add fold_docs for DocId list
new f60a273 Report the chttpd_auth authentication db in session info
new e2f2919 Add native encryption support
new d073739 Add a couch_views test for multiple design documents with the same map
new 5127359 Update erlfdb to v1.1.0
new 8983156 Allow specifying FDB transaction options
new e0292a4 Fix mango test suite
new 14a19fa Remove etag from changes and _list_dbs
new b2b6c44 Temporary disable fabric2_tx_options_tests
new 07efede Re-enable the tx options tests
new 3b1fe41 Improve robustness of couch expiring cache test
new 6d3cdb4 Fix a flaky fdbcore index test
new 0358364 Fix list_dbs_info_tx_too_old flaky test
new 4f8702b return correct not implemented for reduce
new adc27fa add test to make sure type <<"text">> design docs are ignored
(#2866)
new 888e54a Re-enable ExUnit tests
new 6aea466 Update erlfdb
new 18ba40f Convert aegis key cach to LRU with hard expiration time
new 1c20462 add local_docs to fold_doc with docids
new 6a5c328 mix format all_docs_test.exs
new e06c510 Fix couch_views updater_running info result
new d171310 background deletion for soft-deleted database
new 695d132 Fix a few flaky tests in fabric2_db
new 4f45d5d Fix compiler warning
new 1b21aca Fix variable shadowing
new 3ff388e Move not_implemented check down to allow testing of validation
new cdbc033 Add tests for legacy API before refactoring
new 7576cd8 Implement pagination API
new 0a89529 Add tests for pagination API
new f88c7b4 Fix flaky couch_jobs type monitor test
new 2ffad94 Bulk docs transaction batching
new ac0675a Improve log of permanently deleting databases
new 37d583b Fix handling of limit query parameter
new 4888ae8 Improve load handling in couch_jobs and couch_views
new 89a576e Remove erlfdb mock from update_docs/2,3 test
new 11869b4 Lower the default batch size for update_docs to 2.5MB
new e56feef Introduce _bulk_docs max_doc_count limit
new 8cd1bf9 Don't skip over docs in mango indices on erlfdb errors
new 9557b51 Fix mango erlfdb error catch clause erlfdb -> erlfdb_error
new 7e87d6b Fix bad catch statement in couch_jobs activity monitor
new 328d3bf Protect couch_jobs activity monitor against timeouts as well
new 87d2133 Guard couch_jobs:accept_loop timing out
new 2722e8e Prevent eviction of newer handles from fabric_server cache
new 04fc6ec Remove on_commit handler from fabric2_fdb
new d622751 Handle error:{timeout, _} exception in couch_jobs:accept
new c17948f Improve efficiency of couch_jobs:accept/2 for views
new d2cb85d Fix couch_jobs accept timeout when no_schedule option is used
new 5caf03e Include database uuid in db info result
new 3e0676a Split couch_views acceptors and workers
new 4b07df3 Handle transaction and future timeouts in couch_jobs notifiers
new 13c245c Bump erlfdb to v1.2.2
new 7f68529 add back r and w options
new a71acb9 Reserve aegis namespace under ?CLUSTER_CONFIG
new 5cdc97e Add max_bulk_get_count configuration option
new d9a42aa Start all required deps automatically in test
new e2acd5a Do not fail when emilio detects errors
new 9d49a99 Simplify using `req_body` for JSON requests
new 1bbddfa Fix auth injection in test helper
new 64b50e6 Initial commit
new b8ce175 readme
new 4376ba3 Update README.md
new 9eca76c Update README.md
new ea1868d oops forgot the .app
new b35f7f9 get vsn from git
new 1608db2 fix compilation warnings
new 223e4d8 Update README.md
new 4f80c9b Add incremental reduce on non-leaf nodes.
new 3d5c2c8 Update README.md
new 15919cd fix bug in reduce handling during delete
new ea98b6e Pluggable collation
new edbfcaa nah
new 1502177 remove ?MODULE: nonsense
new c6b1c2e improve range tests
new 9ade59d fix range when using non-standard collation
new 95509cb fix reverse_range when using non-standard collation
new 0d22941 Accidentally introduced duplicates with custom collation
new 4326263 fix delete with custom collation
new 5f2f3fc remember firstkey of subtree
new 1f54fd9 document existence of reduce functionality
new e6220cb rename reduce to full_reduce to better represent its function
new 3515fd3 arbitrary reductions
new 0b44636 add fold/4
new 078a198 implement full_reduce using fold
new 0c650a9 handy comparison funs
new 1c1faec reimplement lookup as a fold
new 987435d unused variables
new c7aedfb reimplement reduce as fold
new 6c670da enable coverage
new a1db01a collation fun tests
new 589a897 remove unused functions
new 6f28286 Add upper bound to intermediate reduce list size
new 030759c make upper bound of interactive reduce match tree maximum
new 249f191 move full_reduce
new 8778cf9 more tests
new 6fa4c46 fix bug in full_reduce when root is a leaf
new 8289d19 more tests
new a8024d8 reduce every 50. flip flop.
new 1cf0efb follow reduce's style in full_reduce
new 14ae504 remove premature optimization even thought it was neat
new b059cdc minor optimize when visting leaf
new 2ee368a extract final reduce function
new 246db44 Arbitrary group reduce
new 754f496 ensure erlfdb is started before ebtree
new e8adb3d sequential ids
new 5b5be30 Eliminate unnecessary node lookup
new 4bcd364 swap get_node and get_node_wait
new 8a7b57d Remove separate init function
new 7525167 Introduce min and max keys for open ranges
new d890793 Update README.md
new a0e9329 reuse do_reduce in full_reduce
new 9af29e9 clarify the meaning of Fun in range/reverse_range
new b894c04 switch group_reduce to a user-defined acc function
new 672dc4d Ensure all keys are in range during group_reduce
new bd9e04f assert that non-leafs have no prev/next pointers
new 59e6b26 and then fix the bug where they got one
new ec9d4b1 adjust rebar.config to work with rebar2 and rebar3
new 279d4dd fix how lookup rate is calculated in tests
new c03982d honor ?MIN and ?MAX in find_child_int
new 5bdac8d update README.md to reflect progress
new 531c939 don't export reduce funs, they're just for tests now
new 8997de4 add spec/edoc to all public functions
new 697d599 Allow fold in fwd and rev direction
new 47a9454 Add support for group_reduce in reverse order
new 28cdade two blank lines between different functions
new e4b0bc2 refine typespec for callback functions
new 2c0370f Add ASLv2 license
new f01bdf4 add ebtree to rebar / reltool.config
new 01a2375 Allow encode/decode customisation
new 629294d Add support for previous bookmark
new b38f296 Use stored order without complaint
new 11491e4 Pass fdb key to the encode_fun
new bc34ba3 Fix 'first page should not return previous bookmark' test
new b7e2069 Only call erlfdb:set if the node changes
new bef1831 separate out collation wrapper to avoid spurious comparisons
new cc37f42 add get_active_job_ids and get_types
new 09e96fc add support for active_tasks via fabric2
new fed6433 add active_tasks for view builds using version stamps
new fd8e881 Use _scheduler/jobs instead of _active_tasks in replication Elixir tests
new 79dd25e Replace the 'true' clauses in visit with more explicit ones
new 851addf Allow inclusive_start/end
new 3920d30 Strip last_msg from logs
new c63a964 Add format_status/2 callback in gen_server implementations
new be4dae6 Do not log sensitive data during _cluster_setup
new 16c1c0e Do not log admin credentials
new 02a05f5 Update config app
new 79c3b35 Call collate for group equality
new 69da7e1 Allow interactive requests to reopen a re-created db instance
new 5154340 Optionally add a key manager application as a dependency
new 1f08f9f Validate the result from collate_fun
new d4a9ae4 add local_seq option to views (#3043)
new 80d646c Export reduce/5
new 01b4c7c Handle empty reduce batches
new 9498342 Fix range scans over an empty tree
new 914bd58 Speed up ebtree test suite without losing coverage
new 2ff6b86 Tighten expectation of members format by level
new e1d1172 extra tests
new f57713b Pluggable persist_fun
new 735caae add has_failures to couch_rate_limiter (#3088)
new 99ab818 Do not use (catch ...) in couch_views_reader:load_docs/4
new 61f72b2 Don't log client disconnects
new 2d86f93 Clear sensitive flag at end of public api functions
new eb91b24 clear jobs data in active area during removal
new bcdf984 Fix ordering of page_size based pagination for views
new 8ca9e55 Handle empty maps in active_tasks data structure
new b8301cc Allow creating new deleted documents
new 073aa1a Implement ebtree:insert_multi/3
new f7d042c Implement ebtree:lookup_multi/3
new 450c74a Implement caching of immutable ebtree nodes
new 5eb9be0 Optimize umerge_members
new 0ccd2f9 Disable node validation in production
new 7ee3cb3 Make COPY doc return only one "ok"
The 401 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.
|