Alex
5d5a9ab642
Merge pull request 'Update fjall to v3' ( #1346 ) from marvinj97/garage:fjall-v3 into next-v3
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1346
2026-09-15 14:32:59 +00:00
Alex Auvolat
b031a45057
db: add test for tree.clear()
2026-09-15 15:21:32 +02:00
Alex Auvolat
225672c172
fjall: fix allow fsync
2026-09-15 15:15:31 +02:00
marvin-j97
eab9eab38c
refactor: fjall tx
2026-09-15 15:08:46 +02:00
marvin-j97
0e9fbeb528
fix: lint
2026-09-15 15:07:53 +02:00
marvin-j97
b10817dd96
use fjall-native tree clear fn
2026-09-15 15:07:53 +02:00
marvin-j97
e479bfe36c
fix: fjall optimistic tx
2026-09-15 15:07:32 +02:00
marvin-j97
700566ddba
refactor: fjall persist mode
2026-09-15 15:06:01 +02:00
marvin-j97
06ce6adc98
update fjall to v3
2026-09-15 15:05:57 +02:00
Dominik Menke
75d1de1df8
fix: improve routing of keys starting with "/" ( fix #1178 ) ( #1465 )
...
Path-style URLs of the form /bucket//key address an object whose key begins with "/". Two greedy uses of `trim_start_matches('/')` were collapsing these leading slashes away:
- `uri.path().trim_start_matches('/')` stripped all leading slashes from the raw path before any further parsing.
- `p.trim_start_matches('/')` stripped leading slashes from the remainder after `split_once('/')` had already consumed the bucket/key separator
The combined effect wath that `HEAD /bucket//` and `GET /bucket//` produced an empty key, which the router treated as bucket-level operations (HeadBucket -> 200 OK, and ListObjectsV2) instead of an object-level op (HeadObject/GetObject -> 404 NoSuchKey).
The fix is simple: Replace the first `trim_start_matches` with `strip_prefix` (to strip exactly one separator slash) and remove the second one entirely. Path-style and vhost-style requests are now consistent: a double slash in the URL correctly addresses a key whose name begins with "/".
Regression tests added for `HEAD //` and `GET //` requests in both request styles.
Fixes : #1464
---
Disclaimer: I'm not fluent in Rust and I did use an LLM to explain the code to me. All code was written by me.
I'm not sure whether the large `test_cases!` block in the `test_aws_doc_examples` function is the right place for my tests (it certainly was a convenient one).
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1465
2026-09-15 14:16:07 +02:00
Gwen Lg
c18d30eff9
style: use _count suffix for metrics
...
instead of `_counter` to follow grafana best practice.
update monitoring doc and grafana json
2026-09-15 14:16:07 +02:00
Gwen Lg
242f4931f1
chore: add garage_ prefix for metrics who didn't have it
...
update:
- monitoring doc
- grafana dashboard elasticsearch.json
2026-09-15 14:16:05 +02:00
Gwen Lg
3890d5f90c
tests: check than all metrics name start with 'garage_' prefix
2026-09-15 14:15:16 +02:00
ieugen
b43e81dbcf
Improve usability for garage in container by setting entrypoint ( #1363 )
...
- BREAKING: This update will probably break previous containers setups
that expect you to provide `/garage`
After the upgrade, instead of:
docker run --rm dxflrs/garage:latest /garage --help
you need to run
docker run --rm dxflrs/garage:latest --help
Signed-off-by: ieugen <eugen@ieugen.ro>
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1363
Reviewed-by: Alex <lx@deuxfleurs.fr>
Co-authored-by: ieugen <eugen@ieugen.ro>
Co-committed-by: ieugen <eugen@ieugen.ro>
2026-09-15 14:15:16 +02:00
Alex Auvolat
7edbb85ebe
fix typos ( #1543 )
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1543
2026-09-15 10:21:01 +00:00
Mohamed El tamawey
8a3554e7a9
Report Content-MD5 mismatch on PutObject as BadDigest ( fix #1520 ) ( #1538 )
...
I did the bare minimum, meaning I didn't try to implement a fix for other parts (like SHA-256), just to make sure I am on the right track.
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1538
2026-09-15 09:55:50 +00:00
Arthur Carcano
6292e9e880
Add fuzzing for object crdt ( #1540 )
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1540
2026-09-15 09:54:40 +00:00
Alex
c887553a1a
Merge pull request '[RFC] Garbage Collector Elimination' ( #1301 ) from 1686a/rfc-gc into main-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1301
2026-09-15 09:29:51 +00:00
trinity-1686a
273d8bac98
wip formal algorithm
2026-09-15 09:29:51 +00:00
trinity-1686a
ff40930b69
[RFC] Garbage Collector Elimination
2026-09-15 09:29:51 +00:00
Alex Auvolat
c55176fdfb
post-v2.4.0 release dependency upgrades ( #1531 )
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1531
2026-09-15 09:02:57 +00:00
Alex Auvolat
871a472da0
remove quentin from maintainers ( #1539 )
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1539
2026-09-12 14:14:11 +00:00
Alex
bc911afe53
Merge pull request 'Refactor resync manager' ( #1476 ) from krtab/garage:refactor_resync_manager into main-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1476
Reviewed-by: Armael <armael@noreply.localhost>
2026-09-10 15:18:52 +00:00
Arthur Carcano
ca4a211ef9
Fix migration semantics
2026-09-10 15:18:52 +00:00
Arthur Carcano
0882288aa3
Update post lx review
2026-09-10 15:18:52 +00:00
Arthur Carcano
069edf7dfb
cargo fmt
2026-09-10 15:18:52 +00:00
Arthur Carcano
aae58e4097
Fix typo
2026-09-10 15:18:52 +00:00
Arthur Carcano
a1872490d2
clippy
2026-09-10 15:18:52 +00:00
Arthur Carcano
e1ebf2140e
Review Armael 2
2026-09-10 15:18:52 +00:00
Arthur Carcano
946bcb67a8
Review Armael
2026-09-10 15:18:52 +00:00
Arthur Carcano
c979d5385a
cargo fmt
2026-09-10 15:18:52 +00:00
Arthur Carcano
9d4383ee83
Add migration of resync queue from v1 to v2
2026-09-10 15:18:52 +00:00
Arthur Carcano
3d2223073e
WIP fix errored inital computation
2026-09-10 15:18:52 +00:00
Arthur Carcano
06dc82e3a0
WIP step 3
2026-09-10 15:18:52 +00:00
Arthur Carcano
f84ed4fd5f
WIP step 2
2026-09-10 15:18:52 +00:00
Arthur Carcano
fcdf24402b
WIP step 1
2026-09-10 15:18:52 +00:00
Alex Auvolat
268334bd25
bump version to v2.4.1
v2.4.1
2026-09-07 21:05:12 +02:00
Alex
a3cb3bc862
Merge pull request 'set ring as rustls crypto provider when building http clients' ( #1473 ) from mjm/garage:push-nkszolnkwuvt into main-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1473
2026-09-07 17:54:48 +00:00
Alex Auvolat
c22b7499b8
kubernetes discovery: install ring crypto provider if missing
2026-09-07 19:34:22 +02:00
Alex Auvolat
ae29f7f73f
k2v-client: use ring tls provider
2026-09-07 19:16:10 +02:00
Matt Moriarity
3dbcad9dda
set rustls crypto provider when using consul discovery
2026-09-07 19:06:02 +02:00
Alex Auvolat
cca7acae33
Revert "reintroduce full rustls dependency in garage_rpc ( fix #1526 ) ( #1527 )"
...
This reverts commit 229ec977d5 .
2026-09-07 19:02:06 +02:00
Alex Auvolat
b30ad6dfcc
hacky regression test for #1416 / #1526 ( #1528 )
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1528
2026-09-07 08:18:48 +00:00
maximilien
ceadd2c0d2
Merge pull request 'helm: update doc' ( #1530 ) from helm-docs-update-2 into main-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1530
2026-09-07 07:19:00 +00:00
maximilien
67ada6ee78
helm: update doc
2026-09-07 07:19:00 +00:00
Alex Auvolat
229ec977d5
reintroduce full rustls dependency in garage_rpc ( fix #1526 ) ( #1527 )
...
also fix #1416
issue introduced in #1412
other potential solution #1473
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1527
2026-09-07 07:16:44 +00:00
maximilien
13b264afce
Merge pull request 'helm: update helm-docs for chart 0.10.1' ( #1529 ) from helm-docs-update into main-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1529
2026-09-07 06:29:29 +00:00
maximilien
6b50841d00
helm: update helm-docs for chart 0.10.1
2026-09-07 08:27:28 +02:00
maximilien
6dd5a6e823
Merge pull request 'helm: Add singleNode parameter' ( #1458 ) from kirmanak/garage:main-v2 into main-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1458
2026-09-07 06:23:25 +00:00
maximilien
683b419047
helm: add single-node unit tests
2026-09-07 08:19:13 +02:00