aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Revert useless thingAlex Auvolat2022-05-131-3/+1
|
* More precisions in errors & small refactoringAlex Auvolat2022-05-136-43/+35
|
* Json body for custom errorsAlex Auvolat2022-05-133-11/+67
|
* More error refactoringAlex Auvolat2022-05-1322-259/+209
|
* Separate error types for k2v and signatureAlex Auvolat2022-05-1314-13/+203
|
* More error refactoringAlex Auvolat2022-05-1312-54/+37
|
* Rename error::Error to s3::error::ErrorAlex Auvolat2022-05-1327-28/+27
|
* Error refactoringAlex Auvolat2022-05-1324-206/+135
|
* Common error type and admin error type that uses itAlex Auvolat2022-05-1311-29/+249
|
* Possibility of different error types for different APIsAlex Auvolat2022-05-137-50/+64
|
* Fix clippyAlex Auvolat2022-05-122-6/+2
|
* Slightly more detailed error reporting from helperAlex Auvolat2022-05-125-15/+22
|
* SimplifyAlex Auvolat2022-05-122-16/+6
|
* BucketAllowKey and BucketDenyKeyAlex Auvolat2022-05-125-7/+137
|
* DeleteBucketAlex Auvolat2022-05-124-1/+66
|
* CreateBucketAlex Auvolat2022-05-123-6/+108
|
* ListBucket and GetBucketInfoAlex Auvolat2022-05-126-13/+355
|
* Short doc on UpdateKeyAlex Auvolat2022-05-111-1/+11
|
* Implement CreateKey, DeleteKey and rudimentary UpdateKeyAlex Auvolat2022-05-117-105/+227
|
* First key endpoints: ListKeys and GetKeyInfoAlex Auvolat2022-05-115-5/+268
|
* Add API access key admin endpointsAlex Auvolat2022-05-115-24/+117
|
* Update Cargo.nix and improve log messageAlex Auvolat2022-05-102-112/+95
|
* Refactor code for apply/revert, implement Update/Apply/RevertLayoutAlex Auvolat2022-05-1013-63/+179
|
* Specify remaining cluster-related endpointsAlex Auvolat2022-05-102-3/+78
|
* Add first draft of admin apiAlex Auvolat2022-05-101-0/+135
|
* Fmt & cleanupAlex Auvolat2022-05-103-33/+58
|
* Implement /status Admin endpointAlex Auvolat2022-05-105-49/+152
|
* Make background runner terminate correctlyAlex Auvolat2022-05-102-15/+23
|
* Refactor admin API to be in api/admin and use common codeAlex Auvolat2022-05-1016-220/+228
|
* First implementation of K2V (#293)Alex2022-05-1083-1228/+6493
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | **Specification:** View spec at [this URL](https://git.deuxfleurs.fr/Deuxfleurs/garage/src/branch/k2v/doc/drafts/k2v-spec.md) - [x] Specify the structure of K2V triples - [x] Specify the DVVS format used for causality detection - [x] Specify the K2V index (just a counter of number of values per partition key) - [x] Specify single-item endpoints: ReadItem, InsertItem, DeleteItem - [x] Specify index endpoint: ReadIndex - [x] Specify multi-item endpoints: InsertBatch, ReadBatch, DeleteBatch - [x] Move to JSON objects instead of tuples - [x] Specify endpoints for polling for updates on single values (PollItem) **Implementation:** - [x] Table for K2V items, causal contexts - [x] Indexing mechanism and table for K2V index - [x] Make API handlers a bit more generic - [x] K2V API endpoint - [x] K2V API router - [x] ReadItem - [x] InsertItem - [x] DeleteItem - [x] PollItem - [x] ReadIndex - [x] InsertBatch - [x] ReadBatch - [x] DeleteBatch **Testing:** - [x] Just a simple Python script that does some requests to check visually that things are going right (does not contain parsing of results or assertions on returned values) - [x] Actual tests: - [x] Adapt testing framework - [x] Simple test with InsertItem + ReadItem - [x] Test with several Insert/Read/DeleteItem + ReadIndex - [x] Test all combinations of return formats for ReadItem - [x] Test with ReadBatch, InsertBatch, DeleteBatch - [x] Test with PollItem - [x] Test error codes - [ ] Fix most broken stuff - [x] test PollItem broken randomly - [x] when invalid causality tokens are given, errors should be 4xx not 5xx **Improvements:** - [x] Descending range queries - [x] Specify - [x] Implement - [x] Add test - [x] Batch updates to index counter - [x] Put K2V behind `k2v` feature flag Co-authored-by: Alex Auvolat <alex@adnab.me> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/293 Co-authored-by: Alex <alex@adnab.me> Co-committed-by: Alex <alex@adnab.me>
* Update netapp to 0.4.4, fix #300v0.7.1netapp-0.4.4Alex Auvolat2022-05-093-19/+19
|
* Fix `layout show` to not show changes when there are no changes (#297)Alex2022-05-092-5/+22
| | | | | | | | | fixes #295, partially Co-authored-by: Alex Auvolat <alex@adnab.me> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/297 Co-authored-by: Alex <alex@adnab.me> Co-committed-by: Alex <alex@adnab.me>
* fix clippyfix-multipart-fragmentationAlex Auvolat2022-04-191-1/+1
|
* Prettier code for defragmentationAlex Auvolat2022-04-191-104/+102
|
* Defragmentation in UploadPartCopy: first pass (not pretty but it compiles)Alex Auvolat2022-04-191-63/+122
|
* remove size limitation in UploadPartCopy (#280)withinboredom2022-04-191-12/+0
| | | | | | | | | | | This removes the >1mb s3_copy restriction. This restriction doesn't seem to be documented anywhere (I could be wrong). It also causes some software to fail (such as #248). Co-authored-by: Rob Landers <landers.robert@gmail.com> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/280 Co-authored-by: withinboredom <landers.robert@gmail.com> Co-committed-by: withinboredom <landers.robert@gmail.com>
* Add documentation on running Kopia with GarageBaptiste Jonglez2022-04-101-0/+21
|
* update Cargo.nixv0.7.0Alex Auvolat2022-04-081-14/+14
|
* Add missing opentelemetry featuresAlex Auvolat2022-04-081-1/+1
|
* Add/Fix OpenTelemetrydoc/k8sQuentin Dufour2022-04-073-5/+25
|
* Add files to quickly test k8sQuentin Dufour2022-04-074-0/+107
|
* Update to netapp 0.4.2 (a tiny fix)Alex Auvolat2022-04-076-23/+23
|
* Bring maximum exponential backoff time down from 16h to 1hAlex Auvolat2022-04-071-1/+5
|
* Be clearer on what upgrades are (not) supporteddoc/upgradingQuentin Dufour2022-04-063-10/+4
|
* Add an "upgrading" section, add a guide for 0.7Quentin Dufour2022-04-053-2/+89
|
* Add documentation for winscp+sftpgodoc/winscp+sftpgoQuentin Dufour2022-03-311-2/+57
|
* New replication modes and their documentationfeature/documentationAlex Auvolat2022-03-282-21/+83
|
* fix a clippy lintAlex Auvolat2022-03-281-1/+1
|
* Add blocks in errored state to `garage stats`Alex Auvolat2022-03-282-0/+11
|
* Log admin GET requests at debug level instead of infoAlex Auvolat2022-03-281-1/+1
| | | | to reduce noise in logs