Commit graph

1025 commits

Author SHA1 Message Date
Alex d640102b76
[split_getobject] GetObject: split out handle_get_full 2024-02-23 18:14:50 +01:00
Alex 6ee691e65f
[refactor-block] simplify some more 2024-02-23 12:50:10 +01:00
Alex e9c42bca34
[refactor-block] add DataBlockStream type 2024-02-23 12:22:29 +01:00
Alex cd1069c1d4
[refactor-block] refactor DataBlock and DataBlockPath 2024-02-23 12:15:52 +01:00
Alex 07c7895948
[refactor-block] simplify rpc_get_block 2024-02-23 11:54:40 +01:00
Alex 9b41f4ff20
[refactor-block] move read_stream_to_end to garage_net 2024-02-23 11:46:57 +01:00
Alex 93552b9275
[refactor-block] Remove redundant BlockStream type 2024-02-23 11:33:38 +01:00
Alex cff702a951
[lock-createbucket] Add node-global lock for bucket/key operations (fix #723) 2024-02-22 12:28:21 +01:00
Alex 885405d944 Merge pull request 'system metrics improvements' (#726) from peer-metrics into main
Reviewed-on: Deuxfleurs/garage#726
2024-02-20 15:35:12 +00:00
Alex b868493da9
[peer-metrics] add basic cluster node status metrics (fix #545) 2024-02-20 14:50:24 +01:00
Alex 182a23cc12
[peer-metrics] refactor SystemMetrics to hold a reference to System 2024-02-20 14:20:58 +01:00
Alex 3cdf69f079
[peer-metrics] Add metrics for cluster health, like GetClusterHealth admin API 2024-02-20 13:50:45 +01:00
Alex 00d479358d
[peer-metrics] refactor/simplify SystemMetrics 2024-02-20 13:50:45 +01:00
Alex 203bb10035 Merge pull request 'Filter nodes Garage tries to connect to' (#719) from reconnect-only-current into main
Reviewed-on: Deuxfleurs/garage#719
2024-02-20 10:37:11 +00:00
Alex e91576677e
[reconnect-only-current] filter nodes to reconnect to
do not try reconnecting to nodes received from consul/kubernetes
discovery if they are not currently in the layout
2024-02-20 11:07:10 +01:00
Alex 95e3a39b4d
[networking-fixes] small refactoring in garage_net peering 2024-02-19 18:12:21 +01:00
Alex 66fe893023
[networking-fixes] garage_net: retry connecting when new IP is learned 2024-02-19 18:12:21 +01:00
Alex b96f84b894
[networking-fixes] add option to bind outgoing RPC sockets (fix #638)
Thanks to yuka for the original patch.
2024-02-19 11:45:44 +01:00
Alex f0bbad2db9
[networking-fixes] use rpc_public_addr in netapp's HelloMessage 2024-02-19 11:45:44 +01:00
Alex 125c662860
[import-netapp] move and rename FullMeshPeeringSrategy to PeeringManager 2024-02-15 12:15:35 +01:00
Alex 5766befb24
[import-netapp] fix tests 2024-02-15 12:15:33 +01:00
Alex 5ea24254a9
[import-netapp] import Netapp code into Garage codebase 2024-02-15 12:15:07 +01:00
Alex 1b0f167d2f
[fix-cargo-toml] fix cargo warnings in Cargo.toml files 2024-02-15 10:54:58 +01:00
Alex bf283c9924
[fix-secrets-695] config: replace String by PathBuf for *_file 2024-02-12 15:36:43 +01:00
Alex 25e5738568
[fix-secrets-695] take into account rpc secret from file for cli commands (fix #695) 2024-02-12 10:42:17 +01:00
Alex 198188017c Merge pull request 'Implement header overriding in GetObject (fix #650)' (#713) from header-override-650 into main
Reviewed-on: Deuxfleurs/garage#713
2024-02-09 15:40:18 +00:00
Alex 02e98e2d10
[header-override-650] implement header overriding in GetObject (fix #650) 2024-02-09 15:58:46 +01:00
Alex fe175fa8e2 Merge pull request 'garage block info: find blocks by prefix (fix #682)' (#712) from block-info-short-682 into main
Reviewed-on: Deuxfleurs/garage#712
2024-02-09 14:07:29 +00:00
Alex 8da67b3aa2
[block-info-short-682] garage block info: find blocks by prefix (fix #682) 2024-02-09 14:35:53 +01:00
Alex 10bc2ead60
[multi-char-delimiter-692] allow multi-character delimiters in List* (fix #692) 2024-02-09 14:15:29 +01:00
Alex 5c63193d1d
[dep-upgrade-202402] fix shutdown issue introduced when upgrading hyper 2024-02-08 23:43:59 +01:00
Alex bcbd15da84
[dep-upgrade-202402] cargo clippy fixes 2024-02-08 23:29:57 +01:00
Alex ad5ce968d2
[dep-upgrade-202402] remove useless mut 2024-02-08 23:29:57 +01:00
Alex e011941964
[dep-upgrade-202402] refactor use of BodyStream 2024-02-07 15:32:51 +01:00
Alex 53746b59e5
[dep-upgrade-202402] slightly more explicit error management 2024-02-07 14:53:13 +01:00
Alex a31d1bd496
[dep-upgrade-202402] fix obsolete DateTime::from_utc calls 2024-02-07 14:48:27 +01:00
Alex e524e7a30d
[dep-upgrade-202402] rename BytesBody into ErrorBody for clarity 2024-02-07 14:45:52 +01:00
Alex fe48d60d2b
[dep-upgrade-202402] refactor http listener code 2024-02-07 14:34:40 +01:00
Alex 22332e6c35
[dep-upgrade-202402] simplify/refactor GetObject 2024-02-05 20:26:33 +01:00
Alex 81ccd4586e
[dep-upgrade-202402] upgrade to http/hyper 1.x for tests 2024-02-05 19:57:35 +01:00
Alex a22bd31920
[dep-upgrade-202402] migration to http/hyper 1.0 for k2v api 2024-02-05 19:27:12 +01:00
Alex 0bb5b77530
[dep-upgrade-202402] wip: port to http/hyper crates v1 2024-02-05 18:49:54 +01:00
Alex 6e69a1fffc
[dep-upgrade-202402] prepare migration to http/hyper 1.0 2024-02-05 14:44:12 +01:00
Alex 6e4229e29c
[dep-upgrade-202402] update aws-sdk dependencies 2024-02-05 14:02:45 +01:00
Alex fe1af5d98b
[dep-upgrade-202402] refactor dependencies: move all as workspace deps 2024-02-05 13:02:02 +01:00
Zdenek Crha 0eef8a69f0 make all garage_db::Engine variants un-conditional
Having all Engine enum variants conditional causes compilation errors
when *none* of the DB engine features is enabled. This is not an issue
for full garage build, but affects crates that use garage_db as
dependency.

Change all variants to be present at all times. It solves compilation
errors and also allows us to better differentiate between invalid DB
engine name and engine with support not compiled in current binary.
2024-01-22 21:12:02 +01:00
Zdenek Crha 74e72fc996 convert_db: cleanup naming and comments for open overrides 2024-01-22 17:52:39 +01:00
Zdenek Crha 4b54e053df convert_db: prevent conversion between same input/output engine
Use optional DB open overrides for both input and output database.

Duplicating the same override flag for input/output would result in too
many, too long flags. It would be too costly for very rare edge-case
where converting between same DB engine, just with different flags.

Because overrides flags for different engines are disjoint and we are
preventing conversion between same input/ouput DB engine, we can have
only one set.

The override flag will be passed either to input or output, based on
engine type it belongs to. It will never be passed to both of them and
cause unwelcome surprise to user.
2024-01-18 17:57:56 +01:00
Zdenek Crha 8527dd87cc convert_db: allow LMDB map size override 2024-01-17 21:20:34 +01:00
Alex ee57dd922b
Bump version to 0.9.1 2024-01-16 16:28:17 +01:00