Wietse Venema:
> Wietse Venema:
> > A. Schulze:
> > > 
> > > Hello,
> > > 
> > > running postfix-3.4.7 on Debian 10 I found the following warning in my 
> > > logs:
> > > 
> > > postfix/tlsmgr[705]: warning:  
> > > lmdb:/var/lib/postfix/smtp_tls_session_cache is unavailable. open  
> > > database /var/lib/postfix/smtp_tls_session_cache.lmdb: MDB_MAP_FULL:  
> > > Environment mapsize limit reached
> 
> Here's an example of adding entries incrementally to an LMDB table,
> similar to what tlsmgr does as it adds entries to a TLS session
> cache:
> 
>     % touch /tmp/main.cf
>     % postconf -c /tmp lmdb_map_size=1000
>     % rm /tmp/size-test*
>     % sed 's/.*/& &/' /usr/share/dict/words | /usr/bin/time postmap -fic /tmp 
> lmdb:/tmp/size-test
>         216.47 real         3.50 user        13.21 sys
>     % ls -l /tmp/size-test*
>     -rw-r--r--  1 wietse  wheel  8257536 Jan  9 15:20 /tmp/size-test.lmdb
> 
> With "-i", when postmap runs into a 'map full' error, it increases
> the mapsize limit and tries to add the entry again. On my system
> with lmdb-0.9.11 that works perfectly, extending the table from
> ~1000 to 8257536.
> 
> If this test fails for you then that is an indication that
> LMDB has changed.

This test completes fine with LMDB 0.9.23 (built on Fedora 30).
Starting with a small LMDB size limit, "postmap -i" keeps raising
the limimt as it adds items to the LMDB table. This is the same
Postfix library code path that is used with adding items to the TLS
session cache, only the sizes of the items may differ.

I suspect that you run Postfix daemons with a low memmory limit.
Don't do that with memory-mapped databases.

        Wietse

Reply via email to