diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-06 01:46:30 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-06 01:46:30 +0000 |
commit | b5896ba9f6047e7031e2bdee0622d543e11a6734 (patch) | |
tree | fd7b460593a2fee1be579bec5697e6d887ea3421 /html/lmdb_table.5.html | |
parent | Initial commit. (diff) | |
download | postfix-upstream.tar.xz postfix-upstream.zip |
Adding upstream version 3.4.23.upstream/3.4.23upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'html/lmdb_table.5.html')
-rw-r--r-- | html/lmdb_table.5.html | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/html/lmdb_table.5.html b/html/lmdb_table.5.html new file mode 100644 index 0000000..990eb7a --- /dev/null +++ b/html/lmdb_table.5.html @@ -0,0 +1,112 @@ +<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" + "http://www.w3.org/TR/html4/loose.dtd"> +<html> <head> +<meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> +<title> Postfix manual - lmdb_table(5) </title> +</head> <body> <pre> +LMDB_TABLE(5) LMDB_TABLE(5) + +<b>NAME</b> + lmdb_table - Postfix LMDB adapter + +<b>SYNOPSIS</b> + <b>postmap <a href="lmdb_table.5.html">lmdb</a>:/etc/postfix/</b><i>filename</i> + <b>postmap -i <a href="lmdb_table.5.html">lmdb</a>:/etc/postfix/</b><i>filename</i> <<i>inputfile</i> + + <b>postmap -d "</b><i>key</i><b>" <a href="lmdb_table.5.html">lmdb</a>:/etc/postfix/</b><i>filename</i> + <b>postmap -d - <a href="lmdb_table.5.html">lmdb</a>:/etc/postfix/</b><i>filename</i> <<i>inputfile</i> + + <b>postmap -q "</b><i>key</i><b>" <a href="lmdb_table.5.html">lmdb</a>:/etc/postfix/</b><i>filename</i> + <b>postmap -q - <a href="lmdb_table.5.html">lmdb</a>:/etc/postfix/</b><i>filename</i> <<i>inputfile</i> + +<b>DESCRIPTION</b> + The Postfix LMDB adapter provides access to a persistent, mem- + ory-mapped, key-value store. The database size is limited only by the + size of the memory address space (typically 31 or 47 bits on 32-bit or + 64-bit CPUs, respectively) and by the available file system space. + +<b>REQUESTS</b> + 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 table lookups may generate partial search keys such as domain + names without one or more subdomains, network addresses without one or + more least-significant octets, or email addresses without the local- + part, address extension or domain portion. This behavior is also found + with, for example, <a href="DATABASE_README.html#types">btree</a>:, <a href="DATABASE_README.html#types">hash</a>:, or <a href="ldap_table.5.html">ldap</a>: tables. + + Unlike other flat-file Postfix databases, changes to an LMDB database + do not trigger automatic daemon program restart, and do not require + "<b>postfix reload</b>". + +<b>RELIABILITY</b> + LMDB's copy-on-write architecture provides safe 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 memory-mapped to + avoid silent corruption due to stray pointer bugs. + + Multiple processes can safely update an LMDB database without serializ- + ing requests through the <a href="proxymap.8.html">proxymap(8)</a> service. This makes LMDB suitable + as a shared cache for <a href="verify.8.html">verify(8)</a> or <a href="postscreen.8.html">postscreen(8)</a> services. + +<b>SYNCHRONIZATION</b> + The Postfix LMDB adapter does not use LMDB's built-in locking scheme, + because that would require world-writable lockfiles and would violate + the Postfix security model. Instead, Postfix uses fcntl(2) locks with + whole-file granularity. Programs that use LMDB's built-in locking pro- + tocol will corrupt a Postfix LMDB database or will read garbage. + + Every Postfix LMDB database read or write transaction must be protected + from start to end with a shared or exclusive fcntl(2) lock. A writer + may atomically downgrade an exclusive lock to a shared lock, but it + must hold an exclusive lock while opening another write transaction. + + Note that fcntl(2) locks do not protect transactions within the same + process against each other. If a program cannot avoid making simulta- + neous database requests, then it must protect its transactions with + in-process locks, in addition to the per-process fcntl(2) locks. + +<b>CONFIGURATION PARAMETERS</b> + Short-lived programs automatically pick up changes to <a href="postconf.5.html">main.cf</a>. With + long-running daemon programs, Use the command "<b>postfix reload</b>" after a + configuration change. + + <b><a href="postconf.5.html#lmdb_map_size">lmdb_map_size</a> (default: 16777216)</b> + The initial LMDB database size limit in bytes. + +<b>SEE ALSO</b> + <a href="postconf.1.html">postconf(1)</a>, Postfix supported lookup tables + <a href="postmap.1.html">postmap(1)</a>, Postfix lookup table maintenance + <a href="postconf.5.html">postconf(5)</a>, configuration parameters + +<b>README FILES</b> + <a href="DATABASE_README.html">DATABASE_README</a>, Postfix lookup table overview + <a href="LMDB_README.html">LMDB_README</a>, Postfix OpenLDAP LMDB howto + +<b>LICENSE</b> + The Secure Mailer license must be distributed with this software. + +<b>HISTORY</b> + LMDB support was introduced with Postfix version 2.11. + +<b>AUTHOR(S)</b> + Howard Chu + Symas Corporation + + Wietse Venema + IBM T.J. Watson Research + P.O. Box 704 + Yorktown Heights, NY 10598, USA + + Wietse Venema + Google, Inc. + 111 8th Avenue + New York, NY 10011, USA + + LMDB_TABLE(5) +</pre> </body> </html> |