Next: , Previous: Berkeley DB Example, Up: Installation


3.6 Upgrading Berkeley DB Databases

When there is a new release of Elephant, it will depend on a new version of Berkeley DB. If so, you must upgrade your BDB databases to use the new version Elephant. This forced upgrade is a consequence of Elephant not parsing the BDB header files which tend to change various important constants with each release. These patches are usually minor. Upgrading also happens because Elephant tries to leverage new features of Berkeley DB.

The rest of this section talks about how to upgrade your existing Berkeley DB databases, opening them in the new Elephant version and migrating them to a newly created Elephant database.

3.6.1 Upgrading to 0.9

This section outlines how to upgrade from Elephant version 0.6.0 and Berkeley DB 4.3.

  1. Install BDB 4.5 (keep 4.3 around for now)
  2. Setup my-config.sexp to point to the appropriate BDB 4.5 directories
  3. Upgrade your existing database directory to 4.5
  4. Upgrade 0.6 data to a fresh 0.9 database
  5. Test your new application and report any bugs that arise to elephant-devel@common-lisp.net

(NOTE: close-store may fail when closing the old 0.6 database, this is OK.)

(NOTE: 64-bit lisps will not successfully upgrade 32-bit 0.6 databases. Use a 32-bit version of your lisp to update to 0.9 and then open that database in your 64-bit lisp. There should be no compatibility problems. Best to test your application on a 32-bit lisp if you can, just to be sure.)

3.6.2 Upgrade from Elephant 0.5

Follow the upgrade procedures outlined in the Elephant 0.6.0 INSTALL file to upgrade your database from 0.5 to 0.6.0. Then follow the above procedures for upgrading to 0.9.

(NOTE: It may not take much work to make 0.9 upgrade directly from 0.5 However there are so few (none?) 0.5 users that it wasn't deemed worth the work given that there's an upgrade path available.)