|
|
DbMpoolFile::get |
#include <db_cxx.h>int DbMpoolFile::get(db_pgno_t *pgnoaddr, u_int32_t flags, void **pagep);
The DbMpoolFile::get method returns pages from the cache.
All pages returned by DbMpoolFile::get will be retained (that is, pinned), in the pool until a subsequent call to DbMpoolFile::put.
The returned page is size_t type aligned.
Fully or partially created pages have all their bytes set to a nul byte, unless the DbMpoolFile::set_clear_len method was called to specify other behavior before the file was opened.
The DbMpoolFile::get method will either return DB_PAGE_NOTFOUND or throw an exception that encapsulates DB_PAGE_NOTFOUND if the requested page does not exist and DB_MPOOL_CREATE was not set. Unless otherwise specified, the DbMpoolFile::get 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.
The DB_MPOOL_CREATE, DB_MPOOL_LAST, and DB_MPOOL_NEW flags are mutually exclusive.
Page numbers begin at 0; that is, the first page in the file is page number 0, not page number 1.
The DbMpoolFile::get method may fail and throw DbException, encapsulating one of the following non-zero errors, or return one of the following non-zero errors:
If the cache is full, and no more pages will fit in the pool, the DbMpoolFile::get method will fail and either return ENOMEM or throw a DbMemoryException.
Copyright (c) 1996-2005 Sleepycat Software, Inc. - All rights reserved.