summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Alternative approach for mem3 shard creation3631-3.x-fix-pq-shard-creation-altRussell Branca2021-06-243-8/+9
|
* Cleanup mem3_util db creation logicRussell Branca2021-06-243-17/+14
|
* TMP: disable fix to validate test case fails without itRussell Branca2021-06-241-2/+3
|
* Add test case for mem3_shards pq shard recreationRussell Branca2021-06-242-0/+130
|
* Fix dreyfus_rpc db shard creationRussell Branca2021-06-171-1/+3
|
* Fix fabric_util:get_db shard creationRussell Branca2021-06-172-2/+5
|
* Fix mem3_shards shard creation logicRussell Branca2021-06-171-1/+2
|
* Fix custodian default system dbsJay Doane2021-06-153-3/+3
| | | | | | | | | These system db defaults were left unchanged when this code was imported from Cloudant. This updates them to CouchDB defaults, by using existing functions in the appropriate application and module. h/t @chewbranca for discovering the issue, and also suggesting a better way to obtain these config values.
* Improve robustness of chttpd_util_testJay Doane2021-06-101-0/+18
| | | | | | | | | | In their current form, some of these tests rely on configuration props set with specific values in rel/overlay/etc/default.ini, which makes them prone to breakage when those values change, or when tests run in non-default configuration. This change deletes all config settings in the relevant sections under test, and then adds those under test back explicitly.
* Bump ibrowse to 4.4.2-5Nick Vatamaniuc2021-06-081-2/+2
| | | | | | | | | Previously, in 4.4.2-4 ibrowse upstream rebase also included the commit which unconditionally unquoted userinfo credentials. Since we know have a better way of handing basic auth creds bump ibrowse with a rebase which doesn't include that commit. This is the 3.x port of https://github.com/apache/couchdb/pull/3612
* Bump ibrowse to 4.4.2-4 and mochiweb to v2.21.0Nick Vatamaniuc2021-06-071-3/+3
| | | | | | | * mochiweb : upgrade crypto functions to support OTP 23+ * ibrowse : update time functions and fix flaky unit test Backport of https://github.com/apache/couchdb/pull/3610
* Erlang 19 is not supported for 3.xNick Vatamaniuc2021-06-051-1/+1
| | | | | | | | | It doesn't really work as we have functionality relying on 20.0+ features. One particular instance is in [1]. Issue: https://github.com/apache/couchdb/issues/3571 [1] https://github.com/apache/couchdb/blob/ce596c65d9d7f0bc5d9937bcaf6253b343015690/src/couch/src/couch_emsort.erl#L363-L366
* Bump ibrowse to 4.4.2-3Nick Vatamaniuc2021-06-041-1/+1
| | | | This is a backport of https://github.com/apache/couchdb/commit/e349128d21212e9ab9ca35e8a72c581b9b77ebb1 from main.
* Improve smoosh defaults for slack channel (#3600)Joan Touzet2021-06-032-7/+7
|
* Improve basic auth credentials handling in replicatorNick Vatamaniuc2021-06-017-225/+353
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, there were two ways to pass in basic auth credentials for endpoints -- using URL's userinfo part and encoding the them in an `"Authorization": "basic ..."` header. Neither one is ideal for these reasons: * Passwords in userinfo doesn't allow using ":", "@" and other characters. However, even after switching to always unquoting them like we did recently [1], would break authentication for usernames or passwords previously containing "+" or "%HH" patterns, as "+" might now be decoded to a " ". * Base64 encoded headers need an extra step to encode them. Also, quite often these encoded headers are confused as being "encrypted" and shared in a clear channel. To improve this, revert the recent commit to unquote URL userinfo parts to restore backwards compatibility, and introduce a way to pass in basic auth credentials in the "auth" object. The "auth" object was already added a while back to allow authentication plugins to store their credentials in it. The format is: ``` "source": { "url": "https://host/db", "auth": { "basic": { "username":"myuser", "password":"mypassword" } } } ``` {"auth" : "basic" : {...}} object is checked first, and if credentials are provided, they will be used. If they are not then userinfo and basic auth header will be parsed. Internally, there was a good amount duplication related to parsing credentials from userinfo and headers in replication ID generation logic and in the auth session plugin. As a cleanup, consolidate that logic in the `couch_replicator_utils` module. [1] https://github.com/apache/couchdb/commit/f672b911db19981a81d7fc6ce8ac33b150234fd7
* move couch_httpd_auth options to chttpd_auth 3.xJiahui Li2021-05-2714-79/+169
|
* Bump hyper dependency to 2.2.0-7Nick Vatamaniuc2021-05-261-1/+1
| | | | | | Upgrade random -> rand https://github.com/apache/couchdb-hyper/releases/tag/CouchDB-2.2.0-7
* Moved some config options from httpd to chttpdJiahui Li2021-05-2423-98/+267
|
* Erlang 24 support for 3.x branchNick Vatamaniuc2021-05-197-13/+68
| | | | | | | | | The main fix is to switch crypto functions to use the new versions for 22+ while keeping Erlang 20 still working. ``` crypto:hmac(Alg, Key, Message) -> crypto:mac(hmac, Alg, Key, Message) ```
* Bump ibrowse to 4.4.2 + couchdb patchesNick Vatamaniuc2021-05-102-2/+5
| | | | | | | Set the `worker_trap_exits = false` setting to ensure our replication worker pool properly cleans up worker processes. Ref: https://github.com/apache/couchdb/pull/3208
* Add offheap MQ support for dreyfus_index_manager (#3545)Russell Branca2021-05-041-0/+1
|
* Fix bug in Replicator authentication for password contains @Jiahui Li2021-05-041-1/+53
|
* Reformat build-aux/logfile-uploader.py (#3542)Bessenyei Balázs Donát2021-05-041-3/+3
|
* Use correct args in get_doc_infoJay Doane2021-04-201-1/+1
| | | | | `fabric.get_doc_info/3` requires three arguments, but this line was only using one.
* Merge pull request #3312 from apache/weatherreportJay Doane2021-04-2035-1/+3326
|\ | | | | Import weatherreport
| * Build and escriptize weatherreportweatherreportJay Doane2021-04-204-2/+23
| |
| * Crash if config app fails to startJay Doane2021-04-201-1/+1
| |
| * Add getopt copyright to NOTICEJay Doane2021-04-201-0/+4
| |
| * Update weatherreport documentationJay Doane2021-04-202-3/+16
| |
| * Delete obsolete weatherreport files and documentationJay Doane2021-04-205-149/+0
| |
| * Change header preamble to "derived from riaknostic"Jay Doane2021-04-2011-11/+11
| |
| * Change search check failure from error to warningJay Doane2021-04-201-1/+2
| | | | | | | | | | In default CouchDB, search is disabled by default, so a failure to connect to clouseau should only be a warning.
| * Support default IOQ in weatherreportJay Doane2021-04-202-1/+28
| | | | | | | | | | weatherreport previously relied on Cloudant's IOQ implementation. This adds support for the default IOQ so that it works with either.
| * Port custom recon process call checksJay Doane2021-04-201-2/+57
| | | | | | | | Port fork of custom `recon` functions for checking process calls.
| * Merge remote-tracking branch 'weatherreport/riaknostic-squash' into ↵Jay Doane2021-04-2034-0/+3353
| |\ |/ / | | | | weatherreport
| * Change s/cloudant/couchdb/g for maintenance_modeILYA Khlopotov2021-04-191-1/+1
| | | | | | | | BugzID: 45855
| * Downgrade process call count to noticeMike Wallace2021-04-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit downgrades messages about process call counts to notice level. The previous level of warning was inappropriate for many processes as it really just indicated normal operation of the system. Until this check is made a bit smarter, with custom thresholds per MFA, we will log at nothing more severe than notice so that we don't confuse operators into thinking something is wrong. BugzID: 37593
| * Fix description of process_memory checkMike Wallace2021-04-191-1/+1
| |
| * Check mean node statistics over one secondRiccardo Brognara2021-04-191-0/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | Check the absolute statistics obtained by recon:node_stats/4 over a one second period. The values are sampled ten times and the mean is returned. For run_queue and process_count the mean is compared to hard-coded thresholds which determine whether a warning or info message is returned. For all other statistics an info message is always returned. BugzID: 32877
| * Check number of pending internal replication jobsRiccardo Brognara2021-04-191-0/+57
| | | | | | | | | | | | | | | | | | | | | | This commit adds a check for the number of pending internal replication jobs on a node. A large number of pending internal replication jobs indicates that internal replication is falling behind. A warning message is returned if the number of jobs exceeds a hard-coded threshold, otherwise an info message is returned. BugzID: 32872
| * Handle conflicted shard mapsMike Wallace2021-04-191-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | Custodian will output a message if there are one or more conflicting revisions for a shard map. Previously weatherreport_check_custodian failed to match that message which caused the check to fail. This commit adds new function clauses to report_to_message/1 and format/1 so that the conflict messages are output to the console at the warning log level. BugzID: 34157
| * there is no appRobert Newson2021-04-191-2/+1
| |
| * Don't include node name in diagnostic messagesMike Wallace2021-04-192-17/+14
| | | | | | | | | | | | Unless it is explicitly required for a check, avoid returning the node name in diagnostic messages. The node name is added by the logging code so including it in the messages is not necessary.
| * Remove redundant rpc callsMike Wallace2021-04-198-25/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The initial design of Riaknostic (and hence WeatherReport) was that checks ran in the script and made RPC calls to the local cluster node when needed. Due to a requirement to allow checks to run on multiple cluster nodes without guarantees of SSH connectivity, the design has changed such that each check is now run entirely on the cluster node. This means it is no longer necessary to use weatherreport_node:local_command/3 to interact with the cluster, the calls can just be made directly. This commit removes the redundant calls to weatherreport_node:local_command/3 which makes the intent of the code a bit clearer. BugzID: 34016
| * Remove escriptize from all targetMike Wallace2021-04-191-1/+1
| |
| * Remove unused function exportsPaul J. Davis2021-04-191-3/+1
| |
| * Remove packaged rebarPaul J. Davis2021-04-192-7/+7
| |
| * Remove the getopt dependencyPaul J. Davis2021-04-193-3/+624
| |
| * Remove twig dependencyPaul J. Davis2021-04-197-62/+88
| |
| * Remove rebar.config dependenciesPaul J. Davis2021-04-191-7/+1
| |