Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add versions to dependencies0.1.0 | Alex Auvolat | 2020-07-07 | 5 | -14/+14 |
| | |||||
* | Add license, description and repository to .toml files | Alex Auvolat | 2020-07-07 | 6 | -0/+18 |
| | |||||
* | Rename garage_core to garage_model | Alex Auvolat | 2020-07-07 | 21 | -28/+28 |
| | |||||
* | Add automatic peer discovery from Consul | Alex Auvolat | 2020-06-30 | 6 | -4/+115 |
| | |||||
* | Rename epidemic_factor to epidemic_fanout (that's what it is); complete conf ↵ | Alex Auvolat | 2020-06-30 | 2 | -5/+5 |
| | | | | example in readme | ||||
* | Repair: do not mark deleted when upstream object is not found | Alex Auvolat | 2020-05-04 | 1 | -4/+4 |
| | | | | | | | | | | With the previous behaviour, repairing could see some data as absent and decide that the object or version was deleted, thus going on to delete the version and blocks. In the case where read_quorum + write_quorum <= replication_factor however, entries may not yet be returned by the get, thus data would have been deleted that should hot have been. The new behavior is more cautious and just skips the entry when the warning is emitted. | ||||
* | Implement HTTP ranges in get | Alex Auvolat | 2020-05-04 | 6 | -103/+226 |
| | |||||
* | Rate limit requests a bit more seriously | Alex Auvolat | 2020-05-01 | 1 | -1/+2 |
| | | | | | | | | | droping the slot later (after reading the request response) means that we aren't freeing our quota slot, so the maximum number of simultaneous requests now also counts the response reading phase TODO next: quotas per rpc destination node, or maybe per datacenter (?) | ||||
* | Implement DeleteObjects | Alex Auvolat | 2020-05-01 | 6 | -25/+145 |
| | |||||
* | Slightly improved S3 compatibility | Alex Auvolat | 2020-05-01 | 5 | -47/+82 |
| | | | | | | | | - ListBucket does not require any of the parameters (delimiter, prefix, max-keys, etc) - URLs are properly percent_decoded - PutObject and DeleteObject calls now answer correctly (empty body, version id in the x-amz-version-id: header) | ||||
* | Compatibility fixes | Alex Auvolat | 2020-04-28 | 2 | -9/+5 |
| | |||||
* | Work on API | Alex Auvolat | 2020-04-28 | 10 | -120/+363 |
| | |||||
* | Abort multipart upload | Alex Auvolat | 2020-04-26 | 2 | -4/+44 |
| | |||||
* | Implement multipart uploads | Alex Auvolat | 2020-04-26 | 7 | -57/+293 |
| | |||||
* | Update delete code | Alex Auvolat | 2020-04-26 | 1 | -13/+17 |
| | |||||
* | Fix deletion propagation | Alex Auvolat | 2020-04-26 | 2 | -3/+13 |
| | |||||
* | Prepare for multipart uploads | Alex Auvolat | 2020-04-26 | 6 | -32/+58 |
| | |||||
* | S3 compatibility: fix bucket listing and HEAD and PUT on bucket | Alex Auvolat | 2020-04-26 | 2 | -31/+46 |
| | |||||
* | Add key table to repair procedure | Alex Auvolat | 2020-04-26 | 1 | -0/+7 |
| | |||||
* | Remove leading / in keys; better delimiter handling | Alex Auvolat | 2020-04-24 | 2 | -3/+8 |
| | |||||
* | Less verbosity | Alex Auvolat | 2020-04-24 | 1 | -3/+1 |
| | |||||
* | xml escape | Alex Auvolat | 2020-04-24 | 1 | -2/+8 |
| | |||||
* | Some basic S3 functionnality | Alex Auvolat | 2020-04-24 | 6 | -305/+482 |
| | |||||
* | Starting to be S3 compatible | Alex Auvolat | 2020-04-24 | 6 | -36/+431 |
| | |||||
* | Split code for modular compilation | Alex Auvolat | 2020-04-24 | 36 | -234/+453 |
| | |||||
* | Key management admin commands | Alex Auvolat | 2020-04-23 | 5 | -54/+293 |
| | |||||
* | Move repair to separate file | Alex Auvolat | 2020-04-23 | 5 | -172/+226 |
| | |||||
* | Make table objects slightly more fool-proof; add key table | Alex Auvolat | 2020-04-23 | 7 | -75/+290 |
| | |||||
* | Reorganize code | Alex Auvolat | 2020-04-23 | 24 | -203/+249 |
| | |||||
* | Better error reporting | Alex Auvolat | 2020-04-23 | 3 | -6/+6 |
| | |||||
* | Continue pinging nodes when they are down ; overall better handling of down ↵ | Alex Auvolat | 2020-04-23 | 4 | -89/+164 |
| | | | | nodes | ||||
* | RPC to ourself do not pass through serialization + HTTPS | Alex Auvolat | 2020-04-23 | 7 | -48/+88 |
| | |||||
* | RequestStrategy with possible interruption or not | Alex Auvolat | 2020-04-23 | 3 | -43/+76 |
| | |||||
* | Fix in rpc_client (see comment in code) | Alex Auvolat | 2020-04-22 | 1 | -1/+11 |
| | |||||
* | Improvements to block resync queue & worker | Alex Auvolat | 2020-04-22 | 1 | -21/+47 |
| | |||||
* | I'm stupid though | Alex Auvolat | 2020-04-22 | 1 | -2/+4 |
| | |||||
* | Do not delete block if just a single replication error. Write TODO stuff. | Alex Auvolat | 2020-04-22 | 1 | -10/+10 |
| | |||||
* | Well they still have to exit when we're exiting though | Alex Auvolat | 2020-04-22 | 3 | -12/+12 |
| | |||||
* | Better concurrency: | Alex Auvolat | 2020-04-22 | 8 | -31/+66 |
| | | | | | | Use Notify instead of stupid sleep in background worker Use Semaphore to limit concurrent requests in rpc_client Make more background tasks cancellable | ||||
* | Make UUID & Hash Copy and remove some .clone() noise | Alex Auvolat | 2020-04-21 | 12 | -80/+64 |
| | |||||
* | Return BadRequest codes for some admin_rpc failure cases | Alex Auvolat | 2020-04-21 | 1 | -7/+10 |
| | |||||
* | Make the repair command accept subcommands to not do everything all the time | Alex Auvolat | 2020-04-21 | 2 | -48/+106 |
| | |||||
* | Do full sync on node (re)start | Alex Auvolat | 2020-04-21 | 1 | -1/+8 |
| | |||||
* | Improve table sync | Alex Auvolat | 2020-04-21 | 2 | -87/+173 |
| | |||||
* | Do not insert deletion marker if there is no object to delete | Alex Auvolat | 2020-04-21 | 1 | -6/+27 |
| | |||||
* | Add node tags in configuration | Alex Auvolat | 2020-04-21 | 4 | -15/+44 |
| | |||||
* | Pretty logging | Alex Auvolat | 2020-04-21 | 11 | -71/+94 |
| | |||||
* | Log which workers are doing what | Alex Auvolat | 2020-04-19 | 5 | -16/+25 |
| | |||||
* | Implement repair object->version and version->block ref | Alex Auvolat | 2020-04-19 | 2 | -15/+111 |
| | |||||
* | Don't do version & block_ref updates in background on deletion | Alex Auvolat | 2020-04-19 | 5 | -46/+45 |
| |