# DB_ENV->memp_trickle

`

###

    #include <db.h>

    int
    DB_ENV->memp_trickle(DB_ENV *env, int pct, int *nwrotep);

# Description

The DB_ENV->memp_trickle function 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 to which it refers.

The purpose of the DB_ENV->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 DB_ENV->memp_trickle function returns a non-zero error value on failure and 0 on success.

# Errors

The DB_ENV->memp_trickle function may fail and return a non-zero error for the following conditions:

EINVAL
  An invalid flag value or parameter was specified.

The DB_ENV->memp_trickle function may fail and return a non-zero error for errors specified for other Berkeley DB and C library or system functions. If a catastrophic error has occurred, the DB_ENV->memp_trickle function may fail and return DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail in the same way.

# See Also

DB_ENV->set_cachesize, DB_ENV->set_mp_mmapsize, DB_ENV->memp_fcreate, DB_MPOOLFILE->close, DB_MPOOLFILE->get, DB_MPOOLFILE->open, DB_MPOOLFILE->put, DB_MPOOLFILE->set, DB_MPOOLFILE->sync, DB_ENV->memp_register, DB_MPOOLFILE->set_clear_len, DB_MPOOLFILE->set_fileid, DB_MPOOLFILE->set_ftype, DB_MPOOLFILE->set_lsn_offset, DB_MPOOLFILE->set_pgcookie, DB_ENV->memp_stat, DB_ENV->memp_sync, and DB_ENV->memp_trickle.`

Copyright Sleepycat Software