DbMpoolFile::put

API Ref

#include <db_cxx.h>

int DbMpoolFile::put(void *pgaddr, u_int32_t flags);


Description: DbMpoolFile::put

The DbMpoolFile::put method returns a page to the cache.

The DbMpoolFile::put 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.

Parameters

pgaddr
The pgaddr parameter is the address of the page to be returned to the cache. The pgaddr parameter must be an address previously returned by DbMpoolFile::get.

flags
The flags parameter must be set to 0 or by bitwise inclusively OR'ing together one or more of the following values:

DB_MPOOL_CLEAN
Clear any previously set modification information (that is, don't bother writing the page back to the source file).

DB_MPOOL_DIRTY
The page has been modified and must be written to the source file before being evicted from the pool.

DB_MPOOL_DISCARD
The page is unlikely to be useful in the near future, and should be discarded before other pages in the pool.

The DB_MPOOL_CLEAN and DB_MPOOL_DIRTY flags are mutually exclusive.

Errors

The DbMpoolFile::put method may fail and throw DbException, encapsulating one of the following non-zero errors, or return one of the following non-zero errors:

EACCES
The DB_MPOOL_DIRTY flag was set and the source file was not opened for writing.

EINVAL
If the pgaddr parameter does not refer to a page returned by DbMpoolFile::get; more than one of the DB_MPOOL_CLEAN and DB_MPOOL_DIRTY flags was set; or if an invalid flag value or parameter was specified.

Class

DbEnv, DbMpoolFile

See Also

Memory Pools and Related Methods

APIRef

Copyright (c) 1996-2003 Sleepycat Software, Inc. - All rights reserved.