Howard Chu writes: > [email protected] wrote: >> I'd call this two doc bugs: >> >> Something should mention that once a page has been used, the file will >> never shrink below that page. (Can't quite say that the file never >> shrinks, since WRITEMAP and Windows will set it to exact re-configurable >> mapsize in some cases. If I remember correctly.) > > You cannot shrink the mapsize below that last used page, and the last used > page is a non-decreasing number.
Yes. Duh, that's already roughly stated under mdb_env_set_mapsize(). >> mdb_env_copy() and mdb_env_copyfd() should document that >> >> @node This call can trigger siginficant file size growth if run in >> parallel with write transactions, because it employs a read-only >> transaction. See long-lived transactions under Caveats. I'll add this one though. >> I wonder that means these functions should have a flag parameter. >> For some databases, users might prefer a _write_ transaction while >> reading the DB, blocking writes while copying. > > No one has ever wanted a hot-backup function that halts writes. You > might as well not do a hot-backup at all. Yes, nevermind about a mdb_env_copy() flag. An mdb_txn_begin timeout would make it a viable choice - but if that is implemented someday, those two behaviors together could go in an MDB_env flag. -- Hallvard
