RPM Community Forums

Mailing List Message of <rpm-devel>

Re: db4 vs. sqlite

From: Jeff Johnson <n3npq@mac.com>
Date: Sat 13 Oct 2007 - 16:52:57 CEST
Message-Id: <C5C535DA-524E-4A02-B816-B106C3FCFC28@mac.com>

On Oct 13, 2007, at 9:05 AM, Bernhard Rosenkraenzer wrote:

> Hi,
> we're just about to switch Ark Linux over to using rpm5 - so this  
> would be the
> right time for us to make other related changes.
>
> The first thing coming to mind is the rpm database format -- we've  
> been using
> db4 so far, has anyone compared db4 and sqlite to see if switching  
> to sqlite
> has any benefits/drawbacks (speed, db file size, ...)?
>

Here we go again again again ...

Read the archives.

Here are the reasons for adding sqlite to rpm:

1) Licensing -- The Sleepycat license permits use by rpm, but not  
necessarily
by distros that choose to include rpm.

2) Supporting asm locking on a myriad of embedded tool chains. Of course
fcntl locking with BDB would have solved exactly the same problem.

3) (my personal reason) An alternative choice that keeps me from  
having to
justify an exclusive BDB choice again and again and again.

Note that there used to be a
4) rpmdb on NFS section, but it sounds like sqlite has exactly the
same issues as BDB w fcntl locking on NFS without the alternative of  
using
sunrpc transport.

> Also, are there any known db backend specific bugs?
>

Define "bug". sqlite does not support concurrent access, is
2.6x slower (see --rebuilddb --stats output), has a schema
that is too primitive to change, and is incorrectly architected
if SQL were desired for use by rpm.

Are those bugs or not? Otherwise "works".

73 de Jeff
Received on Sat Oct 13 16:53:44 2007
Driven by Jeff Johnson and the RPM project team.
Hosted by OpenPKG and Ralf S. Engelschall.
Powered by FreeBSD and OpenPKG.