aboutsummaryrefslogtreecommitdiff
path: root/src/api/s3_delete.rs
Commit message (Collapse)AuthorAgeFilesLines
* First implementation of K2V (#293)Alex2022-05-101-170/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | **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>
* Support STREAMING-AWS4-HMAC-SHA256-PAYLOAD (#64) (#156)Jill2022-01-171-1/+4
| | | | | | | | Closes #64. Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/156 Co-authored-by: Jill <kokakiwi@deuxfleurs.fr> Co-committed-by: Jill <kokakiwi@deuxfleurs.fr>
* Fix some error codesAlex Auvolat2022-01-051-2/+2
|
* New model for bucketsAlex Auvolat2022-01-041-7/+7
|
* Fix clippy lints (fix #121)Alex Auvolat2021-10-261-2/+3
|
* Fix HTTP return code for DeleteObject (fix #98)Alex Auvolat2021-10-111-1/+2
|
* Improved XML serializationbetter_xmlAlex Auvolat2021-05-061-36/+20
| | | | | | - Use quick_xml and serde for all XML response returned by the S3 API. - Include tests for all structs used to generate XML - Remove old manual XML escaping function which was unsafe
* rename types to CamelCaseTrinity Pointard2021-05-031-1/+1
|
* fix clippy warnings on apiTrinity Pointard2021-05-031-4/+6
|
* Many S3 compatibility improvements:v0.2.1.5Alex Auvolat2021-04-281-3/+20
| | | | | | | | - return XML errors - implement AuthorizationHeaderMalformed error to redirect clients to correct location (used by minio client) - implement GetBucketLocation - fix DeleteObjects XML parsing and response
* Small fixesAlex Auvolat2021-03-151-1/+1
|
* Time and metadata improvementsAlex Auvolat2021-03-151-0/+1
|
* Fix race conditionAlex Auvolat2021-03-151-4/+4
|
* Cargo fmtAlex Auvolat2021-02-231-2/+2
|
* Add verification of part numbers in CompleteMultipartUpload (WIP #30)Alex Auvolat2021-02-201-16/+14
|
* add application/xml header and missing xml escapesAlex Auvolat2021-02-191-3/+5
|
* Replace with option syntaxic sugarQuentin2020-11-111-16/+5
|
* Refactor error management in API parterror-refactoringAlex Auvolat2020-11-081-3/+2
|
* cargo fmtAlex Auvolat2020-07-081-6/+4
|
* Migrate S3 api to use new modelAlex Auvolat2020-07-081-5/+6
|
* Apply cargo fmt; add trace output when request signature is badAlex Auvolat2020-07-081-3/+1
|
* Update to Hyper 0.13.6 that accepts non-Sync streams in wrap_stream.Alex Auvolat2020-07-071-6/+5
| | | | Simplifies code and makes it possible to publish on crates.io
* Rename garage_core to garage_modelAlex Auvolat2020-07-071-2/+2
|
* Implement HTTP ranges in getAlex Auvolat2020-05-041-69/+100
|
* Implement DeleteObjectsAlex Auvolat2020-05-011-8/+100
|
* Work on APIAlex Auvolat2020-04-281-0/+54