Re: git: 0cea189105ef - main - databases/lmdb: add migration notice for 0.9.x -> 1.0.0 upgrade

From: Kevin Bowling <kevin.bowling_at_kev009.com>
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>
>