chore!: remove badger v1 datastore support - #11455
Open
karawitan wants to merge 1 commit into
Open
Conversation
The badgerds datastore (based on badger 1.x) has not been maintained by its upstream maintainers for years and had known bugs: startup timeouts, shutdown hangs, file descriptor exhaustion, and stdout pollution. It was deprecated in v0.40 with a loud warning on every daemon start; this completes the removal phase from ipfs#11186. What is removed: - plugin/plugins/badgerds/ (the datastore plugin) - badgerds and badgerds-measure profiles (config/profile.go, config/init.go) - go-ds-badger dependency (go.mod, go.sum) - badgerds entries in plugin/loader, cmd/ipfswatch, docs, and sharness tests What breaks and for whom: - Operators with an existing badger-based repository will see a clear error on daemon start with migration instructions (repo/fsrepo/datastores.go detects type "badgerds" and returns a detailed message instead of the generic "unknown datastore type"). - ipfs init --profile=badgerds is no longer a valid profile. Migration path (no automated migration, as noted in ipfs#11186): 1. Create a new IPFS_PATH with flatfs: ipfs init --profile=flatfs 2. Move pinned data via ipfs dag export/import or ipfs pin ls -t recursive|add 3. Decommission the old badger-based node Closes ipfs#11186 Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
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.
Summary
Completes the removal phase of #11186. The
badgerdsdatastore (badger 1.x) was deprecated in v0.40 with a loud warning on every daemon start; this PR removes it entirely.What is removed
plugin/plugins/badgerds/— the datastore pluginbadgerdsandbadgerds-measureprofiles —config/profile.go,config/init.gogo-ds-badgerdependency —go.mod,go.sumplugin/loader,cmd/ipfswatch, docs, and sharness testsWhat breaks and for whom
repo/fsrepo/datastores.godetectstype: "badgerds"and returns a clear message with steps, instead of the genericunknown datastore type: badgerds).ipfs init --profile=badgerdsis no longer a valid profile (returnsbadgerds is not a profile).Migration path
No automated migration (as noted in #11186 — it is not feasible):
IPFS_PATHwithflatfs:ipfs init --profile=flatfsipfs dag export/importoripfs pin ls -t recursive|addDeprecation timeline
Closes #11186
Test plan
make buildsucceedsgo test ./config/... ./repo/fsrepo/... ./plugin/...passesgo vetclean for modified packagesgo build ./cmd/ipfswatch/...succeedstype: badgerdsin config produces the migration error onipfs daemonGenerated with Devin