https://bugs.openldap.org/show_bug.cgi?id=9735
--- Comment #5 from libor.peltan@nic.cz --- @4jtgrassie
This is a misunderstanding.
My proposed patch only performs an aggressive (slow) fuller search if the database can NOT grow, since it had already grown to its limit (mapsize).
Hence, it's really a trade-off between performance and functionality: with the patch, the database tries hard to find any available free space; without the patch (or with it deactivated by some env flag), it tries a little and than fails with MDB_MAP_FULL. Can this be desirable in some use-case?
When the database is not full and the environment has the possibility to grow, my patch does not change anything. The performance/size trade-off coefficient remains unchanged. (I believe it has been carefully chosen based on experience, and it's possible that some users might want to configure it differently, but I'd like to avoid this topic completely. It would be too arguable.)