Commit graph

122 commits

Author SHA1 Message Date
Florian Klink 15847a636a cli: clarify garage block is node-local
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
Prevents some of the confusion from
#810.
2024-05-07 07:42:33 +00:00
Alex 961b4f9af3
[net-fixes] fix issues with local peer address (fix #761) 2024-03-21 10:45:34 +01:00
Alex 3eab639c14
[block-ref-repair] mention garage block repair-rc in documentation
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
2024-03-19 16:24:34 +01:00
Alex dc0b78cdb8
[block-ref-repair] Block refcount recalculation and repair
- We always recalculate the reference count of a block before deleting
  it locally, to make sure that it is indeed zero.

- If we had to fetch a remote block but we were not able to get it,
  check that refcount is indeed > 0.

- Repair procedure that checks everything
2024-03-19 16:20:22 +01:00
Alex 0038ca8a78
Merge branch 'main' into next-0.10
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/cron/debug Pipeline was successful
ci/woodpecker/cron/release/4 Pipeline was successful
ci/woodpecker/cron/release/3 Pipeline was successful
ci/woodpecker/cron/release/2 Pipeline was successful
ci/woodpecker/cron/release/1 Pipeline was successful
ci/woodpecker/cron/publish Pipeline was successful
2024-03-18 20:19:30 +01:00
Alex a68c37555d
[db-snapshot] add garage meta snapshot cli operation 2024-03-15 13:51:31 +01:00
Alex 81191d2d92 Merge pull request 'Remove Sled' (#767) from rm-sled into next-0.10
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/cron/release/3 Pipeline was successful
ci/woodpecker/cron/release/2 Pipeline was successful
ci/woodpecker/cron/debug Pipeline was successful
ci/woodpecker/cron/release/4 Pipeline was successful
ci/woodpecker/cron/release/1 Pipeline was successful
ci/woodpecker/cron/publish Pipeline was successful
Reviewed-on: #767
2024-03-12 10:45:57 +00:00
Alex 05c92204ec
[rm-sled] Remove counted_tree_hack
All checks were successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/pr/debug Pipeline was successful
2024-03-08 15:09:57 +01:00
Alex 2128b5febd Merge pull request 'Remove migration path from Garage v0.5' (#766) from rm-migration into next-0.10
All checks were successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/cron/release/3 Pipeline was successful
ci/woodpecker/cron/release/2 Pipeline was successful
ci/woodpecker/cron/debug Pipeline was successful
ci/woodpecker/cron/release/4 Pipeline was successful
ci/woodpecker/cron/release/1 Pipeline was successful
ci/woodpecker/cron/publish Pipeline was successful
Reviewed-on: #766
2024-03-08 13:43:42 +00:00
Alex 44454aac01
[rm-sled] Remove the Sled database engine
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
2024-03-08 14:11:02 +01:00
Alex 1ace34adbb
Merge branch 'main' into next-0.10
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
2024-03-08 13:57:10 +01:00
Alex f537f76681
[rm-migration] Remove migration path from Garage v0.5
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/deployment/debug Pipeline was successful
ci/woodpecker/deployment/release/3 Pipeline was successful
ci/woodpecker/deployment/release/2 Pipeline was successful
ci/woodpecker/deployment/release/4 Pipeline was successful
ci/woodpecker/deployment/release/1 Pipeline was successful
ci/woodpecker/deployment/publish Pipeline was successful
2024-03-08 13:24:47 +01:00
Alex ec34728b27
[factor-db-open] Combine logic for opening db engines
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/deployment/debug Pipeline was successful
ci/woodpecker/deployment/release/4 Pipeline was successful
ci/woodpecker/deployment/release/3 Pipeline was successful
ci/woodpecker/deployment/release/2 Pipeline was successful
ci/woodpecker/deployment/release/1 Pipeline was successful
ci/woodpecker/deployment/publish Pipeline was successful
2024-03-08 12:58:17 +01:00
Alex cf2af186fc
Merge branch 'main' into next-0.10
All checks were successful
ci/woodpecker/push/debug Pipeline was successful
ci/woodpecker/pr/debug Pipeline was successful
2024-02-13 11:36:28 +01:00
Alex bcbd15da84
[dep-upgrade-202402] cargo clippy fixes
All checks were successful
ci/woodpecker/pr/debug Pipeline was successful
ci/woodpecker/push/debug Pipeline was successful
2024-02-08 23:29:57 +01:00
Zdenek Crha 0eef8a69f0 make all garage_db::Engine variants un-conditional
All checks were successful
continuous-integration/drone/pr Build is passing
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
All checks were successful
continuous-integration/drone/pr Build is passing
2024-01-22 17:52:39 +01:00
Zdenek Crha 4b54e053df convert_db: prevent conversion between same input/output engine
All checks were successful
continuous-integration/drone/pr Build is passing
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
All checks were successful
continuous-integration/drone/pr Build is passing
2024-01-17 21:20:34 +01:00
Alex 82a29bf6e5
help, comments: make clear that full-length node ID = public key
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Generally, avoid using the "public key" terminology
2024-01-16 14:04:11 +01:00
Alex 7f2541101f
cli: improvements to the layout commands when multiple layouts are live
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-12-08 11:24:23 +01:00
Alex 9cecea64d4
layout: allow sync update tracker to progress with only quorums
Some checks reported errors
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
continuous-integration/drone Build was killed
2023-12-07 14:51:20 +01:00
Alex aa59059a91
layout cli: safer skip-dead-nodes command
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-12-07 11:56:14 +01:00
Alex c04dd8788a
admin: more info in admin GetClusterStatus
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-11-28 14:25:04 +01:00
Alex c539077d30
cli: remove historic layout info from status
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-11-27 16:22:27 +01:00
Alex 11e6fef93c
cli: add layout history and layout assume-sync commands 2023-11-27 16:22:25 +01:00
Alex 539a920313
cli: show when nodes are draining metadata
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-11-27 13:18:59 +01:00
Alex 33c8a489b0
layou: implement ack locking
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-11-15 15:40:44 +01:00
Alex 393c4d4515
layout: add helper for cached/external values to centralize recomputation
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-11-15 14:20:50 +01:00
Alex 1aab1f4e68
layout: refactoring of all_nodes
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-14 13:12:32 +01:00
Alex bad7cc812e
layout admin: add missing calls to update_hash
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-09 15:42:10 +01:00
Alex bfb1845fdc
layout: refactor to use a RwLock on LayoutHistory
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-09 14:12:05 +01:00
Alex 19ef1ec8e7
layout: more refactoring 2023-11-09 13:34:14 +01:00
Alex 523d2ecb95
layout: use separate CRDT for staged layout changes
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-11-09 11:19:43 +01:00
Alex 8dccee3ccf
cluster layout: adapt all uses of ClusterLayout to LayoutHistory
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-11-08 19:28:36 +01:00
Alex 3d7892477d convert_db: fix build 2023-10-10 14:06:25 +02:00
Alex d4932c31ea Merge branch 'main' into next
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-10-10 13:57:21 +02:00
Alex 2d5d7a7031 Move convert_db command into main garage binary
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-10-10 12:13:15 +02:00
Alex 920dec393a cli: more precise doc comment
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2023-10-04 10:44:42 +02:00
Alex 749b4865d0 new layout: improve display and fix comments
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-09-18 12:07:45 +02:00
Alex 015ccb39aa new layout: make zone_redundancy optionnal (if not set, is maximum)
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2023-09-18 11:59:08 +02:00
Alex 2e229d4430 new layout: improve output display
Some checks reported errors
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build was killed
2023-09-12 17:24:51 +02:00
Alex 6b008b5bd3 block manager: add rebalance operation to rebalance multi-hdd setups 2023-09-07 13:44:11 +02:00
Alex 2e90e1c124 Merge branch 'main' into next
Some checks reported errors
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build was killed
continuous-integration/drone Build is passing
2023-08-29 11:32:42 +02:00
Florian Klink b1ca1784a1 src/garage/cli: fix typo 2023-07-14 14:25:33 +03:00
Alex 7895f99d3a admin and cli: hide secret keys unless asked
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-06-14 16:56:15 +02:00
Alex 90b2d43eb4 Merge branch 'main' into next
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-06-13 17:14:11 +02:00
Alex 7126f3e1d1 garage key import: add checks and --yes CLI flag (fix #278)
Some checks failed
continuous-integration/drone/pr Build is failing
continuous-integration/drone/push Build is failing
2023-06-13 15:56:48 +02:00
Alex 1ea4937c8b fix timestamps wrapping around in garage block list-errors (fix #584)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2023-06-12 20:07:33 +02:00
Alex 511e07ecd4 fix mpu counter (add missing workers) and report info at appropriate places 2023-06-09 16:23:37 +02:00