Db.upgrade

APIRef

import com.sleepycat.db.*;

public void open(String name, int flags) throws DbException;

Description

The Db.upgrade method upgrades the database represented by name, if necessary. If no upgrade is necessary, Db.upgrade returns successfully.

The flags parameter is currently unused, and must be set to 0.

Note: Database upgrades are done in place and are destructive, e.g., if pages need to be allocated and no disk space is available, the database may be left corrupted. Backups should be made before databases are upgraded. See Upgrading databases for more information.

The Db.upgrade method throws an exception that encapsulates a non-zero error value on failure.

Environment Variables

DB_HOME
If the dbenv argument to db_create was initialized using DbEnv.open the environment variable DB_HOME may be used as the path of the database home for the interpretation of the dir. Specifically, Db.upgrade is affected by the configuration string value of DB_DATA_DIR.

Errors

If a fatal error occurs in Berkeley DB, the Db.upgrade method will fail and throw a DbRunRecoveryException, at which point all subsequent database calls will fail in the same way.

In addition, the Db.upgrade method may fail and throw an exception encapsulating a non-zero error for the following conditions:

DB_OLD_VERSION
The database cannot be upgraded by this version of the Berkeley DB software.

In addition, the Db.upgrade method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods.

Class

Db

See Also

Db.close, Db.cursor, Db.del, Db.fd, Db.get, Db.get_byteswapped, Db.get_type, Db.join, Db.open, Db.put, Db.remove, Db.set_bt_minkey, Db.set_cachesize, Db.set_errcall, Db.set_errpfx, Db.set_flags, Db.set_h_ffactor, Db.set_h_nelem, Db.set_lorder, Db.set_pagesize, Db.set_re_delim, Db.set_re_len, Db.set_re_pad, Db.set_re_source, Db.stat, Db.sync and Db.upgrade.

APIRef

Copyright Sleepycat Software