Why doesn Berkeley DB support auto_vacuum or incremental_vacuum?
Firstly, some terminology: in SQLite, “vacuum” is like an online dump/load: a new, empty database file is created, and all tables are copied into it. If successful, the newly created file is swapped with the old one. An “incremental vacuum” is closer to Berkeley DB’s DB->compact method, and moves data around within a file to make it more compact. The “auto_vacuum” mode causes incremental vacuum to run without the application explicitly requesting it. Support for all vacuum modes was omitted from the initial release of the Berkeley DB SQL Interface because of time constraints. We expect to add support for them in future releases, and provide sample code demonstrating how to run DB->compact on SQL databases in this release. As I understand it, the Berkeley DB SQL interface does not use DB->compact at all in this release. If someone wants to use it, they have to write a BDB application to join the environment and call DB->compact, right? It is not practical for a user to implement a separ