-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
feat(pebble): support pinning FormatMajorVersion
#10789
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
FormatMajorVersion
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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
* 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
formatMajorVersion
Closes #10347