Renjaya Raga Zenta
8843aa92fa
feat: add log to journald feature
...
The systemd-journald is used in most major Linux distros that use systemd.
This enables logging using the systemd-journald native protocol, instead
of just writing to stderr.
2025-06-02 11:55:27 +07:00
Alex
a19d2f16e2
Merge pull request 'api: s3: implement get bucket acl' ( #1045 ) from ragazenta/garage:feat/dummy-acl into main
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1045
2025-05-30 16:25:04 +00:00
trinity-1686a
fc8fc60f6d
emit internal error when we detect race condition ( #1053 ) ( fix #1050 )
...
i went with a `500`/`InternalError`/`Please try again.` because that is something i've seen AWS S3 report while developing other software, and i'm not convinced all clients would understand a 409 conflict properly (GET don't usually conflict)
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1053
Co-authored-by: trinity-1686a <trinity@deuxfleurs.fr>
Co-committed-by: trinity-1686a <trinity@deuxfleurs.fr>
2025-05-30 16:24:12 +00:00
Renjaya Raga Zenta
1b042e379e
api: s3: implement get bucket acl
2025-05-26 09:43:15 +07:00
Alex Auvolat
53005c91a5
reduce log level of table sync messages
2025-05-25 18:54:53 +02:00
Yureka
ffbce0f689
speed up UploadPartCopy
...
(cherry picked from commit db54bf96c7 )
2025-05-23 20:36:32 +02:00
Alex Auvolat
7ab1d176d4
Merge branch 'main' into next-v2
2025-05-23 16:33:07 +02:00
Alex Auvolat
8654eb19bf
implement repair procedure to fix inconsistent bucket aliases
2025-05-22 19:34:38 +02:00
Alex Auvolat
2ade8c86f6
more resilience to inconsistent alias states
2025-05-22 19:12:05 +02:00
Alex
b15d55ea9f
Merge pull request 'implement x-amz-checksum-type' ( #1025 ) from checksum-type into next-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1025
2025-05-22 17:06:04 +00:00
Alex Auvolat
c13af97b81
return ChecksumType in CompleteMultipartUpload result
2025-05-22 18:24:29 +02:00
Alex Auvolat
d1d5c67ba7
fix test-smoke for CompleteMultipartUpload
2025-05-22 18:14:53 +02:00
Alex Auvolat
cfd10480ee
CopyObject: fix checksumming choice logic
2025-05-22 17:07:10 +02:00
Alex Auvolat
fbb40c4ea0
object_table: merge checksum_algorithm and checksum_type for Uploading state
2025-05-22 17:07:10 +02:00
Alex Auvolat
e475c7f802
api: switch to crc_fast for checksumming and implement full-object mpu checksums
2025-05-22 17:03:54 +02:00
Alex Auvolat
589a992af8
api: parse x-amz-checksum-type and validate combination with algo
2025-05-22 17:03:54 +02:00
Alex Auvolat
768794daae
api: change ExpectedChecksums to not be a reference
2025-05-22 17:03:54 +02:00
Alex Auvolat
abe0546ab0
model: store x-amz-checksum-type (full_object | composite)
2025-05-22 17:03:54 +02:00
Alex
be16bc7a05
Merge pull request 'Fix behavior of CopyObject wrt x-amz-website-redirect-location' ( #1037 ) from Armael/garage:copy-website-redirect into main
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1037
2025-05-22 13:57:28 +00:00
Alex
bfaa1ca6b7
Merge pull request 'api: lifecycle: 404 if missing lifecycle config' ( #1043 ) from ragazenta/garage:no-lifecycle-response into main
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1043
2025-05-22 13:56:52 +00:00
Renjaya Raga Zenta
ae3f7ee76c
api: lifecycle: 404 if missing lifecycle config
2025-05-22 19:33:54 +07:00
Armaël Guéneau
c6bc3f229b
Fix behavior of CopyObject wrt x-amz-website-redirect-location
2025-05-22 14:03:11 +02:00
Alex
47fe96279b
Merge pull request 'throw error on legacy replication_mode setting' ( #1018 ) from yuka/garage:remove-replication-mode into next-v2
...
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/1018
2025-05-22 10:57:24 +00:00
trinity-1686a
bba9202f31
add test for punycode
2025-05-19 20:36:03 +02:00
trinity-1686a
a605a80806
support punnycode in api/web endpoint
2025-05-19 18:11:55 +02:00
trinity-1686a
539af12d21
allow punnycode in bucket name
2025-05-19 18:07:04 +02:00
Yureka
45bdf54e7e
throw error on legacy replication_mode setting
2025-05-15 08:09:56 +02:00
Yureka
db54bf96c7
speed up UploadPartCopy
2025-05-14 02:12:41 +02:00
Yureka
a2d87a012d
refactor: use replication factor of the layout versions in calculate_sync_map_min_with_quorum
2025-04-28 11:51:01 +02:00
Yureka
899292ee28
refactor: make TableShardedReplication a thin wrapper around LayoutManager
2025-04-28 11:51:01 +02:00
Yureka
c8e9c45889
refactor: Use ReplicationFactor type in more places
...
- Remove the replication_factor.replication_factor() in favor of
usize::from(replication_factor) to make the conversion more explicit.
- Implement Display on ReplicationFactor so that it can be formatted
without converting to usize
- Use ReplicationFactor in the constructor of LayoutVersion and add a
method to get a ReplicationFactor from a LayoutVersion, despite
LayoutVersion still storing it as usize internally.
2025-04-21 19:47:14 +02:00
Alex Auvolat
e79b485aa8
fix panic in ListAdminTokens
2025-04-17 17:38:20 +02:00
Alex Auvolat
d38d62f4d7
bump version to v2.0.0
2025-04-17 12:36:41 +02:00
Alex Auvolat
52437e4298
refactor parsing of --expires-in
2025-04-17 12:14:51 +02:00
Alex Auvolat
abcef7a3fd
cli: implement garage key delete-expired
2025-04-17 11:58:19 +02:00
Alex Auvolat
5d338f0b8f
add never_expires to remove expiration dates of admin tokens and access keys
2025-04-17 11:44:09 +02:00
Alex Auvolat
590c9bb4db
possibility to update access key expiration date
2025-04-17 11:30:58 +02:00
Alex Auvolat
c56b7e20c3
add creation date and expiration date to access keys
2025-04-17 11:28:44 +02:00
Alex Auvolat
2f21181ccb
publish bucket creation date in admin api and CLI
2025-04-17 10:29:23 +02:00
Baptiste Jonglez
9ec3f8cc3c
metadata: Create compact LMDB snapshots
...
See #1006
LMDB files never shrink, so we can end up with a large database that
contains a smaller amount of actual data.
Compacting the snapshots is an easy win: it will write faster to disk,
take less space, and if needed you can reimport an already-compacted
snapshot as the main database.
2025-04-12 23:18:50 +02:00
Alex Auvolat
5e7307cbf3
admin api: add comments for InspectObject
2025-04-06 14:21:54 +02:00
Alex Auvolat
fd0e23e984
admin api: implement InspectObject ( fix #892 )
2025-04-06 13:23:39 +02:00
Alex Auvolat
6bbdca2e48
admin api: always return latest bucket info
2025-04-06 11:14:42 +02:00
Alex Auvolat
5fa6df6ee3
improve comments in bucket helper
2025-03-25 16:58:12 +01:00
Alex Auvolat
c6bed26347
relocalize logic into block manager
2025-03-25 16:41:19 +01:00
Alex Auvolat
d25e631a4a
relocalize logic for write_sets
2025-03-25 16:35:56 +01:00
Alex Auvolat
514eb29874
use a WriteLock for write operations on fullcopy tables
2025-03-25 13:26:23 +01:00
Alex Auvolat
8ba6454e21
reduce anti-entropy interval for fullcopy tables
2025-03-25 13:11:11 +01:00
Alex Auvolat
9dcc5232a6
admin api: use fast local reads for token verification
2025-03-25 13:07:45 +01:00
Alex Auvolat
1e13a66b42
rework bucket helper functions to use local access where relevant
2025-03-25 13:00:48 +01:00