Skip to content
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

Solution to be able to upgrade existing instance when bdb will be no more available #6430

Open
progier389 opened this issue Dec 3, 2024 · 0 comments · May be fixed by #6431
Open

Solution to be able to upgrade existing instance when bdb will be no more available #6430

progier389 opened this issue Dec 3, 2024 · 0 comments · May be fixed by #6431
Assignees
Labels
lmdb LMDB related

Comments

@progier389
Copy link
Contributor

Describe the problem
Berkeley Database is deprecated so libdb may not be available in some future, and we need a solution
to allow people to migrate their bdb database to lmdb once libdb is no more available.

Describe the solution you'd like
librpm had the same problem and solved it by having a set of functions able to read records from bdb databases.
The idea is to reuse the functions and glue some code to mimic the bdb API for the read operations to support a minimum set of operations:

  • dsctl instance db2ldif backendname ldifpath
  • dbscan -L dbpath
  • dbscan --export exported_changelog_path -f changelog_path
  • dsctl instance bdb2mdb

Describe alternatives you've considered
Forcing people to migrate the db before upgrading (with the risk that someone get somehow stuck with unreadable database)

@progier389 progier389 added the lmdb LMDB related label Dec 3, 2024
@progier389 progier389 self-assigned this Dec 3, 2024
@progier389 progier389 linked a pull request Dec 3, 2024 that will close this issue
@progier389 progier389 linked a pull request Dec 3, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lmdb LMDB related
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant