This is an automated email from the ASF dual-hosted git repository.
chewbranca pushed a change to branch add-report-logging
in repository https://gitbox.apache.org/repos/asf/couchdb.git
discard 292dcb93d Fix report log test msg format
discard a039f22f8 Use consistent report_level field name
discard 29ab5e7fa Fix format type bug and usage of type
discard 9f1664c64 Cleanup payload generation
discard f87be554d Use correct report level for syslog levels
discard f9e7fa308 Fix couch_log formatter test
discard bdf5abe36 Write numerica metadata as numbers
discard 930cad4e9 More questionable formatting changes
discard 4f92a318c Use bad formatting
discard bc04eeb5c Fixup couch_log_formatter length check and tests
discard 8f3aabe2c Switch couch_log:report to only be metadata reporting
discard 40dcb323c Remove unnecessary comment
discard 09b7c6d69 Remove type from syslog entry as it's in metadata
discard eac830801 Update report logging format and logic
discard 9ce6bdc81 Add measures logging
discard f6ea77301 Add couch_log:report/2 to log structured data
add b5693fd7e Elixir >= 1.14 doesn't support rebar2 - Remove
initialization
add 9a92fbbe3 Remove Spidermonkey 1.8.5
add 1c43d0289 Fixes 9a92fbb - Set default version of Spidermonkey to 91
(#4367)
add b3b57e445 Fix replication _scheduler/docs total_rows
add 01c161b35 Delete unused include_lib attributes
add a14922fad Ensure design docs are uploaded individually when
replicating with _bulk_get
add dad51b5b8 Set the SpiderMonkey version for the first phase of PR builds
add aff7a6e71 docs(mango): match description of `$mod` with reality
add bcfaa82c3 Merge pull request #4379 from pgj/mango-doc-fix
add deb8ef271 Adding build-report makefile target on Windows (#4384)
add 4b2d3dc62 Bump recon to 2.5.3
add 3b6ebdeb3 ci(mac): re-enable mac CI for the full build
add 5f2d5b135 Show mango_selector:match/2 call using test
add 00e24b0df Push down field projection in mango to shard
add 3181d928e Allow to run only specific EUnit tests on Windows (#4399)
add 262e4d161 Enforce docs ids _changes filter optimization limit
add e5f6c581b Docs: Fix example code in Partitioned Databases
add f11491568 return 503 immediately if search is not available
add 88ebc65c0 Merge pull request #4404 from
apache/503-if-search-not-available
add 9536b9796 chore(configure): be more defensive about SpiderMonkey
location
add 576ab21c6 Unify style of `if` blocks
add 23efd8e5b Port the SpiderMonkey check to Windows
add a7551aac2 docs(INSTALL.Unix): update instructions
add 832f58a7a Employ `make python-black-update`
add 1eef73952 Remove json2 JS script and the try except around seal
add 80b68a053 Use pip3 instead of pip in docs setup
add 0fa595531 Allow _local doc writes to the replicator dbs
add bf0903087 Remove all javascript tests
add 0a49ffcda Convert ExUnit tests back to EUnit
add a73388452 Disable execution of ExUnit tests
add c79d82f10 Fix Dreyfus Elixir test suite
add 4185bc094 Document the `dreyfus-test` `make` target
add 8bc485d9b Improve directory structure for Dreyfus EUnit tests
add f4311014f Stop citing the JavaScript integration tests
add 8a6c3bce2 Update the list of the available test suite types
add 0867d1b21 Reorder top-level smoosh-settings to the correct section
(#4420)
add d3b0bcbf3 Test the update_docs=true case in replicator scheduler docs
test
add 58e5825c6 mango: Remove unused imports
add b08dc7ac7 mango: Remove unused parameter from the JSON index selection
add 1c90b504a mango: Add type specification for the JSON index selection
add a650b4461 mango: Cover JSON index selection with unit tests
add 3fa8f72ac mango: Match comments with implementation for JSON index
selection
add 97fdac3af mango: Fix specification of `choose_best_index/1`
add 395c08302 Move elixir search tests to be with other elixir tests
add 50dd63176 Chase rename of `dreyfus-test` to `elixir-search` in
documentation
add df0699a60 Clean up `make help` output
add 065b86fab Remove the inactive uploader action from `build-report`
add 0feedb66f Fix the `list-eunit-apps` target
add 9b86e7130 Overhaul the Windows Makefile
add 645912d0c Fix typo
add 9f8cf48e9 docs/api: use {params} consistently in titles (#4426)
add b38885114 Allow definition of JWT roles claim as comma-seperated list
(#4431)
add c866b488d Unifying the notation of dynamic parameters in the docs
(#4436)
add f7cafa30a Fix typo in "feature_flags" section comment (#4433)
add b3890b5d3 Fix and extend developer instructions
add 9cde18150 mango: skip the `$keymapMatch` test for text indexes
add 1278cf19f mango: switch to UTF-8 encoding for every test
add 187d9337e Consolidate Mango integration tests
add ae3d2971e Upgrade hash algorithm for proxy auth (#4438)
add 9c1278dbc Show ini code-block correctly (#4440)
add cc674a85e Unifying the notation of dynamic parameters in the docs 2
(#4441)
add 301797c56 Update Erlang 24 for CI
add 7a2705ac6 hide shard-sync and purge documents from `_local_docs`
add b702a5edf inspect the document more precisely to avoid skipping user
docs
add 8f519ba04 add tests to cover hiding resp showing system docs
add ac600d1bb add a notice that purge documents are only visible with
`include_system=true`
add 4df37bc8c Update last_check in file logger record
add f677dd5e8 Use persistent terms for features
add 54879f9a5 This enables configuring FIPS mode at runtime without the
need for a custom build.
add c0b8839bf Only allow POST request for /{db}/_view_cleanup (#4449)
add b8abb4aad Fix bad prometheus section name
add 7ec5f645f Fix flaky LRU test
add 6e9834564 Fix flaky elixir users_db_tests
add 5aed161e9 Remove duplicate parts of doc note (#4455)
add 0db915475 Documentation: Add `adm:pass` to replication endpoint URL
(#4457)
add 0c49292a8 Improve documentation of source code format checks
add edded9618 Tweak formatting and style of `_find` API documentation
(#4460)
add 774acb85d Fix erlfmt-format on Windows (#4463)
add 8ec7b5788 Bump snappy to CouchDB-1.0.9 (#4464)
add f40147b26 mango: correct text index selection for queries with
`$regex` (#4458)
add bd1d8dc8b Modify conflict ruby example
add 5b5a1c2de Remove stale links from documentation comments
add dff01446c Prepare for Erlang OTP/26 (#4465)
add 138163147 fix: remove duplicate couchdb_erlang* from _prometheus
add 6d7cfe892 Avoid re-compiling filter view functions
add 5cdc0aa1b Fix list ordering and indentation in "Search" docs (#4476)
add 0aedd9384 fix: prometheus counter metric naming (#4474)
add b9762479f Improve couch_js_tests
add a25336f91 Migrate configure settings to Windows (#4479)
add bb0f37bf0 feat: add type and descriptions to prometheus output (#4475)
add 8c0a177c7 docs(typo): Fix server name duplicate (#4484)
add 937ccb6ef catch and log any error from mem3:local_shards
add 2c129d167 Merge pull request #4485 from apache/couch_index_crashes
add 1df0f4f40 Bump Erlang 24 and 25 in CI
add 189db657f fix(doc): reverse definition of `all_nodes` and
`cluster_nodes` to match reality
add 65ad03c0f Revert "catch and log any error from mem3:local_shards"
add 451d4bdd6 log the original stack trace if Mod:Func throws
add f82d96173 don't crash in handle_db_event
add 224d6764e track index pids during open and don't crash if they do
add 0073e764b Merge pull request #4491 from apache/couch_index_fixes
add 09dca4e5b Suppress sasl_error_logger output on Windows (#4492)
add 27af79c4a Add log directory to eunit setup template (#4493)
add 07c1433d3 eunit test to assert ddoc_updated clause doesn't throw
add 3f0d86f99 Increase index crash test cover a bit
add 35b1adc48 Merge pull request #4495 from apache/add_db_event_crash_test
add 467e14ef1 docs(_find): catch up with the implementation and further
fixes
add 25d6e7dfc add error_info clause for 410 Gone
add 75ee0f0fb Merge pull request #4503 from apache/410-gone
add cd77b07cf Treat javascript internal errors as fatal
add d1412552f docs(hosts): Remove misleading /etc/hosts info (#4506)
add bef20f357 feat (prometheus): metrics for individual message queues
add f4fd6b5d3 feat (prometheus): internal_replication_jobs metric
add ee11952c8 feat (prometheus): membership metric
add 8c1ef5bfe fix (prometheus): gauge types for metrics that can be
decremented
add a9bce2f59 Merge pull request #4507 from apache/prometheus_metrics
add 23f4e628d treat single-element keys as the key for `_view`
add 31e3f64e6 Merge pull request #4494 from jiahuili430/treat-key-as-keys
add 5c99df170 allow configurable timeouts for _view and _search
add 762277f3d Merge pull request #4513 from apache/configurable-timeouts
add f4d7d19de docs(_find): Remove redundancy from sample `_explain`
response
add db38da4af Add s390x back into the CI matrix
add 1432717b1 docs: Fixed `_compact/{ddoc}` and `_shards/{docid}` examples
add e32cfd63d Improve compression eunit test suite
add a6ab75b43 Querying `_all_docs` with non-string `key` should return an
empty list
add e755e2352 Make remsh work with quoted cookie
add 865d5f898 Bind python-black to specific version (#4528)
add b7686a9da feat (prometheus): include aggregated couch/index message
queues
add bb3314262 feat (prometheus): couch_db_updater and couch_file queue
stats
add 16a350b97 feat (prometheus): add Erlang distribution stats
add daecd3f50 fix (prometheus): do not emit ophaned HELP/TYPE lines
add 98a356c32 Merge pull request #4525 from apache/prometheus_erlang_dist
add 4b8b7ec9f Improve couch_proc_manager
add c5a7809f0 Remove limit parameter from ken
add 1ed0519a1 Remove explicit import
add c83b5ccb6 mango: introduce support for covering indexes
add 42deb8471 mango: add type information for better self-documentation
add 3351a2647 mango: increase coverage of the `choose_best_index/1` test
add 313b74e92 mango: add eunit tests
add e6af4924c _find: mention the `covered` attribute in the `_explain`
response
add f5371aab7 mango: add integration tests for keys-only covering indexes
add cc500adc1 mango: mark fields with the `$exists` operator indexable
add 8b1e1837d mango: enhance compositionality of
`consider_index_coverage/3`
add 28480f9a4 mango: fix definition of index coverage
add df52be577 mango: refactor
add c1195e43c fix(mango): GET invalid path under `_index` should not cause
500
add a28b75a9d Import nouveau (#4291)
add 4c741a94d put lucene 9 indexes in subdir
add 6f568480c Merge pull request #4539 from apache/nouveau-lucene9-subdir
add 3c90100de remove unused facet property
add ac300497b Merge pull request #4540 from
apache/nouveau-remove-facet-field
add be07ff799 simplify analyzer factory
add e956ce523 Merge pull request #4541 from
apache/nouveau-simplify-analyzer-factory
add 3f0ed0c9a doc(cve): add 2023-26268 placeholder
add 2ee4f659f doc(cve): add 2023-26268 placeholder & backport release notes
add eeca93c94 declare dependency on nouveau
add e4bc2b51c Merge pull request #4550 from apache/mango-nouveau-dep
add e6dcf443f Noticed the new internal error couchjs test was flaky
add 0d1175a4f Another flaky couch_js fix
add 5096243ff enable nouveau tests in CI
add 3ea049d64 allow PUT to existing index if definition identical
add 57fc9047a OTP 23 support
add f240adc8a Add log dumping to build-report make target
add f4f04e092 enhance out of order message
add 6f39ae734 mango end-to-end tests for nouveau
add 210e80e03 enhance test diagnostics
add 5df9dbe8c capture warn/error in entirety
add 2e4563115 disable ken
add 67e17afd9 maven batch mode
add 307450c3c cache (immutable) maven artifacts
add 8e03f9766 Merge pull request #4543 from
apache/jenkins-enable-nouveau-ci
add 23dfab503 fix race condition when creating indexes
add 6f4711fe7 Merge pull request #4555 from
apache/nouveau-race-condition-creating-index
add ce46316d6 Add couch_log:report/2 to log structured data
add 51ed8c914 Add measures logging
add 28e86b617 Update report logging format and logic
add b0b3c21b3 Remove type from syslog entry as it's in metadata
add 507f2b458 Remove unnecessary comment
add b5b855ed4 Switch couch_log:report to only be metadata reporting
add 6b765f9a1 Fixup couch_log_formatter length check and tests
add 41af74142 Use bad formatting
add 326db363d More questionable formatting changes
add 302dc689f Write numerica metadata as numbers
add 532c9660b Fix couch_log formatter test
add bae86c18e Use correct report level for syslog levels
add 947945488 Cleanup payload generation
add acfedcf1f Fix format type bug and usage of type
add 503832b06 Use consistent report_level field name
add 0002c0668 Fix report log test msg format
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (292dcb93d)
\
N -- N -- N refs/heads/add-report-logging (0002c0668)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
No new revisions were added by this update.
Summary of changes:
.devcontainer/devcontainer.json | 4 +-
.gitignore | 4 +-
INSTALL.Unix.md | 38 +-
Makefile | 92 +-
Makefile.win | 97 +-
README-DEV.rst | 139 ++-
build-aux/Jenkinsfile.full | 49 +-
build-aux/Jenkinsfile.pr | 8 +-
build-aux/show-test-results.py | 4 +-
configure | 40 +-
configure.ps1 | 26 +-
dev/format_lib.py | 4 +-
dev/run | 50 +-
nouveau/.gitignore | 7 +
{src/couch_peruser => nouveau}/LICENSE | 1 -
nouveau/README.md | 118 ++
nouveau/TODO | 8 +
nouveau/nouveau.yaml | 27 +
nouveau/pom.xml | 291 +++++
.../apache/couchdb/nouveau/NouveauApplication.java | 82 ++
.../nouveau/NouveauApplicationConfiguration.java | 74 ++
.../apache/couchdb/nouveau/api/AnalyzeRequest.java | 51 +
.../couchdb/nouveau/api/AnalyzeResponse.java | 45 +
.../couchdb/nouveau/api/DocumentDeleteRequest.java | 50 +
.../couchdb/nouveau/api/DocumentUpdateRequest.java | 72 ++
.../apache/couchdb/nouveau/api/DoubleField.java | 52 +
.../apache/couchdb/nouveau/api/DoubleRange.java | 31 +
.../java/org/apache/couchdb/nouveau/api/Field.java | 49 +
.../couchdb/nouveau/api/IndexDefinition.java | 101 ++
.../org/apache/couchdb/nouveau/api/IndexInfo.java | 64 +
.../java/org/apache/couchdb/nouveau/api/Range.java | 145 +++
.../org/apache/couchdb/nouveau/api/SearchHit.java | 65 +
.../apache/couchdb/nouveau/api/SearchRequest.java | 151 +++
.../apache/couchdb/nouveau/api/SearchResults.java | 97 ++
.../apache/couchdb/nouveau/api/StoredField.java | 48 +
.../apache/couchdb/nouveau/api/StringField.java | 54 +
.../org/apache/couchdb/nouveau/api/TextField.java | 55 +
.../org/apache/couchdb/nouveau/core/IOUtils.java | 64 +
.../org/apache/couchdb/nouveau/core/Index.java | 176 +++
.../apache/couchdb/nouveau/core/IndexFunction.java | 23 +
.../apache/couchdb/nouveau/core/IndexLoader.java | 26 +
.../apache/couchdb/nouveau/core/IndexManager.java | 346 ++++++
.../apache/couchdb/nouveau/core/StripedLock.java | 44 +
.../nouveau/core/UpdatesOutOfOrderException.java | 25 +
.../core/UpdatesOutOfOrderExceptionMapper.java | 32 +
.../couchdb/nouveau/core/ser/ByteArrayWrapper.java | 24 +
.../couchdb/nouveau/core/ser/DoubleWrapper.java | 24 +
.../couchdb/nouveau/core/ser/FloatWrapper.java | 24 +
.../couchdb/nouveau/core/ser/IntWrapper.java | 24 +
.../couchdb/nouveau/core/ser/LongWrapper.java | 24 +
.../couchdb/nouveau/core/ser/PrimitiveWrapper.java | 46 +
.../couchdb/nouveau/core/ser/StringWrapper.java | 24 +
.../couchdb/nouveau/health/AnalyzeHealthCheck.java | 46 +
.../couchdb/nouveau/health/IndexHealthCheck.java | 63 +
.../nouveau/lucene9/Lucene9AnalyzerFactory.java | 143 +++
.../couchdb/nouveau/lucene9/Lucene9Index.java | 507 ++++++++
.../couchdb/nouveau/lucene9/Lucene9Module.java | 31 +
.../nouveau/lucene9/NouveauQueryParser.java | 181 +++
.../nouveau/lucene9/ParallelSearcherFactory.java | 36 +
.../couchdb/nouveau/lucene9/QueryDeserializer.java | 121 ++
.../couchdb/nouveau/lucene9/QuerySerializer.java | 171 +++
.../lucene9/SimpleAsciiFoldingAnalyzer.java | 39 +
.../couchdb/nouveau/resources/AnalyzeResource.java | 74 ++
.../couchdb/nouveau/resources/IndexResource.java | 147 +++
.../couchdb/nouveau/tasks/CloseAllIndexesTask.java | 38 +
nouveau/src/main/resources/banner.txt | 7 +
nouveau/src/main/resources/openapi.yaml | 9 +
.../couchdb/nouveau/api/SearchRequestTest.java | 59 +
.../nouveau/health/AnalyzeHealthCheckTest.java | 29 +
.../nouveau/health/IndexHealthCheckTest.java | 51 +
.../lucene9/Lucene9AnalyzerFactoryTest.java | 283 +++++
.../couchdb/nouveau/lucene9/Lucene9IndexTest.java | 223 ++++
.../nouveau/lucene9/NouveauQueryParserTest.java | 106 ++
.../nouveau/lucene9/QuerySerializationTest.java | 47 +
.../resources/fixtures/DocumentUpdateRequest.json | 22 +
.../src/test/resources/fixtures/SearchRequest.json | 17 +
rebar.config.script | 7 +-
rel/apps/couch_epi.config | 1 +
rel/files/eunit.ini | 4 +-
rel/overlay/bin/remsh | 19 +-
rel/overlay/etc/default.ini | 42 +-
rel/overlay/etc/vm.args | 11 +
rel/plugins/eunit_plugin.erl | 4 +-
rel/reltool.config | 2 +
setup_eunit.template | 3 +-
share/server/filter.js | 5 -
share/server/json2.js | 482 --------
share/server/loop.js | 29 +-
share/server/nouveau.js | 108 ++
share/server/state.js | 12 +-
share/server/util.js | 12 +-
share/server/views.js | 2 +
src/chttpd/src/chttpd.erl | 37 +-
src/chttpd/src/chttpd_db.erl | 15 +-
src/chttpd/src/chttpd_misc.erl | 13 +-
src/chttpd/src/chttpd_node.erl | 41 +-
src/chttpd/src/chttpd_show.erl | 5 +-
src/chttpd/test/eunit/chttpd_auth_tests.erl | 87 ++
src/chttpd/test/eunit/chttpd_changes_test.erl | 656 ++++++++++
src/chttpd/test/eunit/chttpd_local_docs_tests.erl | 198 +++
src/chttpd/test/eunit/chttpd_view_test.erl | 473 ++++++--
src/config/src/config.erl | 42 +-
src/config/test/config_tests.erl | 6 +
src/couch/include/couch_db.hrl | 10 +-
src/couch/rebar.config.script | 7 +-
src/couch/src/couch.app.src | 1 -
src/couch/src/couch_changes.erl | 22 +-
src/couch/src/couch_db.erl | 2 +-
src/couch/src/couch_db_updater.erl | 2 +-
src/couch/src/couch_doc.erl | 10 +-
src/couch/src/couch_hash.erl | 30 +-
src/couch/src/couch_httpd_auth.erl | 24 +-
src/couch/src/couch_native_process.erl | 2 +-
src/couch/src/couch_os_process.erl | 2 +-
src/couch/src/couch_proc_manager.erl | 660 ++++++----
src/couch/src/couch_query_servers.erl | 106 +-
src/couch/src/couch_server.erl | 8 -
src/couch/src/couch_util.erl | 5 +-
src/couch/src/test_util.erl | 6 +
src/couch/test/eunit/couch_auth_cache_tests.erl | 3 +-
src/couch/test/eunit/couch_compress_tests.erl | 128 ++
src/couch/test/eunit/couch_hash_test.erl | 52 +
src/couch/test/eunit/couch_js_tests.erl | 213 +++-
src/couch/test/eunit/couch_query_servers_tests.erl | 2 +-
.../test/eunit/couchdb_file_compression_tests.erl | 116 +-
src/couch/test/eunit/couchdb_os_proc_pool.erl | 796 +++++++++----
src/couch/test/eunit/same_site_cookie_tests.erl | 88 ++
src/couch/test/exunit/couch_compress_tests.exs | 113 --
src/couch/test/exunit/same_site_cookie_tests.exs | 44 -
src/couch/test/exunit/test_helper.exs | 2 -
src/couch_event/src/couch_event_listener_mfa.erl | 25 +-
src/couch_index/src/couch_index_server.erl | 150 ++-
.../test/eunit/couch_index_crash_tests.erl | 233 ++++
.../test/eunit/couch_index_ddoc_updated_tests.erl | 3 +-
src/couch_log/src/couch_log_writer_file.erl | 7 +-
src/couch_mrview/src/couch_mrview.erl | 84 +-
src/couch_mrview/src/couch_mrview_http.erl | 37 +-
src/couch_mrview/src/couch_mrview_show.erl | 5 +-
src/couch_mrview/src/couch_mrview_util.erl | 13 +-
.../test/eunit/couch_mrview_all_docs_tests.erl | 39 +
.../test/eunit/couch_mrview_http_tests.erl | 29 +
src/couch_prometheus/src/couch_prometheus.app.src | 2 +-
.../src/couch_prometheus_server.erl | 320 ++++-
src/couch_prometheus/src/couch_prometheus_util.erl | 183 ++-
.../test/eunit/couch_prometheus_e2e_tests.erl | 50 +-
.../test/eunit/couch_prometheus_util_tests.erl | 70 --
src/couch_replicator/src/couch_replicator_docs.erl | 2 +
.../src/couch_replicator_httpd_util.erl | 8 +-
.../src/couch_replicator_worker.erl | 22 +-
.../test/eunit/couch_replicator_bulk_get_tests.erl | 79 +-
...ests.erl => couch_replicator_doc_ids_tests.erl} | 50 +-
.../couch_replicator_scheduler_docs_tests.erl | 261 ++++
.../test/eunit/couch_replicator_test_helper.erl | 12 +-
.../src/ddoc_cache_entry_validation_funs.erl | 2 +-
src/docs/README.md | 4 +-
src/docs/ext/configdomain.py | 2 -
src/docs/setup.sh | 4 +-
src/docs/src/api/database/bulk-api.rst | 4 +-
src/docs/src/api/database/changes.rst | 6 +-
src/docs/src/api/database/common.rst | 6 +-
src/docs/src/api/database/compact.rst | 28 +-
src/docs/src/api/database/find.rst | 254 ++--
src/docs/src/api/database/index.rst | 4 +-
src/docs/src/api/database/misc.rst | 26 +-
src/docs/src/api/database/security.rst | 6 +-
src/docs/src/api/database/shard.rst | 23 +-
src/docs/src/api/ddoc/common.rst | 18 +-
src/docs/src/api/ddoc/index.rst | 1 +
src/docs/src/api/ddoc/nouveau.rst | 142 +++
src/docs/src/api/ddoc/render.rst | 36 +-
src/docs/src/api/ddoc/rewrites.rst | 2 +-
src/docs/src/api/ddoc/search.rst | 12 +-
src/docs/src/api/ddoc/views.rst | 91 +-
src/docs/src/api/document/attachments.rst | 6 +-
src/docs/src/api/document/common.rst | 6 +-
src/docs/src/api/local.rst | 24 +-
src/docs/src/api/partitioned-dbs.rst | 28 +-
src/docs/src/api/server/authn.rst | 43 +-
src/docs/src/api/server/common.rst | 53 +-
src/docs/src/best-practices/reverse-proxies.rst | 2 +-
src/docs/src/cluster/purging.rst | 8 +-
src/docs/src/config/auth.rst | 20 +-
src/docs/src/config/compaction.rst | 2 +-
src/docs/src/config/couch-peruser.rst | 2 +-
src/docs/src/config/query-servers.rst | 28 +
src/docs/src/config/replicator.rst | 4 +-
.../{ddocs/views/index.rst => cve/2023-26268.rst} | 24 +-
src/docs/src/ddocs/index.rst | 1 +
src/docs/src/ddocs/nouveau.rst | 692 +++++++++++
src/docs/src/ddocs/search.rst | 90 +-
src/docs/src/experimental.rst | 10 +
src/docs/src/install/index.rst | 1 +
src/docs/src/install/nouveau.rst | 59 +
src/docs/src/intro/api.rst | 43 +-
src/docs/src/intro/curl.rst | 3 +-
src/docs/src/maintenance/compaction.rst | 21 +-
src/docs/src/partitioned-dbs/index.rst | 6 +-
src/docs/src/replication/conflicts.rst | 107 +-
src/docs/src/replication/replicator.rst | 70 +-
src/docs/src/setup/cluster.rst | 6 +-
src/docs/src/whatsnew/0.11.rst | 2 +-
src/docs/src/whatsnew/2.3.rst | 4 +-
src/docs/src/whatsnew/3.2.rst | 18 +-
src/docs/src/whatsnew/3.3.rst | 55 +-
src/dreyfus/src/dreyfus_fabric_search.erl | 4 +-
src/dreyfus/src/dreyfus_httpd.erl | 13 +
src/dreyfus/src/dreyfus_index.erl | 4 +-
src/dreyfus/test/elixir/mix.exs | 30 -
src/dreyfus/test/elixir/mix.lock | 5 -
src/dreyfus/test/elixir/run | 4 -
src/dreyfus/test/elixir/test/test_helper.exs | 4 -
.../{ => eunit}/dreyfus_blacklist_await_test.erl | 0
.../{ => eunit}/dreyfus_blacklist_request_test.erl | 0
.../test/{ => eunit}/dreyfus_config_test.erl | 0
.../test/{ => eunit}/dreyfus_purge_test.erl | 0
src/dreyfus/test/{ => eunit}/dreyfus_test_util.erl | 0
src/ets_lru/test/ets_lru_test.erl | 6 +
src/fabric/src/fabric.erl | 7 +-
src/fabric/src/fabric_rpc.erl | 41 +-
src/fabric/src/fabric_util.erl | 3 +-
src/fabric/src/fabric_view_map.erl | 2 +-
src/fabric/src/fabric_view_reduce.erl | 2 +-
src/ken/src/ken_server.erl | 62 +-
src/ken/test/ken_server_test.erl | 10 +-
src/mango/README.md | 2 +-
src/mango/src/mango.app.src | 3 +-
src/mango/src/mango.hrl | 22 +
src/mango/src/mango_cursor.erl | 2 +
...go_cursor_text.erl => mango_cursor_nouveau.erl} | 129 +-
src/mango/src/mango_cursor_special.erl | 4 +-
src/mango/src/mango_cursor_text.erl | 2 +-
src/mango/src/mango_cursor_view.erl | 1260 +++++++++++++++++++-
src/mango/src/mango_error.erl | 20 +
src/mango/src/mango_httpd.erl | 6 +-
src/mango/src/mango_idx.erl | 34 +-
.../{mango_idx_text.erl => mango_idx_nouveau.erl} | 18 +-
src/mango/src/mango_idx_text.erl | 130 +-
src/mango/src/mango_idx_view.erl | 137 ++-
src/mango/src/mango_native_proc.erl | 97 +-
src/mango/src/mango_selector.erl | 74 +-
src/mango/src/mango_selector_text.erl | 435 ++++++-
src/mango/test/01-index-crud-test.py | 4 +
src/mango/test/02-basic-find-test.py | 1 -
src/mango/test/03-operator-test.py | 4 +
src/mango/test/04-key-tests.py | 1 -
src/mango/test/05-index-selection-test.py | 25 +
src/mango/test/06-text-default-field-test.py | 3 -
src/mango/test/07-text-custom-field-list-test.py | 2 -
src/mango/test/13-users-db-find-test.py | 1 -
src/mango/test/16-index-selectors-test.py | 59 +-
src/mango/test/22-covering-index-test.py | 129 ++
src/mango/test/README.md | 29 -
src/mango/test/mango.py | 44 +-
src/mango/test/user_docs.py | 3 +-
src/mem3/src/mem3_reshard_index.erl | 44 +-
src/nouveau/include/nouveau.hrl | 23 +
.../priv/stats_descriptions.cfg | 17 +-
src/nouveau/src/nouveau.app.src | 29 +
.../dreyfus_app.erl => nouveau/src/nouveau.erl} | 11 +-
src/nouveau/src/nouveau_api.erl | 216 ++++
src/nouveau/src/nouveau_app.erl | 30 +
src/nouveau/src/nouveau_bookmark.erl | 68 ++
src/nouveau/src/nouveau_epi.erl | 49 +
src/nouveau/src/nouveau_fabric.erl | 36 +
src/nouveau/src/nouveau_fabric_cleanup.erl | 43 +
src/nouveau/src/nouveau_fabric_info.erl | 99 ++
src/nouveau/src/nouveau_fabric_search.erl | 221 ++++
src/nouveau/src/nouveau_httpd.erl | 276 +++++
src/nouveau/src/nouveau_httpd_handlers.erl | 35 +
src/nouveau/src/nouveau_index_manager.erl | 161 +++
src/nouveau/src/nouveau_index_updater.erl | 138 +++
src/nouveau/src/nouveau_maps.erl | 121 ++
src/nouveau/src/nouveau_rpc.erl | 57 +
src/nouveau/src/nouveau_sup.erl | 31 +
src/nouveau/src/nouveau_util.erl | 97 ++
src/rexi/src/rexi_server.erl | 3 -
src/smoosh/operator_guide.md | 4 +-
support/build_js.escript | 4 +-
test/elixir/test/config/nouveau.elixir | 19 +
test/elixir/test/config/search.elixir | 32 +
test/elixir/test/config/test-config.ini | 9 +
test/elixir/test/jwt_roles_claim_test.exs | 40 +-
test/elixir/test/nouveau_test.exs | 293 +++++
.../elixir/test/partition_search_test.exs | 0
.../test => test}/elixir/test/search_test.exs | 0
test/elixir/test/users_db_test.exs | 8 +-
test/javascript/tests/list_views.js | 502 --------
test/javascript/tests/proxyauth.js | 137 ---
test/javascript/tests/replicator_db_bad_rep_id.js | 103 --
test/javascript/tests/replicator_db_by_doc_id.js | 128 --
test/javascript/tests/rewrite.js | 513 --------
test/javascript/tests/rewrite_js.js | 366 ------
test/javascript/tests/security_validation.js | 330 -----
test/javascript/tests/show_documents.js | 376 ------
test/javascript/tests/users_db_security.js | 418 -------
295 files changed, 16485 insertions(+), 5711 deletions(-)
create mode 100644 nouveau/.gitignore
copy {src/couch_peruser => nouveau}/LICENSE (99%)
create mode 100644 nouveau/README.md
create mode 100644 nouveau/TODO
create mode 100644 nouveau/nouveau.yaml
create mode 100644 nouveau/pom.xml
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/NouveauApplication.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/NouveauApplicationConfiguration.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/AnalyzeRequest.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/AnalyzeResponse.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/DocumentDeleteRequest.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/DocumentUpdateRequest.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/DoubleField.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/DoubleRange.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/Field.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/IndexDefinition.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/IndexInfo.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/Range.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/SearchHit.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/SearchRequest.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/SearchResults.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/StoredField.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/StringField.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/api/TextField.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/IOUtils.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/Index.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/IndexFunction.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/IndexLoader.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/IndexManager.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/StripedLock.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/UpdatesOutOfOrderException.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/UpdatesOutOfOrderExceptionMapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/ByteArrayWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/DoubleWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/FloatWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/IntWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/LongWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/PrimitiveWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/core/ser/StringWrapper.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/health/AnalyzeHealthCheck.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/health/IndexHealthCheck.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/Lucene9AnalyzerFactory.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/Lucene9Index.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/Lucene9Module.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/NouveauQueryParser.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/ParallelSearcherFactory.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/QueryDeserializer.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/QuerySerializer.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/lucene9/SimpleAsciiFoldingAnalyzer.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/resources/AnalyzeResource.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/resources/IndexResource.java
create mode 100644
nouveau/src/main/java/org/apache/couchdb/nouveau/tasks/CloseAllIndexesTask.java
create mode 100644 nouveau/src/main/resources/banner.txt
create mode 100644 nouveau/src/main/resources/openapi.yaml
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/api/SearchRequestTest.java
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/health/AnalyzeHealthCheckTest.java
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/health/IndexHealthCheckTest.java
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/lucene9/Lucene9AnalyzerFactoryTest.java
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/lucene9/Lucene9IndexTest.java
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/lucene9/NouveauQueryParserTest.java
create mode 100644
nouveau/src/test/java/org/apache/couchdb/nouveau/lucene9/QuerySerializationTest.java
create mode 100644
nouveau/src/test/resources/fixtures/DocumentUpdateRequest.json
create mode 100644 nouveau/src/test/resources/fixtures/SearchRequest.json
delete mode 100644 share/server/json2.js
create mode 100644 share/server/nouveau.js
create mode 100644 src/chttpd/test/eunit/chttpd_changes_test.erl
create mode 100644 src/chttpd/test/eunit/chttpd_local_docs_tests.erl
create mode 100644 src/couch/test/eunit/couch_compress_tests.erl
create mode 100644 src/couch/test/eunit/couch_hash_test.erl
create mode 100644 src/couch/test/eunit/same_site_cookie_tests.erl
delete mode 100644 src/couch/test/exunit/couch_compress_tests.exs
delete mode 100644 src/couch/test/exunit/same_site_cookie_tests.exs
delete mode 100644 src/couch/test/exunit/test_helper.exs
create mode 100644 src/couch_index/test/eunit/couch_index_crash_tests.erl
delete mode 100644
src/couch_prometheus/test/eunit/couch_prometheus_util_tests.erl
copy src/couch_replicator/test/eunit/{couch_replicator_selector_tests.erl =>
couch_replicator_doc_ids_tests.erl} (67%)
create mode 100644
src/couch_replicator/test/eunit/couch_replicator_scheduler_docs_tests.erl
create mode 100644 src/docs/src/api/ddoc/nouveau.rst
copy src/docs/src/{ddocs/views/index.rst => cve/2023-26268.rst} (64%)
create mode 100644 src/docs/src/ddocs/nouveau.rst
create mode 100644 src/docs/src/install/nouveau.rst
delete mode 100644 src/dreyfus/test/elixir/mix.exs
delete mode 100644 src/dreyfus/test/elixir/mix.lock
delete mode 100755 src/dreyfus/test/elixir/run
delete mode 100644 src/dreyfus/test/elixir/test/test_helper.exs
rename src/dreyfus/test/{ => eunit}/dreyfus_blacklist_await_test.erl (100%)
rename src/dreyfus/test/{ => eunit}/dreyfus_blacklist_request_test.erl (100%)
rename src/dreyfus/test/{ => eunit}/dreyfus_config_test.erl (100%)
rename src/dreyfus/test/{ => eunit}/dreyfus_purge_test.erl (100%)
rename src/dreyfus/test/{ => eunit}/dreyfus_test_util.erl (100%)
copy src/mango/src/{mango_cursor_text.erl => mango_cursor_nouveau.erl} (68%)
copy src/mango/src/{mango_idx_text.erl => mango_idx_nouveau.erl} (96%)
create mode 100644 src/mango/test/22-covering-index-test.py
delete mode 100644 src/mango/test/README.md
create mode 100644 src/nouveau/include/nouveau.hrl
copy src/{chttpd => nouveau}/priv/stats_descriptions.cfg (64%)
create mode 100644 src/nouveau/src/nouveau.app.src
copy src/{dreyfus/src/dreyfus_app.erl => nouveau/src/nouveau.erl} (80%)
create mode 100644 src/nouveau/src/nouveau_api.erl
create mode 100644 src/nouveau/src/nouveau_app.erl
create mode 100644 src/nouveau/src/nouveau_bookmark.erl
create mode 100644 src/nouveau/src/nouveau_epi.erl
create mode 100644 src/nouveau/src/nouveau_fabric.erl
create mode 100644 src/nouveau/src/nouveau_fabric_cleanup.erl
create mode 100644 src/nouveau/src/nouveau_fabric_info.erl
create mode 100644 src/nouveau/src/nouveau_fabric_search.erl
create mode 100644 src/nouveau/src/nouveau_httpd.erl
create mode 100644 src/nouveau/src/nouveau_httpd_handlers.erl
create mode 100644 src/nouveau/src/nouveau_index_manager.erl
create mode 100644 src/nouveau/src/nouveau_index_updater.erl
create mode 100644 src/nouveau/src/nouveau_maps.erl
create mode 100644 src/nouveau/src/nouveau_rpc.erl
create mode 100644 src/nouveau/src/nouveau_sup.erl
create mode 100644 src/nouveau/src/nouveau_util.erl
create mode 100644 test/elixir/test/config/nouveau.elixir
create mode 100644 test/elixir/test/config/search.elixir
create mode 100644 test/elixir/test/nouveau_test.exs
rename {src/dreyfus/test => test}/elixir/test/partition_search_test.exs (100%)
rename {src/dreyfus/test => test}/elixir/test/search_test.exs (100%)
delete mode 100644 test/javascript/tests/list_views.js
delete mode 100644 test/javascript/tests/proxyauth.js
delete mode 100644 test/javascript/tests/replicator_db_bad_rep_id.js
delete mode 100644 test/javascript/tests/replicator_db_by_doc_id.js
delete mode 100644 test/javascript/tests/rewrite.js
delete mode 100644 test/javascript/tests/rewrite_js.js
delete mode 100644 test/javascript/tests/security_validation.js
delete mode 100644 test/javascript/tests/show_documents.js
delete mode 100644 test/javascript/tests/users_db_security.js