aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Rename garage_core to garage_modelAlex Auvolat2020-07-0721-28/+28
|
* Add automatic peer discovery from ConsulAlex Auvolat2020-06-306-4/+115
|
* Rename epidemic_factor to epidemic_fanout (that's what it is); complete conf ↵Alex Auvolat2020-06-302-5/+5
| | | | example in readme
* Repair: do not mark deleted when upstream object is not foundAlex Auvolat2020-05-041-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 getAlex Auvolat2020-05-046-103/+226
|
* Rate limit requests a bit more seriouslyAlex Auvolat2020-05-011-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 DeleteObjectsAlex Auvolat2020-05-016-25/+145
|
* Slightly improved S3 compatibilityAlex Auvolat2020-05-015-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 fixesAlex Auvolat2020-04-282-9/+5
|
* Work on APIAlex Auvolat2020-04-2810-120/+363
|
* Abort multipart uploadAlex Auvolat2020-04-262-4/+44
|
* Implement multipart uploadsAlex Auvolat2020-04-267-57/+293
|
* Update delete codeAlex Auvolat2020-04-261-13/+17
|
* Fix deletion propagationAlex Auvolat2020-04-262-3/+13
|
* Prepare for multipart uploadsAlex Auvolat2020-04-266-32/+58
|
* S3 compatibility: fix bucket listing and HEAD and PUT on bucketAlex Auvolat2020-04-262-31/+46
|
* Add key table to repair procedureAlex Auvolat2020-04-261-0/+7
|
* Remove leading / in keys; better delimiter handlingAlex Auvolat2020-04-242-3/+8
|
* Less verbosityAlex Auvolat2020-04-241-3/+1
|
* xml escapeAlex Auvolat2020-04-241-2/+8
|
* Some basic S3 functionnalityAlex Auvolat2020-04-246-305/+482
|
* Starting to be S3 compatibleAlex Auvolat2020-04-246-36/+431
|
* Split code for modular compilationAlex Auvolat2020-04-2436-234/+453
|
* Key management admin commandsAlex Auvolat2020-04-235-54/+293
|
* Move repair to separate fileAlex Auvolat2020-04-235-172/+226
|
* Make table objects slightly more fool-proof; add key tableAlex Auvolat2020-04-237-75/+290
|
* Reorganize codeAlex Auvolat2020-04-2324-203/+249
|
* Better error reportingAlex Auvolat2020-04-233-6/+6
|
* Continue pinging nodes when they are down ; overall better handling of down ↵Alex Auvolat2020-04-234-89/+164
| | | | nodes
* RPC to ourself do not pass through serialization + HTTPSAlex Auvolat2020-04-237-48/+88
|
* RequestStrategy with possible interruption or notAlex Auvolat2020-04-233-43/+76
|
* Fix in rpc_client (see comment in code)Alex Auvolat2020-04-221-1/+11
|
* Improvements to block resync queue & workerAlex Auvolat2020-04-221-21/+47
|
* I'm stupid thoughAlex Auvolat2020-04-221-2/+4
|
* Do not delete block if just a single replication error. Write TODO stuff.Alex Auvolat2020-04-221-10/+10
|
* Well they still have to exit when we're exiting thoughAlex Auvolat2020-04-223-12/+12
|
* Better concurrency:Alex Auvolat2020-04-228-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() noiseAlex Auvolat2020-04-2112-80/+64
|
* Return BadRequest codes for some admin_rpc failure casesAlex Auvolat2020-04-211-7/+10
|
* Make the repair command accept subcommands to not do everything all the timeAlex Auvolat2020-04-212-48/+106
|
* Do full sync on node (re)startAlex Auvolat2020-04-211-1/+8
|
* Improve table syncAlex Auvolat2020-04-212-87/+173
|
* Do not insert deletion marker if there is no object to deleteAlex Auvolat2020-04-211-6/+27
|
* Add node tags in configurationAlex Auvolat2020-04-214-15/+44
|
* Pretty loggingAlex Auvolat2020-04-2111-71/+94
|
* Log which workers are doing whatAlex Auvolat2020-04-195-16/+25
|
* Implement repair object->version and version->block refAlex Auvolat2020-04-192-15/+111
|
* Don't do version & block_ref updates in background on deletionAlex Auvolat2020-04-195-46/+45
|
* Implement repair commandAlex Auvolat2020-04-194-11/+152
|
* Less outputAlex Auvolat2020-04-191-14/+18
|