| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
- Pass UpdateType to before_doc_update/3
|
|\
| |
| | |
Re-Introduce cpse_test_purge_seqs
|
|/
|
|
|
|
| |
- Re-introduce cpse_test_purge_seqs after fixing issue on
cpse_test_purge_seqs:cpse_increment_purge_seq_on_partial_purge/1
with undef issue
|
| |
|
|\
| |
| | |
Change minimum supported Erlang version to OTP 19
|
|/ |
|
|
|
|
|
|
| |
These files were used when their apps had separate repositories, but are
obsolete in the "mono repo" since their apps are built together using
the top level .travis.yml now.
|
|
|
|
|
|
| |
The modules lists in .app files are automatically generated by rebar
from .app.src files, so these explicit lists are unnecessary and prone
to being out of date.
|
|\
| |
| | |
Suppress compiler warnings
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- For export_all warnings: either replace with explicit exports, add
nowarn_export_all compiler directives when appropriate, or in the case
of couch_epi_sup, move the test to dedicated test file and export the
function needed for testing.
- For "function already exported" warning in couch_key_tree_prop_tests,
remove include_lib attribute for eunit.hrl since it already gets
imported in triq.hrl
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Move couch_event and mem3 modules earlier in the list of SubDirs to
suppress behaviour undefined warnings.
This has the side effect of running the tests in the new order, which
induces failures in couch_index tests. Those failures are related to
quorum, and can be traced to mem3 seeds tests leaving a _nodes db
containing several node docs in the tmp/data directory, ultimately
resulting in badmatch errors e.g. when a test expects 'ok' but gets
'accepted' instead.
To prevent test failures, a cleanup function is implemented which
deletes any existing "nodes_db" left after test completion.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- couch_util_tests.erl:90:
Warning: the result of the expression is ignored
- couch_mrview_index_changes_tests.erl:189,196:
Warning: a term is constructed, but never used
- couch_replicator_connection_tests.erl:76:
Warning: this expression will fail with a 'badarith' exception
|
| |
| |
| |
| |
| |
| | |
- Add unused test cases to test fixture
- Eliminate unreferenced code
- Comment out code that is referenced in commented code only
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Replace deprecated crypto:rand_uniform/2 and 'random' module functions
with equivalent couch_rand:uniform/1 calls, or eliminate the offending
code entirely if unused.
Note that crypto:rand_uniform/2 takes two parameters which have
different semantics than the single argument couch_rand:uniform/1.
Tests in mem3 are also provided to validate that the random rotation of
node lists was converted correctly.
|
| | |
|
|/ |
|
|\
| |
| | |
Elixir test improvements
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Wrap deleted element assertions in retry_until to prevent timing related
failures like:
AllDocsTest
* test All Docs tests (331.1ms)
1) test All Docs tests (AllDocsTest)
test/all_docs_test.exs:15
Assertion with == failed
code: assert length(deleted) == 1
left: 0
right: 1
stacktrace:
test/all_docs_test.exs:72: (test)
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
Prior to this, `make elixir` was failing with these errors:
** (Mix) mix format failed due to --check-formatted.
The following files were not formatted:
* test/security_validation_test.exs
* test/rewrite_test.exs
* test/cluster_with_quorum_test.exs
* test/cluster_without_quorum_test.exs
* test/all_docs_test.exs
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Sometimes fabric coordinators end up getting brutally terminated [1], and in that
case they might never process their `after` clause where their remote rexi
workers are killed. Those workers are left lingering around keeping databases
active for up to 5 minutes at a time.
To prevent that from happening, let coordinators which use streams spawn an
auxiliary cleaner process. This process will monitor the main coordinator and
if it dies will ensure remote workers are killed, freeing resources
immediately. In order not to send 2x the number of kill messages during the
normal exit, fabric_util:cleanup() will stop the auxiliary process before
continuing.
[1] One instance is when the ddoc cache is refreshed:
https://github.com/apache/couchdb/blob/master/src/ddoc_cache/src/ddoc_cache_entry.erl#L236
|
|
|
|
|
|
| |
Streams functionality is fairly isolated from the rest of the utils module so
move it to its own. This is mostly in preparation to add a streams workers
cleaner process.
|
| |
|
| |
|
| |
|
|\
| |
| | |
Support specifying individual Elixir tests to run
|
| |\
| |/
|/| |
|
|\ \
| | |
| | | |
Fix haproxy config file location
|
|/ /
| |
| |
| |
| | |
The problem was introduced in 94eff0d8 during rebase of
https://github.com/apache/couchdb/pull/1774
|
|\ \
| | |
| | | |
Support for more than 3 nodes dev cluster
|
|/ / |
|
|\ \
| | |
| | | |
Port delayed_commits test to Elixir
|
| | | |
|
|/ / |
|
|\ \
| | |
| | | |
Fix running elixir test suite
|
|/ / |
|
|\ \
| | |
| | | |
Fix function_clause exception on invalid DB security objects
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
- fix function_clause error on invalid DB security objects
when the request body of PUT db/_security endpoint is not
a correct json format
Closes #1384
|
| |
| |
| |
| |
| | |
The underlying clustered _all_docs call can cause significant extra load
during compaction.
|
| |
| |
| |
| |
| | |
This adds an API call for looking up a single design doc regardless of
whether the database is clustered or not.
|
|/
|
|
|
|
|
|
| |
Individual tests can be specified as:
- make elixir tests=test/basics_test.exs
- make elixir tests=test/basics_test.exs,test/config_test.exs
- make elixir tests=test/basic_test.exs:17
|
|
|
|
| |
* Move CouchTestCase to separate file
* Move setup context functions to separate module
|
|
|
| |
This PR adds Credo as the static code analysis tool of choice for the Elixir test suite.
|
|
|
|
|
| |
The Makefile target builds a python3 venv at .venv and installs
black if possible. Since black is Python 3.6 and up only, we
skip the check on systems with an older Python 3.x.
|
|
|
|
|
| |
This avoids needlessly making cross-cluster fabric:update_docs(Db, [], Opts)
calls.
|
|\
| |
| | |
Ignore clang compile commands database file
|
|/
|
|
|
| |
New rebar leaves behind a clang compile commands database file
after compiling the ports.
|
|\
| |
| | |
Move tests to suite
|
| | |
|