DbEnv::memp_trickle

APIRef

#include <db_cxx.h>

int DbEnv::memp_trickle(int pct, int *nwrotep);

Description

The DbEnv::memp_trickle method ensures that at least pct percent of the pages in the shared memory pool are clean by writing dirty pages to their backing files. If the nwrotep argument is non-NULL, the number of pages that were written to reach the correct percentage is returned in the memory location it references.

The purpose of the DbEnv::memp_trickle function is to enable a memory pool manager to ensure that a page is always available for reading in new information without having to wait for a write.

The DbEnv::memp_trickle 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.

Errors

If a fatal error occurs in Berkeley DB, the DbEnv::memp_trickle method will fail and either return DB_RUNRECOVERY or throw an exception encapsulating DB_RUNRECOVERY, at which point all subsequent database calls will fail in the same way.

In addition, the DbEnv::memp_trickle method may fail and throw an exception or return a non-zero error for the following conditions:

EINVAL
An invalid flag value or parameter was specified.

In addition, the DbEnv::memp_trickle method may fail and throw an exception or return a non-zero error for errors specified for other Berkeley DB and C library or system methods.

Classes

DbEnv, DbMpoolFile

See Also

DbEnv::set_mp_mmapsize, DbMpoolFile::close, DbMpoolFile::get, DbMpoolFile::open, DbMpoolFile::put, DbMpoolFile::set, DbMpoolFile::sync, DbEnv::memp_register, DbEnv::memp_stat, DbEnv::memp_sync and DbEnv::memp_trickle.

APIRef

Copyright Sleepycat Software