Split out mdb_midl_xmerge, add MDB_IDL_ALLOCLEN
Fix loose pages in mdb_freelist_save().

Leaving them in dirty_list caused breakage.  Instead merge them
into me_pghead at the end, when no more pages will be allocated.
Microoptimize loose pages
Partially revert ada26306992babeccad0c5443fbd76e28dd24cd6

Of course, MacOSX only has posix_memalign, and only in recent versions.
(Older versions could use valloc instead. That precludes ever changing
the LMDB pagesize to be different from the OS pagesize.) Not all that
crucial since it only affects mdb_env_copyfd1.
More for MIPS

Move CACHEFLUSH, avoid unnecessary if()
ITS#7913 cleanup

we already checked for data == NULL, drop unnecessary if
Use a single write txn
Remember oldest reader txnid

Don't walk the readers table unless we really need to.
More for me_pgoldest

Leave it in main env struct, it doesn't need to be rolled back
with nested txns.
Change retry to num times 60.  Testing shows that on a known dataset, this has the same growth behavior as 2.4.39, while num times 20 resulted in significant growth.
Release 0.9.14
Silence some clang warnings
Plug leak in 4d02c741b120786df1b87ee9ed49c1d3f9bc7522

Free writer txn on env_close
ITS#7943 reinit txn flags

When reusing the main write txn
new date
Android also only has memalign
Add MDB_ROBUST
Free write mutex earlier in txn_reset0
MDB_ROBUST: Use MDB_PID_T. Drop a wmutex variable.
Must do dlist_free before releasing Wmutex