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.
|1 month ago|
|src||1 month ago|
|.gitignore||1 month ago|
|Cargo.lock||1 month ago|
|Cargo.toml||1 month ago|
|LICENSE||2 months ago|
|Makefile||1 month ago|
|README.md||1 month ago|
|TODO||1 month ago|
|genkeys.sh||1 month ago|
|rustfmt.toml||1 month ago|
|test_delete.sh||1 month ago|
|test_read.sh||1 month ago|
|test_write.sh||1 month ago|
THIS IS ALL WORK IN PROGRESS. NOTHING TO SEE YET BUT THANKS FOR YOUR INTEREST.
Garage implements an S3-compatible object store with high resiliency to network failures, machine failure, and sysadmin failure.
RUST_LOG=garage=debug cargo run --release -- server -c config_file.toml
tables: to do a full sync of metadata, should not be necessary because it is done every hour by the system
block_refs: very time consuming, usefull if deletions have not been propagated, improves garbage collection
blocks: very usefull to resync/rebalance blocks betweeen nodes