# Db::set_feedback

`

###

    #include <db_cxx.h>

    int
    Db::set_feedback(
        void (*db_feedback_fcn)(DB *dbp, int opcode, int pct));

# Description

Some operations performed by the Berkeley DB library can take non-trivial amounts of time. The Db::set_feedback method can be used by applications to monitor progress within these operations.

When an operation is likely to take a long time, Berkeley DB will call the specified callback method. This method must be declared with three arguments: the first will be a reference to the enclosing database handle; the second a flag value; and the third the percent of the operation that has been completed, specified as an integer value between 0 and 100. It is up to the callback method to display this information in an appropriate manner.

The opcode argument may take on any of the following values:

DB_UPGRADE
  The underlying database is being upgraded.

DB_VERIFY
  The underlying database is being verified.

The Db::set_feedback interface may be used to configure Berkeley DB at any time during the life of the application.

The Db::set_feedback method either returns a non-zero error value or throws an exception that encapsulates a non-zero error value on failure, and returns 0 on success.

# Class

Db

# See Also

Db::associate, Db::close, Db::cursor, Db::del, Db::err, Db::errx Db::fd, Db::get, Db::pget, Db::get_byteswapped, Db::get_type, Db::join, Db::key_range, Db::open, Db::put, Db::remove, Db::rename, Db::set_alloc, Db::set_append_recno, Db::set_bt_compare, Db::set_bt_minkey, Db::set_bt_prefix, Db::set_cachesize, Db::set_dup_compare, Db::set_errcall, Db::set_errfile, Db::set_errpfx, Db::set_feedback, Db::set_flags, Db::set_h_ffactor, Db::set_h_hash, Db::set_h_nelem, Db::set_lorder, Db::set_pagesize, Db::set_paniccall, Db::set_q_extentsize, Db::set_re_delim, Db::set_re_len, Db::set_re_pad, Db::set_re_source, Db::stat, Db::sync, Db::truncate, Db::upgrade, and Db::verify.`

Copyright Sleepycat Software