LMDB_TABLE(5)                                                    LMDB_TABLE(5)

NAME
       lmdb_table - Postfix LMDB adapter

SYNOPSIS
       postmap lmdb:/etc/postfix/filename
       postmap -i lmdb:/etc/postfix/filename <inputfile

       postmap -d "key" lmdb:/etc/postfix/filename
       postmap -d - lmdb:/etc/postfix/filename <inputfile

       postmap -q "key" lmdb:/etc/postfix/filename
       postmap -q - lmdb:/etc/postfix/filename <inputfile

DESCRIPTION
       The  Postfix  LMDB  adapter  provides  access  to a persistent, memory-
       mapped, key-value store.  The database size is limited only by the size
       of the memory address space (typically 32 or 64 bits) and by the avail-
       able file system space.

REQUESTS
       The LMDB adapter supports all Postfix lookup  table  operations.   This
       makes  LMDB  suitable  for  Postfix  address rewriting, routing, access
       policies, caches, or any information that can be stored under  a  fixed
       lookup key.

       When  a  transaction  fails due to a full database, Postfix resizes the
       database and retries the transaction.

       Postfix access, address mapping and routing table lookups may  generate
       partial  search  keys  such  as domain names without one or more subdo-
       mains, network addresses without one or more least-significant  octets,
       or  email  addresses without the localpart, address extension or domain
       portion.  This behavior is also found  with  btree:,  hash:,  or  ldap:
       tables.

       Unlike  other  flat-file  based  Postfix  databases, changes to an LMDB
       database do not trigger automatic daemon program restart.

RELIABILITY
       LMDB's copy-on-write architecture achieves  reliable  updates,  at  the
       cost  of  using  more  space than some other flat-file databases.  Read
       operations are memory-mapped for speed.  Write operations are not  mem-
       ory-mapped to avoid silent curruption due stray pointer bugs.

       The  Postfix  LMDB  adapter  implements  locking with fcntl(2) locks at
       whole-file granularity. LMDB's  native  locking  scheme  would  require
       world-writable  lockfiles and would therefore violate the Postfix secu-
       rity model.

       Multiple processes can safely update an LMDB database without serializ-
       ing requests through the proxymap(8) service.  This makes LMDB suitable
       as a shared cache for verify(8) or postscreen(8) services.

CONFIGURATION PARAMETERS
       Short-lived programs automatically pick up changes  to  main.cf.   With
       long-running  daemon programs, Use the command "postfix reload" after a
       configuration change.

       lmdb_map_size (default: 16777216)
              The initial LMDB database size limit in bytes.

SEE ALSO
       postconf(1), Postfix supported lookup tables
       postmap(1), Postfix lookup table maintenance
       postconf(5), configuration parameters

README FILES
       DATABASE_README, Postfix lookup table overview
       LMDB_README, Postfix OpenLDAP LMDB howto

LICENSE
       The Secure Mailer license must be distributed with this software.

HISTORY
       LMDB support was introduced with Postfix version 2.11.

AUTHOR(S)
       Howard Chu
       Symas Corporation

       Wietse Venema
       IBM T.J. Watson Research
       P.O. Box 704
       Yorktown Heights, NY 10598, USA

                                                                 LMDB_TABLE(5)