| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
In a VM with lots of processes couch_server can end up slowing down
purely to not being scheduled which in turn will cause its message queue
to backup. We've attempted this before but due to message passing have
never seen it have a significant effect. However, now that we're
actively avoiding synchronous message passing inside the man loop this
has a significant effect by being able to process messages as soon as it
has one in its mailbox.
|
|
|
|
|
|
|
| |
This moves the database name check and engine lookup into the open_async
process. There's no reason that this work had to happen in the main loop
so we can easily move the regex and engine lookups out of the loop to
minimize the work per handle_call even further.
|
|
|
|
|
| |
We can track the open latencies from the async_open process so that
couch_server does not have to perform the update in its main loop.
|
|
|
|
|
| |
Even when disabled these logs can take a non-trivial amount of
reductions which can add extra suspensions to couch_server's main loop.
|
|
|
|
|
| |
Its not uncommon to have file_server_2 behaving poorly so we'll avoid it
when there are calls that are made often.
|
|
|
|
|
|
|
| |
Previous this test relied on delete/open requests getting things into a
confused state. Now that we understand the issue we can replace the more
complicated logic by directly polutnig couch_server's message queue with
invalid messages.
|
|
|
|
|
|
|
|
| |
This basically just extends the black list to cover the `21.{0,1}`
release range. This is due to a compiler bug [1] which is a duplicate of
[2].
[1] https://bugs.erlang.org/browse/ERL-981
[2] https://bugs.erlang.org/browse/ERL-807
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Allow to set the user db security object to readonly
- Add the default config
- Deny update on _security if the database is the user db and if the config is to false
- Add unit test
* Allow edits on _users security for the JS test
Co-authored-by: Alexis Côté <popojargo@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add auth cache test into elixir test suite
* Port cookie_auth test suite into elixir
* Remove conflicting functions
* remove debug log level config
* Port users_db from js test suite to elixir
* WIP: make test more robust
* WIP: increase default timeout, revert to fail when login error
* Auth cache test fixes
* Cookie auth test fixes
* Cookie auth test fixes
* Correct test name
* Correct test name
* Disable all JS tests that have Elixir test counterparts.
* Convert test setup/teardown logic into idiomatic ExUnit and use @moduletag config
* Disable auth_cache_test
* auth cache test is disabled
* Update elixir test suite README.md with missing ported stuff
* Port UTF8 js test suite to elixir
* fix: losen assertion
* disable more JS tests
Co-authored-by: Juanjo Rodriguez <jjrodrig@gmail.com>
Co-authored-by: Alessio Biancalana <dottorblaster@gmail.com>
|
|
|
|
|
|
|
| |
* restore tests removed in 0a85b75ee150
* disable autoupdate when testing for stale indexes
|
| |
|
|
|
|
|
|
|
|
|
| |
* Port erlang views tests into elixir test suite
* Enable erlang views in elixir testing
* Support nil or :null in response
|
|
|
|
| |
* Fix some typos in the bug report issue template
|
|
|
|
|
|
|
|
|
|
|
|
| |
feat: refuse startup with no server admin set up
includes an admin party assert escape hatch for tests
adds a log message every 5 minutes, if escape hatch is enabled.
should play nice with systemd restart policies
Co-authored-by: Joan Touzet <wohali@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is in preparation for per-document access control which is
going to use this field. We are adding this in 3.0 because per-
document access control will not be ready for 3.0, but added in
3.1 or later.
This commit allows a future version of CouchDB with per-document
access control to replicate with CouchDB 3.0, to make upgrades and
interoperability easy.
The per-documnet access control code is not going to store the
_access property in the document body like this patch does, but
is going to store it in an extra field inside of #doc and
assert access control for a document without having to load the
entire document body.
|
| |
|
|
|
|
|
|
|
| |
This is a recurrence of #1450 caused by ec416c3
(SpiderMonkey 60 PR), where a case clause in
rebar.config.script lacks a match when configure
has not yet been run yet.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Avoid `test_util:start/3` as it wastes time mocking modules for each
test.
|
|
|
|
|
| |
This undoes the test per combination approach to avoid the time spent
printing each name to the console.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Increase the doc write batch count in the background writer process to
speed up the should_populate_and_compact test.
|
|
|
|
|
| |
There's no need to call through mocked functions when we can just assert
its the correct function returned.
|
|
|
|
| |
Another example of moving mocks around.
|