feat(pebble): support pinning FormatMajorVersion#10789
Merged
Conversation
FormatMajorVersion
lidel
approved these changes
Apr 27, 2025
Member
There was a problem hiding this comment.
Lgtm, feels like a sensible compromise, and low risk since pebble is still opt-in.
@gammazero there is a failing sharness I assume it needs landing #10788 first?
Example
ipfs init --profile=pebbleds creates config with explicit formatMajorVersion
"Datastore": {
"Spec": {
"child": {
"formatMajorVersion": 19,
"path": "pebbleds",
"type": "pebbleds"
},
"prefix": "pebble.datastore",
"type": "measure"
},
},manually setting 18 (to simulate future pebble format update scenario) triggers below warning:
> ipfs daemon
Initializing daemon...
Kubo version: 0.35.0-dev-32612eb7a
Repo version: 16
System version: amd64/linux
Golang version: go1.24.2
⚠️ A newer pebble db format is available.
To upgrade, set the following in the pebble datastore config:
"formatMajorVersion": 19
PeerID: 12D3KooWSDFGEkyKaUhUjJVFK6JKhrp1NRhvwx2ffjQrm36fPokj
Swarm listening on 127.0.0.1:4001 (TCP+UDP)
Swarm listening on [::1]:4001 (TCP+UDP)
Run 'ipfs id' to inspect announced and discovered multiaddrs of this node.
RPC API server listening on /ip4/127.0.0.1/tcp/5001
WebUI: http://127.0.0.1:5001/webui
Gateway server listening on /ip4/127.0.0.1/tcp/8080
Daemon is ready
cc @hsanjuan for visibility on how Kubo deal with this
- Configure latest pebble database format at init - Do not automatically ratchet database format if set in config - Daemon messge about new available pebble format
c8c62e5 to
3598794
Compare
pull bot
pushed a commit
to Manas1820/kubo
that referenced
this pull request
Apr 30, 2025
* Upgrade to pebble v2.0.3 - Configure latest pebble database format at init - Do not automatically ratchet database format if set in config - Daemon messge about new available pebble format - Document pebble config with formatMajorVersion - Add warning to users running badger, nudging them to switch to flatfs or pebble - docs: explain Pebble's `FormatMajorVersion` - Use pebbleds instead of badgerds in t0060-daemon.sh - Print badgerds warning message to stderr
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
formatMajorVersionCloses #10347