Re: git: 0cea189105ef - main - databases/lmdb: add migration notice for 0.9.x -> 1.0.0 upgrade
- Reply: Daniel Engberg : "Re: git: 0cea189105ef - main - databases/lmdb: add migration notice for 0.9.x -> 1.0.0 upgrade"
- In reply to: Koichiro Iwao : "Re: git: 0cea189105ef - main - databases/lmdb: add migration notice for 0.9.x -> 1.0.0 upgrade"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 09 Jul 2026 05:08:36 UTC
On Wed, Jul 8, 2026 at 9:31 PM Koichiro Iwao <meta@freebsd.org> wrote: > > On Thu, Jul 02, 2026 at 05:36:12PM +0000, Xin LI wrote: > > +20260702: > > + AFFECTS: users of databases/lmdb > > + AUTHOR: delphij@FreeBSD.org > > + > > + LMDB 1.0 introduced an incompatible on-disk file format change. > > + Versions 0.9.x and 1.0.x databases are mutually incompatible. > > + > > + Before upgrading, export all existing databases using the old v0.9 > > + mdb_dump utility, then import them with the new v1.0 mdb_load after > > + upgrading. There is no support for opening v0.9 database files > > + directly with LMDB 1.0. > > + > > + Example migration procedure: > > + # mdb_dump -a /path/to/db > /tmp/mydb.dump > > + # pkg upgrade databases/lmdb > > + # mdb_load -f /tmp/mydb.dump /path/to/newdb > > + > > I may be a bit late but nobody else has mentioned this, I don't believe > it is particularly useful. > > Rather than being used directly by end users, LMDB is used by other > ports as an internal dependency to store their data. > > Most users are unlikely to know how many LMDB database files exist on > their entire filesystem or where they are located. I would say requiring > end users to migrate files owned by numerous dependent ports is absurd. It's definitely an awkward move by the upstream author. I was interested in using LMDB somewhere but now it suffers the same myopia as BDB and other competitors. sqlite ends up being the right choice almost always because of games like this. > -- > meta <meta@FreeBSD.org> >