Re: berkeleydb version insanity
On Wed, Feb 12, 2003 at 04:05:56PM -0800, email@example.com wrote:
> Is there a reason we need to carry forward having 4 versions of
> BerkeleyDB in sid? Is BerkeleyDB 3 backwards-compatible enough that
> we can just change the Build-Depends line on the 90 packages that use
> libdb2 and let the autobuilders do their thing?
Oh boy. Welcome to the world of pain that is Berkeley DB.
We have the API changes (1.85, 2, 3.0, 3.1, 3.2, 3.3, 4.0, 4.1, ...)
Then there are the on-disc database format versions
Btree/Recno: version 8 to version 9
Hash: version 7 to version 8
Queue: version 3 to version 4
4.0 changed the on-disc log format
3.3 did not change any on-disc formats.
Queue: version 2 to version 3
Btree/Recno: version 7 to version 8
Hash: version 6 to version 7.
Btree/Recno: version 6 to version 7
Hash: version 5 to version 6.
(fwiw, Debian's db3 is db3.2. other distributions vary.)
So far, all versions of Berkeley DB support the 1.85 interface.
However none, that I'm aware of, support the previous version's interfaces.
There's some hope since db4.1's on-disc formats are backwards-compatible with
4.0's, and do not require upgrades.
There's no tool to _downgrade_ a db to an older version so going backwards
is kind of hard.
Changing what version of DB you use is a major pain.
> I'm in the middle of building an application that uses BerkeleyDB but
> I'd prefer to use a newer version, and I'd prefer to use
> libberkeley-db-perl under mod_perl ... but that's impossible, since
> Apache (and its whole dependency tree) are linked against libdb2.
Trust me, I don't like it any more than you do.
> It's clear that libdb3 is handy, since there are 315 packages that
> Depend: on it. Thank heavens libdb4 hasn't made it in yet (altho
> -utils has), or it'd be worse ...
both libdb4.0 and libdb4.1 are in sid.
"It's not Hollywood. War is real, war is primarily not about defeat or
victory, it is about death. I've seen thousands and thousands of dead bodies.
Do you think I want to have an academic debate on this subject?" -- Robert Fisk