| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |\
| | |
| | | |
Skipping CompactTest due to compaction failure
|
| |/ |
|
| |\
| | |
| | | |
Fix badmatch in fabric_view_all_docs
|
| |/
| |
| |
| |
| |
| |
| |
| | |
In query for all_docs with passed keys array it is possible
for `doc_receive_loop/6` to timeout and trigger `badmatch` exception.
The fix changes code to to accept `timeout` as a possible response
and passes it to Callback to process.
|
| |\
| | |
| | | |
Keep database property after overwriting shard map
|
| |/ |
|
| |\
| | |
| | | |
Send a 500, not a 400, for unknown search errors
|
| |/
| |
| |
| |
| | |
We should only send a 400 Bad Request if there is genuinely something
wrong with the request, otherwise we mislead users and sysadmins.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When the `_scheduler/docs` response is generated, the replication docs are
parsed and credentials are stripped by `couch_replicator:strip_url_creds/1`.
When local endpoint support was removed, that function didn't properly catch
the parsing error for local endpoints and as a result was error-ing out the
whole response.
The fix is to catch the error and return the endpoint as is. The catch is
specific to that error, so turned the long binary message into a shorter, but
hopefully still obvious atom.
`_scheduler/docs` response would look like:
```
{
"docs": [
{
"database": "_replicator",
"doc_id": "r",
"error_count": 1,
"id": null,
"info": "local_endpoints_not_supported",
"last_updated": "2019-08-20T16:09:53Z",
"source": "http://adm:*****@127.0.0.1:15984/s/",
"start_time": "2019-08-20T16:09:53Z",
"state": "failed",
"target": "t"
}
],
"offset": 0,
"total_rows": 1
}
```
Interestingly, there was already a test for this case, except it wasn't
included in the EUnit test suite list.
|
| |\
| | |
| | | |
Update httpotion to 3.1.3
|
| | |
| | |
| | |
| | |
| | |
| | | |
This commits ports `couch.ex` related chages from
https://github.com/apache/couchdb/pull/2104 into the world where
we don't override `process_arguments/3`
|
| |/
| |
| |
| |
| |
| |
| |
| | |
There were couple of hacks in test/elixir/lib/couch.ex
We've got changes needed to remove them into httpotion 3.1.3.
The changes were introduced in:
- https://github.com/myfreeweb/httpotion/pull/118
- https://github.com/myfreeweb/httpotion/pull/130
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
More occasional flakiness on Jenkins.
|
| |
| |
| |
| |
| |
| | |
The last 9 tests take a few hundred milliseconds locally and flaked a
bit on Jenkins. For consistency's sake we bump the timeout from 5 to 60
seconds across the board.
|
| |
| |
| |
| | |
Jenkins flaked out on one of these today.
|
| |
| |
| |
| | |
We aren't building them anymore.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Omitting COUCHDB_VERSION caused the EUnit build of the replicator to
have a corrupted User-Agent header. It tried to construct a version
using git, but when building from a release tarball there is no git
repo so the UA had a git error message in it. This error message
contained a newline, which plausibly confused some part of the HTTP
stack and caused replicator HTTP requests to hang.
Related to #2098.
|
| |\
| | |
| | | |
Call :meck.unload() automatically after every test
|
| |/ |
|
| |\
| | |
| | | |
Do not fail 'dev/run' on connection close
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
Sometimes admin party mode causes the 'dev/run' to fail with
```
http.client.RemoteDisconnected: Remote end closed connection without response
```
This PR makes this use case more robust.
|
| |\
| | |
| | | |
Refactor fabric:cleanup_index_files
|
| |/
| |
| |
| |
| | |
Previous implementation assembled a regexp by concatenating active signatures.
The approach caused regexp to exceed system limit in the case of huge number of them.
|
| |\
| | |
| | | |
Support map childspecs in couch_epi supervisor's children replacement
|
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, when total number of replication jobs exceed `MaxJobs`, if some
jobs crashed, additional jobs didn't start immediately to bring the running
total up to the `MaxJobs` limit. Then, during rescheduling, the `Running ==
MaxJobs, Pending > 0` guard would fail and jobs would not rotate. In other
words, if at least one job crashed, rotation didn't happen.
The fix is to simplify the rotation logic to handle the `Running < MaxJobs`
case. First, up to `Churn` number of jobs are stopped, then enough jobs are
started to reach the `MaxJobs` limit.
The rotation logic case handles the `start_pending_jobs/3` case so there is no
need to call that separately before rotation happens.
|
| |\
| | |
| | | |
fixup for dreyfus_fabric_cleanup:go/1
|
| |/ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
These are needed to avoid timeouts on ASF Jenkins build farm. The
httpotion client uses ibrowse underneath, and ibrowse has three
separate timeouts. We are configuring two of them here: the overall
request timeout, and one that detects inactivity on the connection.
We set them slightly differently just to be able to differentiate which
one fired from the logs.
|
| |
| |
| |
| |
| | |
This improves reliability because that time isn't charged to the test,
and also speeds up the test.
|
| |
| |
| |
| |
| | |
The "Should copy local docs after split in four" test was occasionally
timing out in CI.
|
| |
| |
| |
| |
| | |
These settings are required to prevent Mix & Hex from trying to install
packages into / on the ARM host.
|
| |
| |
| |
| |
| |
| |
| | |
The `pip3` and `nosetest` executables are scripts, and on jenkins
the specified interpreter can exceed the 128 character length limit
because of the deeply-nested workspace. Invoking these as modules seems
the preferred workaround per pypa/pip#1773
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This work moves the builds back into the workspace, using a separate
sub-directory per platform to avoid clashes between builds caused by
JENKINS-57454. It also breaks out the steps into a pair of sequential
stages within each each parallel stage of the build, which gives us
better visibility into the progress of the build, and also sets us up
to capture test results and expose them directly via Jenkins UI for
faster problem determination.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It doesn't work on Jenkins but worked locally.
Noticed that we started chttpd even though the clustered port was never used.
Add a wait function in `db_url/1` to make sure to wait until the db is
available via the HTTP interface before continuing.
|
| |
| |
| |
| | |
Bash has `let` but other shells might not have it.
|
| |
| |
| |
| |
| |
| |
| | |
And remove the js version. Elixir test has been running decently on Travis from
what I observed. However, it was disabled on jenkins runs. With a recent
hardware upgrade, perhaps there is chance this test will start passing there
too.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
`local` replication endpoints do something completely unexpected from a user's
point of view -- they replicate to and from node local databases on a random
node. The only way this worked correctly was if someone used the backend port
(:5986) with a single node database. However, that port is getting closed for 3.x
release as well, so it makes even less sense to keep this functionality around.
For more discussion and voting results see ML list:
https://lists.apache.org/thread.html/ddcd9db93cee363db7da571f5cbc7f2bd24b881a34e1ef734d6a0a1c@%3Cdev.couchdb.apache.org%3E
The `_replicate` HTTP "hack" was left as is, since it does work more or less,
However it is inconsistent with what _replicator docs do so we should probably
deprecated it and remove it in 4.x.
|
| |
| |
| |
| |
| | |
Fix a race condition in state matching, also parameterize the state
field in wait_state.
|
| |
| |
| |
| |
| |
| |
| | |
Whole app is retried 2 extra times if it fails.
Added to *nix Makefile only for now. May not be needed for Windows as this is
for CI flakiness mostly.
|
| |\
| | |
| | | |
Exunit simplified
|
| | | |
|