# DB->set_feedback

`

###

    #include <db.h>

    int
    DB->set_feedback(DB *,
        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 function 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 function. This function 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 function 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 function returns a non-zero error value on failure and 0 on success.

# See Also

db_create, 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