summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Make example key manager use pbkdf2 to derive root keyaegis_example_key_managerEric Avdey2020-04-211-2/+10
|
* Convert aegis_key_manager into gen serverEric Avdey2020-04-214-14/+186
| | | | | | | | Convert aegis_key_manager into gen_server and make it keep private state for key manager callback module. Rename aegis_file_key_manager into aegis_example_key_manager to clarify intent and adapt it to new aegis_key_manager behaviour
* Store unwrappers Ref as a control for DbKey legitimacyEric Avdey2020-04-201-11/+13
|
* Support disabling encryption per database on key manager levelEric Avdey2020-04-204-2/+64
| | | | | | | Allow key manager to return `{ok false}` on generate key request. Treat this as a flag to perf db disabled encryption and passthrough encrypt and decrypt without calling server in this case.
* Pass db options to generate_key and rename WrappedKey to AegisConfigEric Avdey2020-04-205-70/+87
|
* Change rebar deps build order to allow aegis find fabric2.hrl header fileEric Avdey2020-04-201-1/+1
|
* Address review commentsEric Avdey2020-04-208-182/+196
| | | | | | | | | | - Rename aegis_key_cache to aegis_server - Move crypto into workers - Add aegis_server public API - Define aegis_key_manager behaviour - Fix error messages - Remove part with incomplete functionality - Remove defensive programming
* Refactoring: extract maybe_spawn_unwrapper into own functionEric Avdey2020-04-171-11/+17
|
* Rename clients to openersEric Avdey2020-04-171-16/+16
|
* Rename unwrap_key to maybe_rewrap_key to clarify fun proposeEric Avdey2020-04-172-2/+2
|
* Make encrypt/decrypt workers to reply client directlyEric Avdey2020-04-171-22/+14
|
* Formatting: move private functions into own sectionEric Avdey2020-04-171-55/+54
|
* Extract aegis_keywrap parts in shim of key managerEric Avdey2020-04-173-19/+74
|
* Return error if can't unwrap a keyEric Avdey2020-04-172-5/+54
|
* Fail tests on gen_server timeoutEric Avdey2020-04-171-5/+6
|
* Make fabric depend on aegisEric Avdey2020-04-171-1/+2
|
* Make aegis into app and add key cache serverEric Avdey2020-04-177-22/+482
|
* Move rebar.config.script from couch to aegisEric Avdey2020-04-162-10/+36
|
* Fix typo in configureEric Avdey2020-04-161-1/+1
|
* Add encryption for database valuesaegisRobert Newson2020-04-1412-38/+305
|
* remove defer and load_ddocs from mango_utilsGarren Smith2020-04-062-63/+0
| | | | Clean up unused mango_utils functions.
* update mango tests to work with Mango on FDBGarren Smith2020-04-0614-136/+129
|
* Update mango test creds to same as elixir testsGarren Smith2020-04-063-5/+5
|
* Update Mango query to work with couch_viewsGarren Smith2020-04-069-147/+139
|
* Add mango indexingGarren Smith2020-04-067-19/+187
| | | | | | This uses couch_views_updater to create mango indexes in the doc update along with the couch_views_indexer to update the indexes in the background up to the creation versionstamp.
* Remove quorum statsGarren Smith2020-04-063-13/+1
| | | | Removing quorum stats since they are not relevant with FDB.
* Remove view_cb predicate push downGarren Smith2020-04-061-94/+1
| | | | | Removes the view callback that was performed on the nodes before sending the results back to the co-ordinator.
* remove unneeded r/w parameterGarren Smith2020-04-066-67/+6
|
* remove partition opts from mangoGarren Smith2020-04-0610-200/+10
|
* remove mango native procGarren Smith2020-04-063-375/+0
|
* Add couch_views_encoding max valueGarren Smith2020-04-061-0/+12
| | | | | Adds a max value to use for encoding. This is useful when getting the max range when encoding startkey/endkeys.
* Add couch_views_updater interactive indexerGarren Smith2020-04-069-5/+470
| | | | | | This adds the ability for couch_views to index an index in the docs update transaction. This only happens if a design doc has the field <<"interactive">> = true.
* All couch_view queries to run across transactionsGarren Smith2020-04-061-1/+2
|
* Add couch_views_indexer build to creation versionstampGarren Smith2020-04-067-33/+206
| | | | | | This creates a versionstamp for when an indexed was created and build status for indexes. if the index has a creation_vs, then couch_views_indexer will built the index to this creation versionstamp.
* add fabric2 after_doc_write pluginGarren Smith2020-04-062-0/+8
|
* add include_docs option to fold_docsGarren Smith2020-04-061-2/+25
|
* move all_doc view options to fabric2_utilGarren Smith2020-04-062-29/+39
|
* fix all_docs call to return rowGarren Smith2020-04-061-1/+2
|
* Merge pull request #2662 from cloudant/couch_view-rate_limitiilyak2020-04-0226-28/+1839
|\ | | | | Use `couch_rate` application for `couch_view`
| * Use `couch_rate` application for `couch_view`ILYA Khlopotov2020-04-0226-28/+1839
|/
* Merge pull request #2743 from apache/switch-erlfdb-couchRobert Newson2020-04-011-6/+2
|\ | | | | Switch erlfdb to the couchdb repo at tag v1.0.0
| * Switch erlfdb to the couchdb repo at tag v1.0.0Robert Newson2020-04-011-6/+2
|/
* change _all_docs to raw collationGarren Smith2020-03-302-7/+4
|
* Don't advertise unimplemented featuresJay Doane2020-03-283-12/+2
| | | | | | | | | | | Removes the following features from the welcome message: - reshard - partitioned - pluggable-storage-engines - scheduler Although `scheduler` at least will presumably be returned once that feature is complete.
* Return a 400 error code for an invalid update sequenceNick Vatamaniuc2020-03-271-0/+2
| | | | | | | | | | | | | | | | | Currently we return a 500 but a 400 return code makes more sense ``` $ http $DB1/db1/_changes?since=0-1345 HTTP/1.1 400 Bad Request { "error": "invalid_since_seq", "reason": "0-1345", "ref": 442671026 } ```
* Merge pull request #2722 from apache/couch-keywrapRobert Newson2020-03-261-0/+103
|\ | | | | Implement AES KW algorithm
| * Implement AES KW algorithm*couch-keywrapRobert Newson2020-03-261-0/+103
|/ | | | | | For use by the native couchdb at-rest encryption feature. * From NIST Special Publication 800-38F.
* Make sure to clear db metadata flag before each transactionNick Vatamaniuc2020-03-251-0/+1
| | | | | Previously we didn't reset the metadata flag in case of a transaction retry so we could have used a stale `?PDICT_CHECKED_MD_IS_CURRENT = true` value.
* Fix db prefix checks in fabric2_fdbNick Vatamaniuc2020-03-251-9/+11
| | | | | | | | | After the recent upgrade to using HCA we forgot to check all the places where the db prefix was constructed so a few places still used the old pattern of {?DBS, DbName}. In the case of `check_metadata_version` we also have to account for the fact that during db creation, there might not be a db_prefix in the `Db` handle yet.
* Handle db re-creation in view indexingNick Vatamaniuc2020-03-253-26/+152
| | | | | | | | | | | Add the db instance id to indexing job data. During indexing ensure the database is opened with the `{uuid, DbUUID}` option. After that any stale db reads in `update/3` will throw the `database_does_not_exist` error. In addition, when the indexing job is re-submitted in `build_view_async/2`, check if it contains a reference to an old db instance id and replace the job. That has to happen since couch_jobs doesn't overwrite job data for running jobs.