Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Bring back the counted tree hack for Sled (with caveat) | Alex Auvolat | 2022-06-07 | 11 | -164/+215 |
| | | | | caveat: it's not only for sled | ||||
* | Try once again to fix sqlite bundling in nix | Alex Auvolat | 2022-06-06 | 1 | -1/+1 |
| | |||||
* | Remove useless clones in sqlite | Alex Auvolat | 2022-06-06 | 1 | -4/+4 |
| | |||||
* | Fix clippy lint | Alex Auvolat | 2022-06-06 | 1 | -1/+1 |
| | |||||
* | Add inline marker on a bunch of db functions | Alex Auvolat | 2022-06-06 | 2 | -1/+24 |
| | |||||
* | in db convert: map size up to 1TB on 64-bit systems | Alex Auvolat | 2022-06-06 | 1 | -1/+9 |
| | |||||
* | Fix more .unwrap()'s | Alex Auvolat | 2022-06-06 | 3 | -13/+28 |
| | |||||
* | fix | Alex Auvolat | 2022-06-06 | 1 | -1/+1 |
| | |||||
* | add comment | Alex Auvolat | 2022-06-06 | 1 | -0/+9 |
| | |||||
* | Improve things in block manager & correctly propagate .len() errors | Alex Auvolat | 2022-06-06 | 4 | -40/+70 |
| | |||||
* | Table updated trigger now happens in transaction, this is waaaay better! | Alex Auvolat | 2022-06-06 | 9 | -110/+178 |
| | |||||
* | Fix clippy | Alex Auvolat | 2022-06-06 | 2 | -11/+9 |
| | |||||
* | Simplify lmdb adapter (one less indirection) | Alex Auvolat | 2022-06-06 | 1 | -27/+6 |
| | |||||
* | Whoops | Alex Auvolat | 2022-06-06 | 2 | -2/+2 |
| | |||||
* | Small syntax changes | Alex Auvolat | 2022-06-06 | 6 | -32/+18 |
| | |||||
* | Safe choice: revert "Update rmp-serde" | Alex Auvolat | 2022-06-06 | 16 | -20/+22 |
| | | | | This reverts commit 16e0a655d0d01e3871aee81a0a9660102d6df74e. | ||||
* | Safe choice: return Vec<u8> and not some fancy zero-copy type | Alex Auvolat | 2022-06-06 | 9 | -205/+49 |
| | |||||
* | Fix more sqlite deadlocks | Alex Auvolat | 2022-06-06 | 2 | -74/+79 |
| | |||||
* | fixes | Alex Auvolat | 2022-06-06 | 5 | -12/+32 |
| | |||||
* | Integrate LMDB with rest | Alex Auvolat | 2022-06-03 | 4 | -3/+58 |
| | |||||
* | Implement iterator for LMDB | Alex Auvolat | 2022-06-03 | 1 | -8/+98 |
| | |||||
* | LMDB: use Heed wrapper (much more complete) | Alex Auvolat | 2022-06-03 | 3 | -39/+33 |
| | |||||
* | Start LMDB adapter, with fixed semantics | Alex Auvolat | 2022-06-03 | 11 | -85/+372 |
| | |||||
* | Update rmp-serde | Alex Auvolat | 2022-06-03 | 16 | -22/+20 |
| | |||||
* | small fixes | Alex Auvolat | 2022-06-03 | 2 | -6/+3 |
| | |||||
* | whoops | Alex Auvolat | 2022-06-03 | 2 | -2/+17 |
| | |||||
* | Fix block repair to not deadlock with sqlite | Alex Auvolat | 2022-06-03 | 1 | -0/+8 |
| | |||||
* | fix clipy lint | Alex Auvolat | 2022-06-03 | 1 | -5/+4 |
| | |||||
* | Slightly prettier code | Alex Auvolat | 2022-06-03 | 5 | -78/+42 |
| | |||||
* | Garage works on sqlite, but it's a hack | Alex Auvolat | 2022-06-03 | 7 | -34/+118 |
| | |||||
* | Conversion utility | Alex Auvolat | 2022-06-03 | 5 | -78/+130 |
| | |||||
* | Fix most clippy lints | Alex Auvolat | 2022-06-03 | 8 | -85/+90 |
| | |||||
* | Change value type to be a dyn thing | Alex Auvolat | 2022-06-03 | 10 | -45/+165 |
| | |||||
* | Drop later | Alex Auvolat | 2022-06-03 | 2 | -14/+16 |
| | |||||
* | Just refactor a bit | Alex Auvolat | 2022-06-02 | 1 | -71/+45 |
| | |||||
* | Horrible implementation of range for sqlite | Alex Auvolat | 2022-06-02 | 1 | -2/+92 |
| | |||||
* | Sqlite iter with unsafe code | Alex Auvolat | 2022-06-02 | 7 | -60/+162 |
| | |||||
* | Add back Send | Alex Auvolat | 2022-06-02 | 1 | -1/+1 |
| | |||||
* | Begin sqlite adapter | Alex Auvolat | 2022-06-02 | 5 | -102/+394 |
| | |||||
* | Use Cell instead of ArcSwap | Alex Auvolat | 2022-06-02 | 3 | -42/+27 |
| | |||||
* | Complete sled abstraction | Alex Auvolat | 2022-06-02 | 2 | -17/+133 |
| | |||||
* | Do not put sled in garage's cargo.toml | Alex Auvolat | 2022-06-02 | 3 | -4/+6 |
| | |||||
* | Adapt Garage to use new DB abstraction | Alex Auvolat | 2022-06-02 | 25 | -210/+351 |
| | |||||
* | Implement iter() and range() on db | Alex Auvolat | 2022-06-02 | 3 | -15/+98 |
| | |||||
* | First iteration of a generic DB layer | Alex Auvolat | 2022-06-02 | 5 | -0/+379 |
| | |||||
* | Fix Content-Type headers for {admin,k2v} errors and admin responsesfix/admin-api-content-type | Alex Auvolat | 2022-05-25 | 8 | -43/+30 |
| | | | | Fix #315 | ||||
* | K2V client improvements (#307)v0.7.2 | Alex | 2022-05-24 | 4 | -4/+61 |
| | | | | | | | | | | | - [x] Better distinguish error types - [x] Parse error messages received from server - [x] Remove `src/` folder layer, we don't have that for other crates Co-authored-by: Alex Auvolat <alex@adnab.me> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/307 Co-authored-by: Alex <alex@adnab.me> Co-committed-by: Alex <alex@adnab.me> | ||||
* | First version of admin API (#298) | Alex | 2022-05-24 | 60 | -857/+2551 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | **Spec:** - [x] Start writing - [x] Specify all layout endpoints - [x] Specify all endpoints for operations on keys - [x] Specify all endpoints for operations on key/bucket permissions - [x] Specify all endpoints for operations on buckets - [x] Specify all endpoints for operations on bucket aliases View rendered spec at <https://git.deuxfleurs.fr/Deuxfleurs/garage/src/branch/admin-api/doc/drafts/admin-api.md> **Code:** - [x] Refactor code for admin api to use common api code that was created for K2V **General endpoints:** - [x] Metrics - [x] GetClusterStatus - [x] ConnectClusterNodes - [x] GetClusterLayout - [x] UpdateClusterLayout - [x] ApplyClusterLayout - [x] RevertClusterLayout **Key-related endpoints:** - [x] ListKeys - [x] CreateKey - [x] ImportKey - [x] GetKeyInfo - [x] UpdateKey - [x] DeleteKey **Bucket-related endpoints:** - [x] ListBuckets - [x] CreateBucket - [x] GetBucketInfo - [x] DeleteBucket - [x] PutBucketWebsite - [x] DeleteBucketWebsite **Operations on key/bucket permissions:** - [x] BucketAllowKey - [x] BucketDenyKey **Operations on bucket aliases:** - [x] GlobalAliasBucket - [x] GlobalUnaliasBucket - [x] LocalAliasBucket - [x] LocalUnaliasBucket **And also:** - [x] Separate error type for the admin API (this PR includes a quite big refactoring of error handling) - [x] Add management of website access - [ ] Check that nothing is missing wrt what can be done using the CLI - [ ] Improve formatting of the spec - [x] Make sure everyone is cool with the API design Fix #231 Fix #295 Co-authored-by: Alex Auvolat <alex@adnab.me> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/298 Co-authored-by: Alex <alex@adnab.me> Co-committed-by: Alex <alex@adnab.me> | ||||
* | Add a K2V client library and CLI (#303) | trinity-1686a | 2022-05-18 | 10 | -29/+1138 |
| | | | | | | | | | lib.rs could use getting split in modules, but I'm not sure how exactly Co-authored-by: trinity-1686a <trinity@deuxfleurs.fr> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/303 Co-authored-by: trinity-1686a <trinity.pointard@gmail.com> Co-committed-by: trinity-1686a <trinity.pointard@gmail.com> | ||||
* | K2V: Fix `end` parameter and add tests (fix #305)fix-k2v-305 | Alex Auvolat | 2022-05-17 | 2 | -2/+93 |
| |