On 1.2.2016 12:05, Florian Weimer wrote: > On 01/31/2016 04:17 PM, Jonathan Underwood wrote: >> On 29 Jan 2016 10:03 pm, "Richard W.M. Jones" <rjones@xxxxxxxxxx> wrote: >>> >>> >>> FWIW I found the new database backend (not mentioned anywhere in the >>> original submission). It is here: >>> >>> http://rpm.org/gitweb?p=rpm.git;a=tree;f=lib/backend/ndb >>> >>> Since this change has (rashly) been approved by FESCO, I guess we're >>> going to be copying this code into some libguestfs tools, and we'll >>> have to keep up with changes to RPM. It's a drag compared to using a >>> real key-value store. >>> >>> >> >> I wonder if the MDB (or LMDB) database from the openldap team was evaluated >> as a possible BDB replacement? > > LMDB seems a poor match because it requires the administrator to set a > maximum database size, its key length is limited compared to Berkeley DB > (which supports multi-megabyte keys). This means integrating it takes > more than just rewriting the API calls. > > Florian For the wider audience, some more information about LMDB backend for RPM can be found in: https://bugzilla.redhat.com/show_bug.cgi?id=1086784 In short: - Maximum database size is just "sanity limit" set by application. It can be hunderds of GB if you wish. - Working around key length really needs some work, yes. On the other hand, it is clearly possible because SQLite was ported to LMDB as proof-of-concept, and was actually faster than original implementation. See the README here: https://github.com/LMDB/sqlightning -- Petr Spacek @ Red Hat -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx http://lists.fedoraproject.org/admin/lists/devel@xxxxxxxxxxxxxxxxxxxxxxx