Proposal: New keydb format

Guilhem Moulin guilhem at
Thu Oct 29 15:28:28 CET 2015

Hi Neal,

On Thu, 29 Oct 2015 at 11:52:46 +0100, Neal H. Walfield wrote:
> I'd be interested in any feedback as well as some more measurements of
> the performance in real conditions.  Note: the code is incomplete, but
> the essentials should work.

Thanks for working on this!  I'd like to see if this new format also
improves --list-sigs, which is very slow on a keybox, especially on 32
bits platforms (see issue1938).

Assuming an index on 64-bit key IDs, I expect a significant performance
boost when looking up the signer's key to display their primary UID.
Unfortunately I wasn't able to benchmark issue1938 with the new format
as the signers' primary UID is never printed (as if --fast-list-mode was
always set):

  ~$ ./g10/gpg2 --homedir /run/shm/gnupg-kdb --with-colons --list-sigs | \
     grep -E '^(sig|rev):' | \
     grep -vE '^(sig|rev):([^:]*:){8}\[User ID not found\]:'

Care to look into that?  I'd be happy to resume the benchmark later.

Also, probably due to the slow “full scan” you mentioned, note that
merely looking all sigs but avoiding nested lookups with
‘--fast-list-mode --list-sigs’ is much slower with kdb than with a

  ~$ time gpg --homedir /run/shm/gnupg-ring --fast-list-mode --list-sigs >/dev/null
  0:02.15 (2.14 user, 0.01 sys)  11012k maxres

  ~$ time gpg2 --homedir /run/shm/gnupg-kbx --fast-list-mode --list-sigs >/dev/null
  0:00.84 (0.82 user, 0.01 sys)  16536k maxres

  ~$ time ./g10/gpg2 --homedir /run/shm/gnupg-kdb --fast-list-mode --list-sigs >/dev/null
  0:06.30 (6.23 user, 0.06 sys)  19280k maxres

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: </pipermail/attachments/20151029/c91a8828/attachment.sig>

More information about the Gnupg-devel mailing list