https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6971
--- Comment #5 from Mark Martinec <[email protected]> --- Btw, postfix mailer docs claim: The status of LMDB databases is "not recommended". postfix / HISTORY : 20130822 The status of LMDB databases is "not recommended". Unlike other Postfix databases, LMDB does not grow beyond a specified limit even when the file system has room. This show-stopper bug breaks applications whose requirements grow with load: postscreen(8), greylisting, tlsmgr(8) and verify(8). postfix / LMDB_README : Warning: LMDB databases have a show-stopper bug: they do not grow beyond a specified limit, and introduce a "database full" hard error condition that does not exist with any other Postfix database type. This is a problem for programs whose database grows with system load. Examples are postscreen(8), greylisting, verify(8) and tlsmgr(8). You have been warned. Postfix provides a configuration parameter that controls how large an OpenLDAP LMDB database may grow. * lmdb_map_size (default: 16 MBytes per table). This setting controls how large any OpenLDAP LMDB database may grow. It must be set large enough to accommodate the largest table that Postfix will use. Non-obvious recovery with postmap(1)/postalias(1)/tlsmgr(8) from a corrupted database. Problem: You cannot rebuild a corrupted LMDB database simply by running postmap(1) or postalias(1), or by waiting until the tlsmgr(8) daemon restarts automatically. This problem does not exist with other Postfix databases. Background: The Postfix LMDB database client does not truncate the database file. Instead it attempts to create a transaction for a "drop" request plus subsequent "store" requests. That is obviously not possible with a corrupted database file. Impact: Postfix does not process mail until someone fixes the problem. Recovery: First delete the ".lmdb" file by hand, then rebuild the file with the postmap(1) or postalias(1) command, or wait until the tlsmgr(8) daemon restarts automatically. Prevention: Arrange your file systems such that they never run out of free space. Use ECC memory to detect and correct silent corruption of in-memory file system data and metadata. Use a file system such as ZFS to detect and correct silent corruption of on-disk file system data and metadata. -- You are receiving this mail because: You are the assignee for the bug.
