Upgrading Berkeley DB XML Applications to 2.3

Upgrading 2.x-based Containers

The database format has changed in Berkeley DB XML release 2.3 and existing containers created in 2.x-based applications must be upgraded, and applications should be recompiled.

Upgrading 2.x-based Containers

It is possible to upgrade containers created with 2.0, 2.1, or 2.2. It is not possible to upgrade containers created with a 1.x release of BDB XML. Containers can be upgraded in one of two ways. Using the dbxml shell facility, or using the XmlManager::upgradeContainer() method. The shell program method is simpler.

Once the installation is built, these steps can be used to perform the upgrade:

  1. Important: Make a backup copy of your container.

  2. Assuming the dbxml program is in your PATH, type dbxml.

  3. dbxml> upgradeContainer <pathToContainer>

  4. dbxml> quit

The upgrade may take a few minutes, depending on the size of your container. You can check to see if the upgrade was successful by opening the container with the <i>openContainer</i> sub-command in dbxml.

Depending on the contents, node storage containers may bloat during an upgrade process, resulting in a noticeably larger container. If this is undesirable, it is possible to shrink the size by performing a dbxml_dump and dbxml_load combination on the container, while is it not being accessed by any other programs.