aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request 'web_server.rs: Added bucket domain to observability' ↵Alex9 days3-15/+39
|\ | | | | | | | | | | (#608) from jpds/garage:domain-web-requests into main Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/608
| * add configuration option to enable/disable monitoring bucket in web metricsAlex Auvolat9 days3-30/+26
| |
| * web_server.rs: Added bucket domain to observability.Jonathan Davies9 days1-6/+34
| |
* | Merge pull request 's3 api: parse x-id query parameter and warn of any ↵Alex9 days1-1/+14
|\ \ | |/ |/| | | | | | | inconsistency (fix #822)' (#954) from fix-822 into main Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/954
| * s3 api: parse x-id query parameter and warn of any inconsistency (fix #822)fix-822Alex Auvolat9 days1-1/+14
| |
* | cli: return info of all nodes when doing garage stats -a (fix #814)Alex Auvolat9 days1-1/+6
|/
* db-snapshot: propagate any node snapshot error through RPC callhandle_snapshot_errorsBaptiste Jonglez2025-02-071-1/+5
| | | | | | | | | | In particular, it means that "garage meta snapshot --all" will get an exit code of 1 if any node fails to snapshot. This makes sure that any external tool trying to snapshot nodes (e.g. from cron) will be aware of the failure. Fix #920
* db-snapshot: Fix error reporting when using "garage meta snapshot --all"Baptiste Jonglez2025-02-071-1/+1
| | | | | | | | | | | Snapshot errors on remote nodes were not reported at all. We now get proper error output such as: 0fa0f35be69528ab error: Internal error: DB error: LMDB: No space left on device (os error 28) 88d92e2971d14bae ok Fix #920
* remove async_trait for TableRepairAlex Auvolat2025-02-051-6/+3
|
* remove async_trait used in generic_server.rsAlex Auvolat2025-02-058-21/+3
|
* remove async_trait for traits declared in garage_netAlex Auvolat2025-02-0515-54/+35
|
* build with rust 1.82.0Alex Auvolat2025-02-032-2/+4
|
* nix, ci: build with CraneAlex Auvolat2025-02-032-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes our dependency on cargo2nix, which was causing us some issues. Whereas cargo2nix creates one Nix derivation per crate, Crane uses only two derivations: 1. Build dependencies only 2. Build the final binary This means that during the second step, no caching can be done. For instance, if we do a change in garage_model, we need to recompile all of the Garage crates including those that do not depend on garage_model. On the upside, this allows all of the Garage crates to be built at once using cargo build logic, which is optimized for high parallelism and better pipelining between all of the steps of the build. All in all, this makes most builds faster than cargo2nix. A few other changes have been made to the build scripts and CI: - Unit tests are now run within a Nix derivation. In fact, we have different derivations to run the tests using LMDB and Sqlite as metadata db engines. - For debug builds, most CI steps now run in parallel (with the notable exception of the smoke test that runs after the build, which is inevitable). - We no longer pass the GIT_VERSION argument when building debug builds and running the tests. This means that dev binaries and test binaries don't know the exact version of Garage they are from. That shouldn't be an issue in most cases. - The not-dynamic.sh scripts has been fixed to fail if the file does not exist.
* fix testsAlex Auvolat2025-01-313-2/+4
|
* cargo defs: simplify and fix descriptionsAlex Auvolat2025-01-313-8/+8
|
* use cargo-shear to remove many unused dependencies between cratesAlex Auvolat2025-01-3113-126/+3
|
* split s3/cors.rs into also common/cors.rsAlex Auvolat2025-01-3110-179/+179
|
* fix things upAlex Auvolat2025-01-3134-102/+130
|
* wip: split garage_api into garage_api_{common,s3,k2v,admin}Alex Auvolat2025-01-3150-190/+425
|
* table::insert_many: avoid failure with zero items (fix #915)fix-915Alex Auvolat2025-01-301-0/+4
|
* api: better handling of helper errors to distinguish error codesAlex Auvolat2025-01-2912-29/+97
|
* Merge pull request 's3 api: make x-amz-meta-* headers lowercase (fix #844)' ↵Alex2025-01-272-9/+6
|\ | | | | | | | | | | (#938) from fix-844 into main Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/938
| * s3 api: make x-amz-meta-* headers lowercase (fix #844)fix-844Alex Auvolat2025-01-272-9/+6
| |
* | snapshot: sqlite: use a subdirectory for consistency with LMDBBaptiste Jonglez2025-01-271-1/+4
|/ | | | | | | | | | | | | | | | Currently, taking a snapshot of the metadata database with sqlite creates a sqlite file without extension with the following format: snapshots/2025-01-26T15:29:17Z This makes it hard to understand what kind of data this is, and is not consistent with LMDB: snapshots/2025-01-26T15:29:17Z/data.mdb With this change, we now get a directory with a single db.sqlite file: snapshots/2025-01-26T15:29:17Z/db.sqlite
* db-snapshot: allow to set directory where snapshots are storedBaptiste Jonglez2025-01-272-2/+11
| | | | Fix #926
* Fix all typosStefan Majer2025-01-1653-108/+108
|
* fix formatting to comply with latest rustfmtAlex Auvolat2025-01-122-2/+4
|
* Formatting withVedad KAJTAZ2025-01-041-2/+2
|
* formattingVedad KAJTAZ2025-01-041-3/+3
|
* Fix #907Vedad KAJTAZ2025-01-041-0/+24
|
* feat: add use_local_tz configurationRenjaya Raga Zenta2024-11-232-8/+22
| | | | Used in lifecycle_worker to determine midnight time
* fix bit/byte inversion in rpc secret error messagetrinity-1686a2024-11-071-1/+1
|
* Bump to version 1.0.1v1.0.1rel-v1.0.1Alex Auvolat2024-09-2210-10/+10
|
* fix logic in `garage layout skip-dead-nodes` + fix typo (fix #879)fix-skip-dead-nodesAlex Auvolat2024-09-222-13/+25
|
* Tests: don't expect old value after transactional insertJulien Kritter2024-09-121-2/+2
|
* Don't fetch old values in cross-partition transactional insertsJulien Kritter2024-09-123-33/+17
|
* test: fix db testsmarvin-j972024-09-041-2/+2
|
* dont assert deletion count in sqlite KV adaptermarvin-j972024-09-041-1/+0
|
* perf(kv): dont retrieve values for write opsmarvin-j972024-09-043-24/+14
| | | | see https://git.deuxfleurs.fr/Deuxfleurs/garage/issues/851
* api servers: kill opened connections after SIGINT after 10s deadline (fix #806)Alex Auvolat2024-08-251-15/+28
|
* fix build when lmdb feature is disabled (fix #800)fix-800Alex Auvolat2024-08-251-0/+2
|
* Merge pull request 'layout: discard old info when it is completely ↵Alex2024-08-241-9/+14
|\ | | | | | | | | | | out-of-date (fix #841)' (#861) from fix-841 into main Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/861
| * layout: discard old info when it is completely out-of-date (fix #841)fix-841Alex Auvolat2024-08-241-9/+14
| |
* | Merge pull request 'don't modify postobject request before validating ↵Alex2024-08-241-15/+7
|\ \ | |/ |/| | | | | | | policy' (#850) from trinity-1686a/garage:fix-acl-postobject into main Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/850
| * don't modify postobject request before validating policytrinity-1686a2024-08-101-15/+7
| |
* | force flag "no read ahead" on LMDBfix-lmdb-no-read-aheadQuentin Dufour2024-08-171-0/+1
|/
* Improve error message for malformed RPC secret keyimprove-secret-error-messageMaximilien R.2024-08-081-1/+1
|
* add rpc_public_addr_subnet config optionFlorian Klink2024-06-053-6/+40
| | | | | | | | | | In case `rpc_public_addr` is not set, but autodiscovery is used, this allows filtering the list of automatically discovered IPs to a specific subnet. For example, if nodes should pick *their* IP inside a specific subnet, but you don't want to explicitly write the IP down (as it's dynamic, or you want to share configs across nodes), you can use this option.
* cli: clarify `garage block` is node-localFlorian Klink2024-05-071-1/+1
| | | | | Prevents some of the confusion from https://git.deuxfleurs.fr/Deuxfleurs/garage/issues/810.
* [next-0.10] small updates to mention Garage v0.9.4Alex Auvolat2024-04-101-1/+1
|