Commit f5ed8784 authored by monty@hundin.mysql.fi's avatar monty@hundin.mysql.fi

merge with 3.23.51

parents 4ca4f478 f0928187
......@@ -38,9 +38,11 @@ COPYING.LIB
Docs/#manual.texi#
Docs/INSTALL-BINARY
Docs/include.texi
Docs/internals.info
Docs/manual.aux
Docs/manual.cp
Docs/manual.cps
Docs/manual.de.log
Docs/manual.dvi
Docs/manual.fn
Docs/manual.fns
......@@ -58,6 +60,8 @@ Docs/manual_letter.ps
Docs/manual_toc.html
Docs/my_sys.doc
Docs/mysql.info
Docs/mysql.xml
Docs/safe-mysql.xml
Docs/tex.fmt
Docs/texi2dvi.out
INSTALL-SOURCE
......@@ -327,6 +331,8 @@ linked_libmysqldex_sources
linked_server_sources
linked_tools_sources
locked
mit-pthreads/config.flags
mit-pthreads/syscall.S
myisam/FT1.MYD
myisam/FT1.MYI
myisam/ft_dump
......@@ -341,10 +347,14 @@ myisam/myisamlog
myisam/myisampack
myisam/test1.MYD
myisam/test1.MYI
mysql-4.0.2-alpha-pc-linux-gnu-i686.tar.gz
mysql-4.0.2-alpha.tar.gz
mysql-max-4.0.2-alpha-pc-linux-gnu-i686.tar.gz
mysql-test/gmon.out
mysql-test/install_test_db
mysql-test/mysql-test-run
mysql-test/r/*.reject
mysql-test/r/rpl000001.eval
mysql-test/r/rpl000002.eval
mysql-test/r/rpl000014.eval
mysql-test/r/rpl000015.eval
......@@ -364,6 +374,7 @@ mysys/test_dir
mysys/test_io_cache
mysys/test_thr_alarm
mysys/test_thr_lock
mysys/test_vsnprintf
mysys/testhash
regex/re
repl-tests/test-repl-ts/repl-timestamp.master.reject
......@@ -458,12 +469,3 @@ vio/test-ssl
vio/test-sslclient
vio/test-sslserver
vio/viotest-ssl
Docs/mysql.xml
mysql-test/r/rpl000001.eval
Docs/safe-mysql.xml
mysys/test_vsnprintf
Docs/manual.de.log
Docs/internals.info
mysql-4.0.2-alpha-pc-linux-gnu-i686.tar.gz
mysql-4.0.2-alpha.tar.gz
mysql-max-4.0.2-alpha-pc-linux-gnu-i686.tar.gz
......@@ -31,11 +31,13 @@ monty@donna.mysql.fi
monty@hundin.mysql.fi
monty@narttu.
monty@narttu.mysql.fi
monty@tik.
monty@tik.mysql.fi
monty@tramp.mysql.fi
monty@work.mysql.com
mwagner@cash.mwagner.org
mwagner@evoq.mwagner.org
nick@nick.leippe.com
paul@central.snake.net
paul@teton.kitebird.com
root@x3.internalnet
......
......@@ -159,10 +159,14 @@ cat > $logdir/$TMP_SCRIPT_MYSQL <<END
set -x
# Check environment
export MYSQL_BUILD_PATH="/usr/local/bin:/my/gnu/bin:/usr/bin:/bin"
export MYSQL_BUILD_CFLAGS="-O6 -fno-omit-frame-pointer -mcpu=pentiumpro"
#export MYSQL_BUILD_PATH="/usr/local/bin:/my/gnu/bin:/usr/bin:/bin"
#export MYSQL_BUILD_CFLAGS="-O6 -fno-omit-frame-pointer -mcpu=pentiumpro"
#export MYSQL_BUILD_CXXFLAGS="-O6 -fno-omit-frame-pointer \
# -felide-constructors -fno-exceptions -fno-rtti -mcpu=pentiumpro"
export MYSQL_BUILD_PATH="/usr/bin:/bin"
export MYSQL_BUILD_CFLAGS="-O6 -fno-omit-frame-pointer -mpentium"
export MYSQL_BUILD_CXXFLAGS="-O6 -fno-omit-frame-pointer \
-felide-constructors -fno-exceptions -fno-rtti -mcpu=pentiumpro"
-felide-constructors -fno-exceptions -fno-rtti -mpentium"
gcc -v
# Make RPM
......
......@@ -19482,18 +19482,18 @@ have.
@item @code{Open_streams} @tab Number of streams that are open (used mainly for logging).
@item @code{Opened_tables} @tab Number of tables that have been opened.
@item @code{Rpl_status} @tab Status of failsafe replication. (Not yet in use).
@item @code{Select_full_join} @tab Number of joins without keys (Should be 0).
@item @code{Select_full_join} @tab Number of joins without keys (If this is 0, you should carefully check the index of your tables).
@item @code{Select_full_range_join} @tab Number of joins where we used a range search on reference table.
@item @code{Select_range} @tab Number of joins where we used ranges on the first table. (It's normally not critical even if this is big.)
@item @code{Select_scan} @tab Number of joins where we scanned the first table.
@item @code{Select_range_check} @tab Number of joins without keys where we check for key usage after each row (Should be 0).
@item @code{Select_scan} @tab Number of joins where we did a full scann of the first table.
@item @code{Select_range_check} @tab Number of joins without keys where we check for key usage after each row (If this is 0, you should carefully check the index of your tables).
@item @code{Questions} @tab Number of queries sent to the server.
@item @code{Slave_open_temp_tables} @tab Number of temporary tables currently
open by the slave thread
@item @code{Slave_running} @tab Is @code{ON} if this is a slave that is connected to a master.
@item @code{Slow_launch_threads} @tab Number of threads that have taken more than @code{slow_launch_time} to connect.
@item @code{Slow_launch_threads} @tab Number of threads that have taken more than @code{slow_launch_time} to create.
@item @code{Slow_queries} @tab Number of queries that have taken more than @code{long_query_time}. @xref{Slow query log}.
@item @code{Sort_merge_passes} @tab Number of merges the sort has to do. If this value is large you should consider increasing @code{sort_buffer}.
@item @code{Sort_merge_passes} @tab Number of merges passes the sort algoritm have had to do. If this value is large you should consider increasing @code{sort_buffer}.
@item @code{Sort_range} @tab Number of sorts that where done with ranges.
@item @code{Sort_rows} @tab Number of sorted rows.
@item @code{Sort_scan} @tab Number of sorts that where done by scanning the table.
......@@ -19518,8 +19518,8 @@ Some comments about the above:
If @code{Opened_tables} is big, then your @code{table_cache}
variable is probably too small.
@item
If @code{Key_reads} is big, then your @code{key_cache} is probably too
small. The cache hit rate can be calculated with
If @code{Key_reads} is big, then your @code{key_buffer_size} variable is
probably too small. The cache hit rate can be calculated with
@code{Key_reads}/@code{Key_read_requests}.
@item
If @code{Handler_read_rnd} is big, then you probably have a lot of
......@@ -49838,8 +49838,43 @@ not yet 100% confident in this code.
@node News-3.23.51, News-3.23.50, News-3.23.x, News-3.23.x
@appendixsubsec Changes in release 3.23.51
@itemize @bullet
Fixed the result from @code{IF()} to be case-insensitive if the second and
third arguments are case-sensitive.
@item
Changed name of variables @code{Com_show_master_stat} to
@code{Com_show_master_status} and @code{Com_show_slave_stat} to
@code{Com_show_slave_status}.
@item
Changed handling of @code{gethostbyname()} to make the client library
threadsafe even if @code{gethostbyname_r} doesn't exists.
@item
Fixed core-dump problem when giving a wrong password string to @code{GRANT}.
@item
Fixed bug in @code{DROP DATABASE} with symlinked directory.
@item
Fixed optimization problem with @code{DATETIME} and value outside
@code{DATETIME} range.
@item
Removed BDB documentation.
@item
Fixed mit-pthreads to compile with glibc 2.2 (needed for @code{make dist}).
@item
Fixed the @code{FLOAT(X+1,X)} is not converted to @code{FLOAT(X+2,X)}.
(This also affected @code{DECIMAL}, @code{DOUBLE} and @code{REAL} types)
@item
Fixed the result from @code{IF()} is case in-sensitive if the 2 and
third arguments are case sensitive.
@item
Fixed core dump problem on OSF in @code{gethostbyname_r}.
@item
Fixed that underflowed decimal fields is not zero filled.
@item
If we get an overflow when inserting @code{'+11111'} for
@code{decimal(5,0) unsigned} columns, we will just drop the sign.
@item
Fixed optimization bug with @code{ISNULL(expression_which_cannot_be_null)} and
@code{ISNULL(constant_expression)}.
@item
Fixed host lookup bug in the glibc library that we used with the 3.23.50
Linux-x86 binaries.
@end itemize
@node News-3.23.50, News-3.23.49, News-3.23.51, News-3.23.x
......@@ -26,7 +26,7 @@ bdb_build = build_unix
files = LICENSE Makefile Makefile.in README
subdirs = btree build_vxworks build_win32 clib common cxx db db185 \
db_archive db_checkpoint db_deadlock db_dump db_dump185 db_load \
db_printlog db_recover db_stat db_upgrade db_verify dbm dist docs \
db_printlog db_recover db_stat db_upgrade db_verify dbm dist \
env examples_c examples_cxx hash hsearch include java libdb_java \
lock log mp mutex os os_vxworks os_win32 perl.BerkeleyDB \
perl.DB_File qam rpc_client rpc_server tcl test txn xa
......
This diff is collapsed.
This diff is collapsed.
<!--$Id: db_close.so,v 10.27 2000/09/08 15:20:28 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;close</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;close</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;close(DB *db, u_int32_t flags);
</pre></h3>
<h1>Description</h1>
<p>The DB-&gt;close function flushes any cached database information to disk,
closes any open cursors, frees any allocated resources, and closes any
underlying files. Since key/data pairs are cached in memory, failing to
sync the file with the DB-&gt;close or <a href="../api_c/db_sync.html">DB-&gt;sync</a> function may result
in inconsistent or lost information.
<p>The <b>flags</b> parameter must be set to 0 or the following value:
<p><dl compact>
<p><dt><a name="DB_NOSYNC">DB_NOSYNC</a><dd>Do not flush cached information to disk.
<p>The <a href="../api_c/db_close.html#DB_NOSYNC">DB_NOSYNC</a> flag is a dangerous option. It should only be set
if the application is doing logging (with transactions) so that the
database is recoverable after a system or application crash, or if the
database is always generated from scratch after any system or application
crash.
<p><b>It is important to understand that flushing cached information to disk
only minimizes the window of opportunity for corrupted data.</b>
While unlikely, it is possible for database corruption to happen if a
system or application crash occurs while writing data to the database.
To ensure that database corruption never occurs, applications must either:
use transactions and logging with automatic recovery, use logging and
application-specific recovery, or edit a copy of the database,
and, once all applications using the database have successfully called
DB-&gt;close, atomically replace the original database with the
updated copy.
</dl>
<p>When multiple threads are using the Berkeley DB handle concurrently, only a single
thread may call the DB-&gt;close function.
<p>Once DB-&gt;close has been called, regardless of its return, the
DB handle may not be accessed again.
<a name="3"><!--meow--></a>
<p>The DB-&gt;close function returns a non-zero error value on failure, 0 on success, and returns <a href="../api_c/memp_fsync.html#DB_INCOMPLETE">DB_INCOMPLETE</a> if the underlying database still has
dirty pages in the cache. (The only reason to return
<a href="../api_c/memp_fsync.html#DB_INCOMPLETE">DB_INCOMPLETE</a> is if another thread of control was writing pages
in the underlying database file at the same time as the
DB-&gt;close function was called. For this reason, a return of
<a href="../api_c/memp_fsync.html#DB_INCOMPLETE">DB_INCOMPLETE</a> can normally be ignored, or, in cases where it is
a possible return value, the <a href="../api_c/db_close.html#DB_NOSYNC">DB_NOSYNC</a> option should probably
have been specified.)
<p>The DB-&gt;close function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p>The DB-&gt;close 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-&gt;close function may fail and return
<a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a>, in which case all subsequent Berkeley DB calls will fail
in the same way.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_create.so,v 10.12 2000/10/25 18:51:08 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: db_create</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>db_create</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
db_create(DB **dbp, DB_ENV *dbenv, u_int32_t flags);
</pre></h3>
<h1>Description</h1>
<p>The db_create function creates a DB structure which is the
handle for a Berkeley DB database. A pointer to this structure is returned
in the memory referenced by <b>db</b>.
<p>If the <b>dbenv</b> argument is NULL, the database is standalone, i.e.,
it is not part of any Berkeley DB environment.
<p>If the <b>dbenv</b> argument is not NULL, the database is created within
the specified Berkeley DB environment. The database access methods
automatically make calls to the other subsystems in Berkeley DB based on the
enclosing environment. For example, if the environment has been
configured to use locking, then the access methods will automatically
acquire the correct locks when reading and writing pages of the database.
<p>The <b>flags</b> parameter must be set to 0 or one of the following
values:
<p><dl compact>
<p><dt><a name="DB_XA_CREATE">DB_XA_CREATE</a><dd>Instead of creating a standalone database, create a database intended to
be accessed via applications running under a X/Open conformant Transaction
Manager. The database will be opened in the environment specified by the
OPENINFO parameter of the GROUPS section of the ubbconfig file. See the
<a href="../ref/xa/intro.html">XA Resource Manager</a> chapter in the
Reference Guide for more information.
</dl>
<p>The DB handle contains a special field, "app_private", which
is declared as type "void *". This field is provided for the use of
the application program. It is initialized to NULL and is not further
used by Berkeley DB in any way.
<p>The db_create function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p>The db_create 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_create function may fail and return
<a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a>, in which case all subsequent Berkeley DB calls will fail
in the same way.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_cursor.so,v 10.25 2000/07/11 19:11:25 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;cursor</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;cursor</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;cursor(DB *db,
DB_TXN *txnid, DBC **cursorp, u_int32_t flags);
</pre></h3>
<h1>Description</h1>
<p>The DB-&gt;cursor function
creates a cursor and copies a pointer to it into the memory referenced
by <b>cursorp</b>.
<p>If the file is being accessed under transaction protection, the
<b>txnid</b> parameter is a transaction ID returned from
<a href="../api_c/txn_begin.html">txn_begin</a>, otherwise, NULL.
<p>If transaction protection is enabled, cursors must be opened and closed
within the context of a transaction, and the <b>txnid</b> parameter
specifies the transaction context in which the cursor may be used.
<p>The <b>flags</b> value must be set to 0 or by bitwise inclusively <b>OR</b>'ing together one or more
of the following values.
<p><dl compact>
<p><dt><a name="DB_WRITECURSOR">DB_WRITECURSOR</a><dd>Specify that the cursor will be used to update the database. This
flag should <b>only</b> be set when the <a href="../api_c/env_open.html#DB_INIT_CDB">DB_INIT_CDB</a> flag
was specified to <a href="../api_c/env_open.html">DBENV-&gt;open</a>.
</dl>
<p>The DB-&gt;cursor function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p>The DB-&gt;cursor function may fail and return a non-zero error for the following conditions:
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
</dl>
<p>The DB-&gt;cursor 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-&gt;cursor function may fail and return
<a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a>, in which case all subsequent Berkeley DB calls will fail
in the same way.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_del.so,v 10.23 2000/09/05 19:35:10 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;del</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;del</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;del(DB *db, DB_TXN *txnid, DBT *key, u_int32_t flags);
</pre></h3>
<h1>Description</h1>
<p>The DB-&gt;del function removes key/data pairs from the database. The
key/data pair associated with the specified <b>key</b> is discarded from
the database. In the presence of duplicate key values, all records
associated with the designated key will be discarded.
<p>If the file is being accessed under transaction protection, the
<b>txnid</b> parameter is a transaction ID returned from
<a href="../api_c/txn_begin.html">txn_begin</a>, otherwise, NULL.
<p>The <b>flags</b> parameter is currently unused, and must be set to 0.
<p>The DB-&gt;del function returns a non-zero error value on failure, 0 on success, and <a href="../ref/program/errorret.html#DB_NOTFOUND">DB_NOTFOUND</a> if the specified <b>key</b> did not exist in
the file.
<h1>Errors</h1>
<p>The DB-&gt;del function may fail and return a non-zero error for the following conditions:
<p><dl compact>
<p><dt>DB_LOCK_DEADLOCK<dd>The operation was selected to resolve a deadlock.
</dl>
<p><dl compact>
<p><dt>EACCES<dd>An attempt was made to modify a read-only database.
</dl>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
</dl>
<p>The DB-&gt;del 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-&gt;del function may fail and return
<a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a>, in which case all subsequent Berkeley DB calls will fail
in the same way.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_err.so,v 10.11 1999/12/20 08:52:27 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DBENV-&gt;err</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DBENV-&gt;err</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
void
DBENV-&gt;err(DB_ENV *dbenv, int error, const char *fmt, ...);
<p>
void
DBENV-&gt;errx(DB_ENV *dbenv, const char *fmt, ...);
<p>
void
DB-&gt;err(DB *db, int error, const char *fmt, ...);
<p>
void
DB-&gt;errx(DB *db, const char *fmt, ...);
</pre></h3>
<h1>Description</h1>
<p>The DBENV-&gt;err, DBENV-&gt;errx, DB-&gt;err and
DB-&gt;errx functions provide error messaging functionality for
applications written using the Berkeley DB library.
<p>The DBENV-&gt;err function constructs an error message consisting of the
following elements:
<p><blockquote><p><dl compact>
<p><dt>An optional prefix string<dd>If no error callback function has been set using the
<a href="../api_c/env_set_errcall.html">DBENV-&gt;set_errcall</a> function, any prefix string specified using the
<a href="../api_c/env_set_errpfx.html">DBENV-&gt;set_errpfx</a> function, followed by two separating characters: a colon
and a &lt;space&gt; character.
<p><dt>An optional printf-style message<dd>The supplied message <b>fmt</b>, if non-NULL, where the ANSI C X3.159-1989 (ANSI C)
printf function specifies how subsequent arguments are converted for
output.
<p><dt>A separator<dd>Two separating characters: a colon and a &lt;space&gt; character.
<p><dt>A standard error string<dd>The standard system or Berkeley DB library error string associated with the
<b>error</b> value, as returned by the <a href="../api_c/env_strerror.html">db_strerror</a> function.
</dl>
</blockquote>
<p>This constructed error message is then handled as follows:
<p><blockquote>
<p>If an error callback function has been set (see <a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>
and <a href="../api_c/env_set_errcall.html">DBENV-&gt;set_errcall</a>), that function is called with two
arguments: any prefix string specified (see <a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a> and
<a href="../api_c/env_set_errpfx.html">DBENV-&gt;set_errpfx</a>), and the error message.
<p>If a C library FILE * has been set (see <a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a> and
<a href="../api_c/env_set_errfile.html">DBENV-&gt;set_errfile</a>), the error message is written to that output
stream.
<p>If none of these output options has been configured, the error message
is written to stderr, the standard error output stream.</blockquote>
<p>The DBENV-&gt;errx and DB-&gt;errx functions perform identically to the
DBENV-&gt;err and DB-&gt;err functions except that they do not append
the final separator characters and standard error string to the error
message.
<h1>See Also</h1>
<a href="../api_c/env_close.html">DBENV-&gt;close</a>,
<a href="../api_c/env_create.html">db_env_create</a>,
<a href="../api_c/env_open.html">DBENV-&gt;open</a>,
<a href="../api_c/env_remove.html">DBENV-&gt;remove</a>,
<a href="../api_c/db_err.html">DBENV-&gt;err</a>,
<a href="../api_c/env_strerror.html">db_strerror</a>,
<a href="../api_c/env_version.html">db_version</a>,
<a href="../api_c/env_set_cachesize.html">DBENV-&gt;set_cachesize</a>,
<a href="../api_c/env_set_errcall.html">DBENV-&gt;set_errcall</a>,
<a href="../api_c/env_set_errfile.html">DBENV-&gt;set_errfile</a>,
<a href="../api_c/env_set_errpfx.html">DBENV-&gt;set_errpfx</a>,
<a href="../api_c/env_set_flags.html">DBENV-&gt;set_flags</a>,
<a href="../api_c/env_set_mutexlocks.html">DBENV-&gt;set_mutexlocks</a>,
<a href="../api_c/env_set_paniccall.html">DBENV-&gt;set_paniccall</a>,
and
<a href="../api_c/env_set_verbose.html">DBENV-&gt;set_verbose</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_fd.so,v 10.21 2000/03/01 21:41:28 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;fd</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;fd</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;fd(DB *db, int *fdp);
</pre></h3>
<h1>Description</h1>
<p>The DB-&gt;fd function
copies a file descriptor representative of the underlying database into
the memory referenced by <b>fdp</b>. A file descriptor referencing the
same file will be returned to all processes that call <a href="../api_c/db_open.html">DB-&gt;open</a> with
the same <b>file</b> argument. This file descriptor may be safely used
as an argument to the <b>fcntl</b>(2) and <b>flock</b>(2) locking
functions. The file descriptor is not necessarily associated with any of
the underlying files actually used by the access method.
<p>The DB-&gt;fd function only supports a coarse-grained form of locking.
Applications should use the lock manager where possible.
<p>The DB-&gt;fd function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p>The DB-&gt;fd 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-&gt;fd function may fail and return
<a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a>, in which case all subsequent Berkeley DB calls will fail
in the same way.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_get.so,v 10.31 2000/11/28 20:12:30 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;get</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;get</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;get(DB *db,
DB_TXN *txnid, DBT *key, DBT *data, u_int32_t flags);
</pre></h3>
<h1>Description</h1>
<p>The DB-&gt;get function retrieves key/data pairs from the database. The
address
and length of the data associated with the specified <b>key</b> are
returned in the structure referenced by <b>data</b>.
<p>In the presence of duplicate key values, DB-&gt;get will return the
first data item for the designated key. Duplicates are sorted by insert
order except where this order has been overridden by cursor operations.
<b>Retrieval of duplicates requires the use of cursor operations.</b>
See <a href="../api_c/dbc_get.html">DBcursor-&gt;c_get</a> for details.
<p>If the file is being accessed under transaction protection, the
<b>txnid</b> parameter is a transaction ID returned from
<a href="../api_c/txn_begin.html">txn_begin</a>, otherwise, NULL.
<p>The <b>flags</b> parameter must be set to 0 or one of the following
values:
<p><dl compact>
<p><dt><a name="DB_CONSUME">DB_CONSUME</a><dd>Return the record number and data from the available record closest to
the head of the queue and delete the record. The cursor will be
positioned on the deleted record. The record number will be returned
in <b>key</b> as described in <a href="../api_c/dbt.html">DBT</a>. The data will be returned
in the <b>data</b> parameter. A record is available if it is not
deleted and is not currently locked. The underlying database must be
of type Queue for DB_CONSUME to be specified.
<p><dt><a name="DB_CONSUME_WAIT">DB_CONSUME_WAIT</a><dd>The DB_CONSUME_WAIT flag is the same as the DB_CONSUME
flag except that if the Queue database is empty, the thread of control
will wait until there is data in the queue before returning. The
underlying database must be of type Queue for DB_CONSUME_WAIT
to be specified.
<p><dt><a name="DB_GET_BOTH">DB_GET_BOTH</a><dd>Retrieve the key/data pair only if both the key and data match the
arguments.
<p><dt><a name="DB_SET_RECNO">DB_SET_RECNO</a><dd>Retrieve the specified numbered key/data pair from a database.
Upon return, both the <b>key</b> and <b>data</b> items will have been
filled in, not just the data item as is done for all other uses of the
DB-&gt;get function.
<p>The <b>data</b> field of the specified <b>key</b>
must be a pointer to a logical record number (i.e., a <b>db_recno_t</b>).
This record number determines the record to be retrieved.
<p>For DB_SET_RECNO to be specified, the underlying database must be
of type Btree and it must have been created with the DB_RECNUM flag.
</dl>
<p>In addition, the following flag may be set by bitwise inclusively <b>OR</b>'ing it into the
<b>flags</b> parameter:
<p><dl compact>
<p><dt><a name="DB_RMW">DB_RMW</a><dd>Acquire write locks instead of read locks when doing the retrieval.
Setting this flag may decrease the likelihood of deadlock during a
read-modify-write cycle by immediately acquiring the write lock during
the read part of the cycle so that another thread of control acquiring
a read lock for the same item, in its own read-modify-write cycle, will
not result in deadlock.
<p>As the DB-&gt;get interface will not hold locks across
Berkeley DB interface calls in non-transactional environments, the
<a href="../api_c/dbc_get.html#DB_RMW">DB_RMW</a> flag to the DB-&gt;get call is only meaningful in
the presence of transactions.
</dl>
<p>If the database is a Queue or Recno database and the requested key exists,
but was never explicitly created by the application or was later deleted,
the DB-&gt;get function returns <a href="../ref/program/errorret.html#DB_KEYEMPTY">DB_KEYEMPTY</a>.
<p>Otherwise, if the requested key is not in the database, the
DB-&gt;get function returns <a href="../ref/program/errorret.html#DB_NOTFOUND">DB_NOTFOUND</a>.
<p>Otherwise, the DB-&gt;get function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p>The DB-&gt;get function may fail and return a non-zero error for the following conditions:
<p><dl compact>
<p><dt>DB_LOCK_DEADLOCK<dd>The operation was selected to resolve a deadlock.
</dl>
<p><dl compact>
<p><dt>ENOMEM<dd>There was insufficient memory to return the requested item.
</dl>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>A record number of 0 was specified.
<p>The <a href="../api_c/env_open.html#DB_THREAD">DB_THREAD</a> flag was specified to the
<a href="../api_c/db_open.html">DB-&gt;open</a> function and none of the <a href="../api_c/dbt.html#DB_DBT_MALLOC">DB_DBT_MALLOC</a>,
<a href="../api_c/dbt.html#DB_DBT_REALLOC">DB_DBT_REALLOC</a> or <a href="../api_c/dbt.html#DB_DBT_USERMEM">DB_DBT_USERMEM</a> flags were set in the
<a href="../api_c/dbt.html">DBT</a>.
</dl>
<p>The DB-&gt;get 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-&gt;get function may fail and return
<a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a>, in which case all subsequent Berkeley DB calls will fail
in the same way.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_get_byteswapped.so,v 10.7 1999/12/20 08:52:27 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;get_byteswapped</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;get_byteswapped</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;get_byteswapped(DB *db);
</pre></h3>
<h1>Description</h1>
<p>The DB-&gt;get_byteswapped function returns
0
if the underlying database files were created on an architecture
of the same byte order as the current one, and
1
if they were not (i.e., big-endian on a little-endian machine or
vice-versa). This field may be used to determine if application
data needs to be adjusted for this architecture or not.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_get_type.so,v 10.10 1999/12/20 08:52:27 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;get_type</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;get_type</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
DBTYPE
DB-&gt;get_type(DB *db);
</pre></h3>
<h1>Description</h1>
<p>The DB-&gt;get_type function returns the type of the underlying access method
(and file format). It returns one of DB_BTREE,
DB_HASH or DB_RECNO. This value may be used to
determine the type of the database after a return from <a href="../api_c/db_open.html">DB-&gt;open</a>
with the <b>type</b> argument set to DB_UNKNOWN.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_join.so,v 10.30 2000/12/20 15:34:50 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;join</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;join</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;join(DB *primary,
DBC **curslist, DBC **dbcp, u_int32_t flags);
</pre></h3>
<h1>Description</h1>
<p>The DB-&gt;join function creates a specialized cursor for use in performing
joins on secondary indexes. For information on how to organize your data
to use this functionality, see <a href="../ref/am/join.html">Logical
join</a>.
<p>The <b>primary</b> argument contains the DB handle of the primary
database, which is keyed by the data values found in entries in the
<b>curslist</b>.
<p>The <b>curslist</b> argument contains a NULL terminated array of cursors.
Each cursor must have been initialized to reference the key on which the
underlying database should be joined. Typically, this initialization is done
by a <a href="../api_c/dbc_get.html">DBcursor-&gt;c_get</a> call with the <a href="../api_c/dbc_get.html#DB_SET">DB_SET</a> flag specified. Once the
cursors have been passed as part of a <b>curslist</b>, they should not
be accessed or modified until the newly created join cursor has been closed,
or else inconsistent results may be returned.
<p>Joined values are retrieved by doing a sequential iteration over the first
cursor in the <b>curslist</b> argument, and a nested iteration over each
secondary cursor in the order they are specified in the <b>curslist</b>
argument. This requires database traversals to search for the current
datum in all the cursors after the first. For this reason, the best join
performance normally results from sorting the cursors from the one that
references the least number of data items to the one that references the
most. By default, DB-&gt;join does this sort on behalf of its caller.
<p>The <b>flags</b> parameter must be set to 0 or the following value:
<p><dl compact>
<p><dt><a name="DB_JOIN_NOSORT">DB_JOIN_NOSORT</a><dd>Do not sort the cursors based on the number of data items they reference.
If the data are structured such that cursors with many data items also
share many common elements, higher performance will result from listing
those cursors before cursors with fewer data items, that is, a sort order
other than the default. The DB_JOIN_NOSORT flag permits
applications to perform join optimization prior to calling DB-&gt;join.
</dl>
<p>A newly created cursor is returned in the memory location referenced by
<b>dbcp</b> and has the standard cursor functions:
<p><dl compact>
<p><dt><a href="../api_c/dbc_get.html">DBcursor-&gt;c_get</a><dd>Iterates over the values associated with the keys to which each item in
<b>curslist</b> has been initialized. Any data value which appears in
all items specified by the <b>curslist</b> argument is then used as a
key into the <b>primary</b>, and the key/data pair found in the
<b>primary</b> is returned.
<p>The <b>flags</b> parameter must be set to 0 or the following value:
<p><dl compact>
<p><dt><a name="DB_JOIN_ITEM">DB_JOIN_ITEM</a><dd>Do not use the data value found in all of the cursors as a lookup
key for the <b>primary</b>, but simply return it in the key parameter
instead. The data parameter is left unchanged.
</dl>
<p>In addition, the following flag may be set by bitwise inclusively <b>OR</b>'ing it into the
<b>flags</b> parameter:
<p><dl compact>
<p><dt><a name="DB_RMW">DB_RMW</a><dd>Acquire write locks instead of read locks when doing the retrieval.
Setting this flag may decrease the likelihood of deadlock during a
read-modify-write cycle by immediately acquiring the write lock during
the read part of the cycle so that another thread of control acquiring
a read lock for the same item, in its own read-modify-write cycle, will
not result in deadlock.
</dl>
<p><dt><a href="../api_c/dbc_put.html">DBcursor-&gt;c_put</a><dd>Returns EINVAL.
<p><dt><a href="../api_c/dbc_del.html">DBcursor-&gt;c_del</a><dd>Returns EINVAL.
<p><dt><a href="../api_c/dbc_close.html">DBcursor-&gt;c_close</a><dd>Close the returned cursor and release all resources. (Closing the cursors
in <b>curslist</b> is the responsibility of the caller.)
</dl>
<p>For the returned join cursor to be used in a transaction protected manner,
the cursors listed in <b>curslist</b> must have been created within the
context of the same transaction.
<p>The DB-&gt;join function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p>The DB-&gt;join function may fail and return a non-zero error for the following conditions:
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>The <a href="../api_c/dbc_put.html">DBcursor-&gt;c_put</a> or <a href="../api_c/dbc_del.html">DBcursor-&gt;c_del</a> functions were called.
</dl>
<p>The DB-&gt;join 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-&gt;join function may fail and return
<a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a>, in which case all subsequent Berkeley DB calls will fail
in the same way.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_key_range.so,v 10.5 2000/05/01 21:57:43 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;key_range</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;key_range</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;key_range(DB *db, DB_TXN *txnid,
DBT *key, DB_KEY_RANGE *key_range, u_int32_t flags);
</pre></h3>
<h1>Description</h1>
<p>The DB-&gt;key_range function returns an estimate of the proportion of keys
that are less than, equal to and greater than the specified key. The
underlying database must be of type Btree.
<p>The information is returned in the <b>key_range</b> argument, which
contains three elements of type double, <b>less</b>, <b>equal</b> and
<b>greater</b>. Values are in the range of 0 to 1, e.g., if the field
<b>less</b> is 0.05, that indicates that 5% of the keys in the database
are less than the key argument. The value for <b>equal</b> will be zero
if there is no matching key and non-zero otherwise.
<p>If the file is being accessed under transaction protection, the
<b>txnid</b> parameter is a transaction ID returned from
<a href="../api_c/txn_begin.html">txn_begin</a>, otherwise, NULL.
The DB-&gt;key_range function does not retain the locks it acquires for the
life of the transaction, so estimates may not be repeatable.
<p>The <b>flags</b> parameter is currently unused, and must be set to 0.
<p>The DB-&gt;key_range function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p>The DB-&gt;key_range function may fail and return a non-zero error for the following conditions:
<p><dl compact>
<p><dt>DB_LOCK_DEADLOCK<dd>The operation was selected to resolve a deadlock.
</dl>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>The underlying database was not of type Btree.
</dl>
<p>The DB-&gt;key_range 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-&gt;key_range function may fail and return
<a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a>, in which case all subsequent Berkeley DB calls will fail
in the same way.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_lsn.so,v 10.7 1999/12/20 08:52:27 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB_LSN</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB_LSN</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
</pre></h3>
<h1>Description</h1>
<p>A <a href="../api_c/db_lsn.html">DB_LSN</a> is a <b>log sequence number</b>, which indicates a
unique position in the log. The <a href="../api_c/db_lsn.html">DB_LSN</a> structure is completely
opaque, and no application should ever need to look inside.
<a href="../api_c/db_lsn.html">DB_LSN</a> structures are used by the logging and memory pool
subsystems.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
This diff is collapsed.
<!--$Id: db_put.so,v 10.34 2000/09/16 22:27:56 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;put</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;put</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;put(DB *db,
DB_TXN *txnid, DBT *key, DBT *data, u_int32_t flags);
</pre></h3>
<h1>Description</h1>
<p>The DB-&gt;put function stores key/data pairs in the database. The default
behavior of the DB-&gt;put function is to enter the new key/data
pair, replacing any previously existing key if duplicates are disallowed,
or adding a duplicate data item if duplicates are allowed. If the database
supports duplicates, the DB-&gt;put function adds the new data value at the
end of the duplicate set. If the database supports sorted duplicates,
the new data value is inserted at the correct sorted location.
<p>If the file is being accessed under transaction protection, the
<b>txnid</b> parameter is a transaction ID returned from
<a href="../api_c/txn_begin.html">txn_begin</a>, otherwise, NULL.
<p>The <b>flags</b> parameter must be set to 0 or one of the following
values:
<p><dl compact>
<p><dt><a name="DB_APPEND">DB_APPEND</a><dd>Append the key/data pair to the end of the database. For the
DB_APPEND flag to be specified, the underlying database must be
a Queue or Recno database. The record number allocated to the record is
returned in the specified <b>key</b>.
<p>There is a minor behavioral difference between the Recno and Queue access
methods for the DB_APPEND flag. If a transaction enclosing a
DB-&gt;put operation with the DB_APPEND flag aborts, the
record number may be decremented (and later re-allocated by a subsequent
DB_APPEND operation) by the Recno access method, but will not be
decremented or re-allocated by the Queue access method.
<p><dt><a name="DB_NODUPDATA">DB_NODUPDATA</a><dd>In the case of the Btree and Hash access methods, enter the new key/data
pair only if it does not already appear in the database. If the
key/data pair already appears in the database, <a href="../api_c/dbc_put.html#DB_KEYEXIST">DB_KEYEXIST</a> is
returned. The DB_NODUPDATA flag may only be specified if the
underlying database has been configured to support sorted duplicates.
<p>The DB_NODUPDATA flag may not be specified to the Queue or Recno
access methods.
<p><dt><a name="DB_NOOVERWRITE">DB_NOOVERWRITE</a><dd>Enter the new key/data pair only if the key does not already appear in
the database. If the key already appears in the database,
<a href="../api_c/dbc_put.html#DB_KEYEXIST">DB_KEYEXIST</a> is returned. Even if the database allows duplicates,
a call to DB-&gt;put with the DB_NOOVERWRITE flag set will
fail if the key already exists in the database.
</dl>
<p>Otherwise, the DB-&gt;put function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p>The DB-&gt;put function may fail and return a non-zero error for the following conditions:
<p><dl compact>
<p><dt>DB_LOCK_DEADLOCK<dd>The operation was selected to resolve a deadlock.
</dl>
<p><dl compact>
<p><dt>EACCES<dd>An attempt was made to modify a read-only database.
</dl>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>A record number of 0 was specified.
<p>An attempt was made to add a record to a fixed-length database that was too
large to fit.
<p>An attempt was made to do a partial put.
</dl>
<p><dl compact>
<p><dt>ENOSPC<dd>A btree exceeded the maximum btree depth (255).
</dl>
<p>The DB-&gt;put 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-&gt;put function may fail and return
<a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a>, in which case all subsequent Berkeley DB calls will fail
in the same way.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_remove.so,v 10.20 2000/10/25 15:24:44 dda Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;remove</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;remove</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;remove(DB *db,
const char *file, const char *database, u_int32_t flags);
</pre></h3>
<h1>Description</h1>
<p>The DB-&gt;remove interface removes the database specified by the
<b>file</b> and <b>database</b> arguments. If no <b>database</b> is
specified, the physical file represented by <b>file</b> is removed,
incidentally removing all databases that it contained.
<p>If a physical file is being removed and logging is currently enabled in
the database environment, no database in the file may be open when the
DB-&gt;remove function is called. Otherwise, no reference count of database
use is maintained by Berkeley DB. Applications should not remove databases that
are currently in use. In particular, some architectures do not permit
the removal of files with open handles. On these architectures, attempts
to remove databases that are currently in use will fail.
<p>The <b>flags</b> parameter is currently unused, and must be set to 0.
<p>Once DB-&gt;remove has been called, regardless of its return, the
DB handle may not be accessed again.
<p>The DB-&gt;remove function returns a non-zero error value on failure and 0 on success.
<h1>Environment Variables</h1>
<p><dl compact>
<p><dt>DB_HOME<dd>If the <b>dbenv</b> argument to <a href="../api_c/db_create.html">db_create</a> was initialized using
<a href="../api_c/env_open.html">DBENV-&gt;open</a> the environment variable <b>DB_HOME</b> may be used
as the path of the database environment home. Specifically, DB-&gt;remove
is affected by the configuration value DB_DATA_DIR.
</dl>
<h1>Errors</h1>
<p>The DB-&gt;remove function may fail and return a non-zero error for the following conditions:
<p><dl compact>
<p><dt>EINVAL<dd>A database in the file is currently open.
</dl>
<p>The DB-&gt;remove 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-&gt;remove function may fail and return
<a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a>, in which case all subsequent Berkeley DB calls will fail
in the same way.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_rename.so,v 10.7 2000/10/25 15:24:44 dda Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;rename</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;rename</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;rename(DB *db, const char *file,
const char *database, const char *newname, u_int32_t flags);
</pre></h3>
<h1>Description</h1>
<p>The DB-&gt;rename interface renames the database specified by the
<b>file</b> and <b>database</b> arguments to <b>newname</b>. If no
<b>database</b> is specified, the physical file represented by
<b>file</b> is renamed, incidentally renaming all databases that it
contained.
<p>If a physical file is being renamed and logging is currently enabled in
the database environment, no database in the file may be open when the
DB-&gt;rename function is called. Otherwise, no reference count of database
use is maintained by Berkeley DB. Applications should not rename databases that
are currently in use. In particular, some architectures do not permit
renaming files with open handles. On these architectures, attempts to
rename databases that are currently in use will fail.
<p>The <b>flags</b> parameter is currently unused, and must be set to 0.
<p>Once DB-&gt;rename has been called, regardless of its return, the
DB handle may not be accessed again.
<p>The DB-&gt;rename function returns a non-zero error value on failure and 0 on success.
<h1>Environment Variables</h1>
<p><dl compact>
<p><dt>DB_HOME<dd>If the <b>dbenv</b> argument to <a href="../api_c/db_create.html">db_create</a> was initialized using
<a href="../api_c/env_open.html">DBENV-&gt;open</a> the environment variable <b>DB_HOME</b> may be used
as the path of the database environment home. Specifically, DB-&gt;rename
is affected by the configuration value DB_DATA_DIR.
</dl>
<h1>Errors</h1>
<p>The DB-&gt;rename function may fail and return a non-zero error for the following conditions:
<p><dl compact>
<p><dt>EINVAL<dd>A database in the file is currently open.
</dl>
<p>The DB-&gt;rename 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-&gt;rename function may fail and return
<a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a>, in which case all subsequent Berkeley DB calls will fail
in the same way.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_append_recno.so,v 1.3 2000/07/18 16:19:44 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_append_recno</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_append_recno</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_append_recno(DB *,
int (*db_append_recno_fcn)(DB *dbp, DBT *data, db_recno_t recno));
</pre></h3>
<h1>Description</h1>
<p>When using the <a href="../api_c/db_put.html#DB_APPEND">DB_APPEND</a> option of the <a href="../api_c/db_put.html">DB-&gt;put</a> method,
it may be useful to modify the stored data based on the generated key.
If a callback function is specified using the
DB-&gt;set_append_recno function, it will be called after the record number
has been selected but before the data has been stored.
The callback function must return 0 on success and <b>errno</b> or
a value outside of the Berkeley DB error name space on failure.
<p>The called function must take three arguments: a reference to the
enclosing database handle, the data <a href="../api_c/dbt.html">DBT</a> to be stored and the
selected record number. The called function may then modify the data
<a href="../api_c/dbt.html">DBT</a>.
<p>The DB-&gt;set_append_recno interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_append_recno function returns a non-zero error value on failure and 0 on success.
<h1>See Also</h1>
<a href="../api_c/env_close.html">DBENV-&gt;close</a>,
<a href="../api_c/env_create.html">db_env_create</a>,
<a href="../api_c/env_open.html">DBENV-&gt;open</a>,
<a href="../api_c/env_remove.html">DBENV-&gt;remove</a>,
<a href="../api_c/db_err.html">DBENV-&gt;err</a>,
<a href="../api_c/env_strerror.html">db_strerror</a>,
<a href="../api_c/env_version.html">db_version</a>,
<a href="../api_c/env_set_cachesize.html">DBENV-&gt;set_cachesize</a>,
<a href="../api_c/env_set_errcall.html">DBENV-&gt;set_errcall</a>,
<a href="../api_c/env_set_errfile.html">DBENV-&gt;set_errfile</a>,
<a href="../api_c/env_set_errpfx.html">DBENV-&gt;set_errpfx</a>,
<a href="../api_c/env_set_flags.html">DBENV-&gt;set_flags</a>,
<a href="../api_c/env_set_mutexlocks.html">DBENV-&gt;set_mutexlocks</a>,
<a href="../api_c/env_set_paniccall.html">DBENV-&gt;set_paniccall</a>,
and
<a href="../api_c/env_set_verbose.html">DBENV-&gt;set_verbose</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_bt_compare.so,v 10.24 2000/10/26 15:20:40 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_bt_compare</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_bt_compare</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_bt_compare(DB *db,
int (*bt_compare_fcn)(DB *, const DBT *, const DBT *));
</pre></h3>
<h1>Description</h1>
<p>Set the Btree key comparison function. The comparison function is
called when it is necessary to compare a key specified by the
application with a key currently stored in the tree. The first argument
to the comparison function is the <a href="../api_c/dbt.html">DBT</a> representing the
application supplied key, the second is the current tree's key.
<p>The comparison function must return an integer value less than, equal
to, or greater than zero if the first key argument is considered to be
respectively less than, equal to, or greater than the second key
argument. In addition, the comparison function must cause the keys in
the database to be <i>well-ordered</i>. The comparison function
must correctly handle any key values used by the application (possibly
including zero-length keys). In addition, when Btree key prefix
comparison is being performed (see <a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a> for more
information), the comparison routine may be passed a prefix of any
database key. The <b>data</b> and <b>size</b> fields of the
<a href="../api_c/dbt.html">DBT</a> are the only fields that may be used for the purposes of
this comparison.
<p>If no comparison function is specified, the keys are compared lexically,
with shorter keys collating before longer keys. The same comparison
method must be used each time a particular Btree is opened.
<p>The DB-&gt;set_bt_compare interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_bt_compare function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>Called after <a href="../api_c/db_open.html">DB-&gt;open</a> was called.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_bt_minkey.so,v 10.14 2000/05/01 21:57:43 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_bt_minkey</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_bt_minkey</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_bt_minkey(DB *db, u_int32_t bt_minkey);
</pre></h3>
<h1>Description</h1>
<p>Set the minimum number of keys that will be stored on any single
Btree page.
<p>This value is used to determine which keys will be stored on overflow
pages, i.e. if a key or data item is larger than the underlying database
page size divided by the <b>bt_minkey</b> value, it will be stored on
overflow pages instead of within the page itself. The <b>bt_minkey</b>
value specified must be at least 2; if <b>bt_minkey</b> is not explicitly
set, a value of 2 is used.
<p>The DB-&gt;set_bt_minkey interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_bt_minkey function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>Called after <a href="../api_c/db_open.html">DB-&gt;open</a> was called.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_bt_prefix.so,v 10.25 2000/09/08 21:35:26 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_bt_prefix</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_bt_prefix</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_bt_prefix(DB *db,
size_t (*bt_prefix_fcn)(DB *, const DBT *, const DBT *));
</pre></h3>
<h1>Description</h1>
<p>Set the Btree prefix function. The prefix function must return the
number of bytes of the second key argument that would be required by
the Btree key comparison function to determine the second key argument's
ordering relationship with respect to the first key argument. If the
two keys are equal, the key length should be returned. The prefix
function must correctly handle any key values used by the application
(possibly including zero-length keys). The <b>data</b> and
<b>size</b> fields of the <a href="../api_c/dbt.html">DBT</a> are the only fields that may be
used for the purposes of this determination.
<p>The prefix function is used to determine the amount by which keys stored
on the Btree internal pages can be safely truncated without losing their
uniqueness. See the <a href="../ref/am_conf/bt_prefix.html">Btree
prefix comparison</a> section of the Reference Guide for more details about
how this works. The usefulness of this is data dependent, but in some
data sets can produce significantly reduced tree sizes and search times.
<p>If no prefix function or key comparison function is specified by the
application, a default lexical comparison function is used as the prefix
function. If no prefix function is specified and a key comparison
function is specified, no prefix function is used. It is an error to
specify a prefix function without also specifying a key comparison
function.
<p>The DB-&gt;set_bt_prefix interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_bt_prefix function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>Called after <a href="../api_c/db_open.html">DB-&gt;open</a> was called.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_cachesize.so,v 10.17 2000/05/01 21:57:43 bostic Exp $-->
<!--$Id: m4.cachesize,v 10.7 2000/02/11 18:54:45 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_cachesize</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_cachesize</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_cachesize(DB *db,
u_int32_t gbytes, u_int32_t bytes, int ncache);
</pre></h3>
<h1>Description</h1>
<p>Set the size of the database's shared memory buffer pool, i.e., the cache,
to <b>gbytes</b> gigabytes plus <b>bytes</b>. The cache should be the
size of the normal working data set of the application, with some small
amount of additional memory for unusual situations. (Note, the working
set is not the same as the number of simultaneously referenced pages, and
should be quite a bit larger!)
<p>The default cache size is 256KB, and may not be specified as less than
20KB. Any cache size less than 500MB is automatically increased by 25%
to account for buffer pool overhead, cache sizes larger than 500MB are
used as specified. For information on tuning the Berkeley DB cache size, see
<a href="../ref/am_conf/cachesize.html">Selecting a cache size</a>.
<p>It is possible to specify caches to Berkeley DB that are large enough so that
they cannot be allocated contiguously on some architectures, e.g., some
releases of Solaris limit the amount of memory that may be allocated
contiguously by a process. If <b>ncache</b> is 0 or 1, the cache will
be allocated contiguously in memory. If it is greater than 1, the cache
will be broken up into <b>ncache</b> equally sized separate pieces of
memory.
<p>As databases opened within Berkeley DB environments use the cache specified to
the environment, it is an error to attempt to set a cache in a database
created within an environment.
<p>The DB-&gt;set_cachesize interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_cachesize function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>The specified cache size was impossibly small.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_dup_compare.so,v 10.21 2000/10/26 15:20:40 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_dup_compare</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_dup_compare</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_dup_compare(DB *db,
int (*dup_compare_fcn)(DB *, const DBT *, const DBT *));
</pre></h3>
<h1>Description</h1>
<p>Set the duplicate data item comparison function. The comparison function
is called when it is necessary to compare a data item specified by the
application with a data item currently stored in the tree. The first
argument to the comparison function is the <a href="../api_c/dbt.html">DBT</a> representing the
application's data item, the second is the current tree's data item.
<p>The comparison function must return an integer value less than, equal
to, or greater than zero if the first data item argument is considered
to be respectively less than, equal to, or greater than the second data
item argument. In addition, the comparison function must cause the data
items in the set to be <i>well-ordered</i>. The comparison function
must correctly handle any data item values used by the application
(possibly including zero-length data items). The <b>data</b> and
<b>size</b> fields of the <a href="../api_c/dbt.html">DBT</a> are the only fields that may be
used for the purposes of this comparison.
<p>If no comparison function is specified, the data items are compared
lexically, with shorter data items collating before longer data items.
The same duplicate data item comparison method must be used each time
a particular Btree is opened.
<p>The DB-&gt;set_dup_compare interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_dup_compare function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_errcall.so,v 10.7 1999/12/20 08:52:28 bostic Exp $-->
<!--$Id: m4.errset,v 10.8 2000/02/19 20:57:57 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_errcall</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_errcall</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
void
DB-&gt;set_errcall(DB *,
void (*db_errcall_fcn)(const char *errpfx, char *msg));
</pre></h3>
<h1>Description</h1>
When an error occurs in the Berkeley DB library, a Berkeley DB error or an error
return value is returned by the function. In some cases, however,
the <b>errno</b> value may be insufficient to completely describe
the cause of the error especially during initial application debugging.
<p>The DB-&gt;set_errcall function is used to enhance the mechanism for reporting error
messages to the application. In some cases, when an error occurs, Berkeley DB
will call <b>db_errcall_fcn</b> with additional error information. The
function must be declared with two arguments; the first will be the prefix
string (as previously set by <a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a> or
<a href="../api_c/env_set_errpfx.html">DBENV-&gt;set_errpfx</a>), the second will be the error message string.
It is up to the <b>db_errcall_fcn</b> function to display the error
message in an appropriate manner.
<p>Alternatively, you can use the <a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a> or
<a href="../api_c/env_set_errfile.html">DBENV-&gt;set_errfile</a> functions to display the additional information
via a C library FILE *.
<p>This error logging enhancement does not slow performance or significantly
increase application size, and may be run during normal operation as well
as during application debugging.
<p>For DB handles opened inside of Berkeley DB environments, calling the
DB-&gt;set_errcall function affects the entire environment and is equivalent to calling
the <a href="../api_c/env_set_errcall.html">DBENV-&gt;set_errcall</a> function.
<p>The DB-&gt;set_errcall interface may be used to configure Berkeley DB at any time
during the life of the application.
<h1>See Also</h1>
<a href="../api_c/env_close.html">DBENV-&gt;close</a>,
<a href="../api_c/env_create.html">db_env_create</a>,
<a href="../api_c/env_open.html">DBENV-&gt;open</a>,
<a href="../api_c/env_remove.html">DBENV-&gt;remove</a>,
<a href="../api_c/db_err.html">DBENV-&gt;err</a>,
<a href="../api_c/env_strerror.html">db_strerror</a>,
<a href="../api_c/env_version.html">db_version</a>,
<a href="../api_c/env_set_cachesize.html">DBENV-&gt;set_cachesize</a>,
<a href="../api_c/env_set_errcall.html">DBENV-&gt;set_errcall</a>,
<a href="../api_c/env_set_errfile.html">DBENV-&gt;set_errfile</a>,
<a href="../api_c/env_set_errpfx.html">DBENV-&gt;set_errpfx</a>,
<a href="../api_c/env_set_flags.html">DBENV-&gt;set_flags</a>,
<a href="../api_c/env_set_mutexlocks.html">DBENV-&gt;set_mutexlocks</a>,
<a href="../api_c/env_set_paniccall.html">DBENV-&gt;set_paniccall</a>,
and
<a href="../api_c/env_set_verbose.html">DBENV-&gt;set_verbose</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_errfile.so,v 10.7 1999/12/20 08:52:28 bostic Exp $-->
<!--$Id: m4.errset,v 10.8 2000/02/19 20:57:57 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_errfile</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_errfile</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
void
DB-&gt;set_errfile(DB *db, FILE *errfile);
</pre></h3>
<h1>Description</h1>
When an error occurs in the Berkeley DB library, a Berkeley DB error or an error
return value is returned by the function. In some cases, however,
the <b>errno</b> value may be insufficient to completely describe
the cause of the error especially during initial application debugging.
<p>The DB-&gt;set_errfile function is used to enhance the mechanism for reporting error
messages to the application by setting a C library FILE * to be used for
displaying additional Berkeley DB error messages. In some cases, when an error
occurs, Berkeley DB will output an additional error message to the specified
file reference.
<p>The error message will consist of the prefix string and a colon
("<b>:</b>") (if a prefix string was previously specified using
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a> or <a href="../api_c/env_set_errpfx.html">DBENV-&gt;set_errpfx</a>), an error string, and
a trailing &lt;newline&gt; character.
<p>This error logging enhancement does not slow performance or significantly
increase application size, and may be run during normal operation as well
as during application debugging.
<p>For DB handles opened inside of Berkeley DB environments, calling the
DB-&gt;set_errfile function affects the entire environment and is equivalent to calling
the <a href="../api_c/env_set_errfile.html">DBENV-&gt;set_errfile</a> function.
<p>The DB-&gt;set_errfile interface may be used to configure Berkeley DB at any time
during the life of the application.
<h1>See Also</h1>
<a href="../api_c/env_close.html">DBENV-&gt;close</a>,
<a href="../api_c/env_create.html">db_env_create</a>,
<a href="../api_c/env_open.html">DBENV-&gt;open</a>,
<a href="../api_c/env_remove.html">DBENV-&gt;remove</a>,
<a href="../api_c/db_err.html">DBENV-&gt;err</a>,
<a href="../api_c/env_strerror.html">db_strerror</a>,
<a href="../api_c/env_version.html">db_version</a>,
<a href="../api_c/env_set_cachesize.html">DBENV-&gt;set_cachesize</a>,
<a href="../api_c/env_set_errcall.html">DBENV-&gt;set_errcall</a>,
<a href="../api_c/env_set_errfile.html">DBENV-&gt;set_errfile</a>,
<a href="../api_c/env_set_errpfx.html">DBENV-&gt;set_errpfx</a>,
<a href="../api_c/env_set_flags.html">DBENV-&gt;set_flags</a>,
<a href="../api_c/env_set_mutexlocks.html">DBENV-&gt;set_mutexlocks</a>,
<a href="../api_c/env_set_paniccall.html">DBENV-&gt;set_paniccall</a>,
and
<a href="../api_c/env_set_verbose.html">DBENV-&gt;set_verbose</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_errpfx.so,v 10.6 1999/12/20 08:52:28 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_errpfx</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_errpfx</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
void
DB-&gt;set_errpfx(DB *db, const char *errpfx);
</pre></h3>
<h1>Description</h1>
<p>Set the prefix string that appears before error messages issued by Berkeley DB.
<p>The DB-&gt;set_errpfx function does not copy the memory referenced by the
<b>errpfx</b> argument, rather, it maintains a reference to it. This
allows applications to modify the error message prefix at any time,
without repeatedly calling DB-&gt;set_errpfx, but means that the
memory must be maintained until the handle is closed.
<p>For DB handles opened inside of Berkeley DB environments, calling the
DB-&gt;set_errpfx function affects the entire environment and is equivalent to calling
the <a href="../api_c/env_set_errpfx.html">DBENV-&gt;set_errpfx</a> function.
<p>The DB-&gt;set_errpfx interface may be used to configure Berkeley DB at any time
during the life of the application.
<h1>See Also</h1>
<a href="../api_c/env_close.html">DBENV-&gt;close</a>,
<a href="../api_c/env_create.html">db_env_create</a>,
<a href="../api_c/env_open.html">DBENV-&gt;open</a>,
<a href="../api_c/env_remove.html">DBENV-&gt;remove</a>,
<a href="../api_c/db_err.html">DBENV-&gt;err</a>,
<a href="../api_c/env_strerror.html">db_strerror</a>,
<a href="../api_c/env_version.html">db_version</a>,
<a href="../api_c/env_set_cachesize.html">DBENV-&gt;set_cachesize</a>,
<a href="../api_c/env_set_errcall.html">DBENV-&gt;set_errcall</a>,
<a href="../api_c/env_set_errfile.html">DBENV-&gt;set_errfile</a>,
<a href="../api_c/env_set_errpfx.html">DBENV-&gt;set_errpfx</a>,
<a href="../api_c/env_set_flags.html">DBENV-&gt;set_flags</a>,
<a href="../api_c/env_set_mutexlocks.html">DBENV-&gt;set_mutexlocks</a>,
<a href="../api_c/env_set_paniccall.html">DBENV-&gt;set_paniccall</a>,
and
<a href="../api_c/env_set_verbose.html">DBENV-&gt;set_verbose</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_feedback.so,v 10.16 2000/07/09 19:11:54 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_feedback</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_feedback</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_feedback(DB *,
void (*db_feedback_fcn)(DB *dbp, int opcode, int pct));
</pre></h3>
<h1>Description</h1>
<p>Some operations performed by the Berkeley DB library can take non-trivial
amounts of time. The DB-&gt;set_feedback function can be used by
applications to monitor progress within these operations.
<p>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.
<p>The <b>opcode</b> argument may take on any of the following values:
<p><dl compact>
<p><dt><a name="DB_UPGRADE">DB_UPGRADE</a><dd>The underlying database is being upgraded.
<p><dt><a name="DB_VERIFY">DB_VERIFY</a><dd>The underlying database is being verified.
</dl>
<p>The DB-&gt;set_feedback interface may be used to configure Berkeley DB at any time
during the life of the application.
<p>The DB-&gt;set_feedback function returns a non-zero error value on failure and 0 on success.
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
This diff is collapsed.
<!--$Id: db_set_h_ffactor.so,v 10.15 2000/05/01 21:57:43 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_h_ffactor</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_h_ffactor</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_h_ffactor(DB *db, u_int32_t h_ffactor);
</pre></h3>
<h1>Description</h1>
<p>Set the desired density within the hash table.
<p>The density is an approximation of the number of keys allowed to
accumulate in any one bucket, determining when the hash table grows or
shrinks. If you know the average sizes of the keys and data in your
dataset, setting the fill factor can enhance performance. A reasonable
rule computing fill factor is to set it to:
<p><blockquote><pre>(pagesize - 32) / (average_key_size + average_data_size + 8)</pre></blockquote>
<p>If no value is specified, the fill factor will be selected dynamically as
pages are filled.
<p>The DB-&gt;set_h_ffactor interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_h_ffactor function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>Called after <a href="../api_c/db_open.html">DB-&gt;open</a> was called.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_h_hash.so,v 10.18 2000/07/04 18:28:27 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_h_hash</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_h_hash</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_h_hash(DB *db,
u_int32_t (*h_hash_fcn)(DB *, const void *bytes, u_int32_t length));
</pre></h3>
<h1>Description</h1>
<p>Set a user defined hash method; if no hash method is specified, a default
hash method is used. Since no hash method performs equally well on all
possible data, the user may find that the built-in hash method performs
poorly with a particular data set. User specified hash functions must
take a pointer to a byte string and a length as arguments and return a
value of type
<b>u_int32_t</b>.
The hash function must handle any key values used by the application
(possibly including zero-length keys).
<p>If a hash method is specified, <a href="../api_c/db_open.html">DB-&gt;open</a> will attempt to determine
if the hash method specified is the same as the one with which the database
was created, and will fail if it detects that it is not.
<p>The DB-&gt;set_h_hash interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_h_hash function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>Called after <a href="../api_c/db_open.html">DB-&gt;open</a> was called.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_h_nelem.so,v 10.15 2000/05/01 21:57:43 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_h_nelem</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_h_nelem</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_h_nelem(DB *db, u_int32_t h_nelem);
</pre></h3>
<h1>Description</h1>
<p>Set an estimate of the final size of the hash table.
<p>If not set or set too low, hash tables will still expand gracefully
as keys are entered, although a slight performance degradation may be
noticed.
<p>The DB-&gt;set_h_nelem interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_h_nelem function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>Called after <a href="../api_c/db_open.html">DB-&gt;open</a> was called.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_lorder.so,v 10.15 2000/05/01 21:57:43 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_lorder</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_lorder</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_lorder(DB *db, int lorder);
</pre></h3>
<h1>Description</h1>
<p>Set the byte order for integers in the stored database metadata. The
number should represent the order as an integer, for example, big endian
order is the number 4,321, and little endian order is the number 1,234.
If <b>lorder</b> is not explicitly set, the host order of the machine
where the Berkeley DB library was compiled is used.
<p>The value of <b>lorder</b> is ignored except when databases are being
created. If a database already exists, the byte order it uses is
determined when the database is opened.
<p><b>The access methods provide no guarantees about the byte ordering of the
application data stored in the database, and applications are responsible
for maintaining any necessary ordering.</b>
<p>The DB-&gt;set_lorder interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_lorder function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_malloc.so,v 10.18 2000/05/25 13:47:07 dda Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_malloc</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_malloc</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_malloc(DB *db, void *(*db_malloc)(size_t size));
</pre></h3>
<h1>Description</h1>
<p>Set the allocation function used by the DB methods to allocate
memory in which to return key/data items to the application.
<p>The <a href="../api_c/dbt.html#DB_DBT_MALLOC">DB_DBT_MALLOC</a> flag, when specified in the <a href="../api_c/dbt.html">DBT</a> object,
will cause the DB methods to allocate and re-allocate memory which
then becomes the responsibility of the calling application. See <a href="../api_c/dbt.html">DBT</a>
for more information.
<p>On systems where there may be multiple library versions of malloc (notably
Windows NT), specifying the <a href="../api_c/dbt.html#DB_DBT_MALLOC">DB_DBT_MALLOC</a> flag will fail because
the DB library will allocate memory from a different heap than
the application will use to free it. To avoid this problem, the
DB-&gt;set_malloc function can be used to pass Berkeley DB a reference to the
application's allocation routine, in which case it will be used to
allocate the memory returned when the <a href="../api_c/dbt.html#DB_DBT_MALLOC">DB_DBT_MALLOC</a> flag is set.
<p>The function specified must match the calling conventions of the
ANSI C X3.159-1989 (ANSI C) library routine of the same name.
<p>The DB-&gt;set_malloc interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_malloc function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_pagesize.so,v 10.16 2000/05/01 21:57:43 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_pagesize</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_pagesize</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_pagesize(DB *db, u_int32_t pagesize);
</pre></h3>
<h1>Description</h1>
<p>Set the size of the pages used to hold items in the database, in bytes.
The minimum page size is 512 bytes and the maximum page size is 64K bytes.
If the page size is not explicitly set, one is selected based on the
underlying filesystem I/O block size. The automatically selected size
has a lower limit of 512 bytes and an upper limit of 16K bytes.
<p>For information on tuning the Berkeley DB page size, see
<a href="../ref/am_conf/pagesize.html">Selecting a page size</a>.
<p>The DB-&gt;set_pagesize interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_pagesize function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_paniccall.so,v 10.11 2000/07/09 19:12:16 bostic Exp $-->
<!--$Id: m4.errset,v 10.8 2000/02/19 20:57:57 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_paniccall</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_paniccall</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_paniccall(DB *db,
void (*paniccall)(DB_ENV *, int errval));
</pre></h3>
<h1>Description</h1>
<p>Errors can occur in the Berkeley DB library where the only solution is to shut
down the application and run recovery. (For example, if Berkeley DB is unable
to write log records to disk because there is insufficient disk space.)
In these cases, the value <a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a> is returned by Berkeley DB.
<p>In these cases, it is also often simpler to shut down the application when
such errors occur rather than attempting to gracefully return up the stack.
The DB-&gt;set_paniccall function is used to specify a function to be called when
<a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a> is about to be returned from a Berkeley DB method. When
called, the <b>dbenv</b> argument will be a reference to the current
environment, and the <b>errval</b> argument is the error value that would
have been returned to the calling function.
<p>For DB handles opened inside of Berkeley DB environments, calling the
DB-&gt;set_paniccall function affects the entire environment and is equivalent to calling
the <a href="../api_c/env_set_paniccall.html">DBENV-&gt;set_paniccall</a> function.
<p>The DB-&gt;set_paniccall interface may be used to configure Berkeley DB at any time
during the life of the application.
<p>The DB-&gt;set_paniccall function returns a non-zero error value on failure and 0 on success.
<h1>See Also</h1>
<a href="../api_c/env_close.html">DBENV-&gt;close</a>,
<a href="../api_c/env_create.html">db_env_create</a>,
<a href="../api_c/env_open.html">DBENV-&gt;open</a>,
<a href="../api_c/env_remove.html">DBENV-&gt;remove</a>,
<a href="../api_c/db_err.html">DBENV-&gt;err</a>,
<a href="../api_c/env_strerror.html">db_strerror</a>,
<a href="../api_c/env_version.html">db_version</a>,
<a href="../api_c/env_set_cachesize.html">DBENV-&gt;set_cachesize</a>,
<a href="../api_c/env_set_errcall.html">DBENV-&gt;set_errcall</a>,
<a href="../api_c/env_set_errfile.html">DBENV-&gt;set_errfile</a>,
<a href="../api_c/env_set_errpfx.html">DBENV-&gt;set_errpfx</a>,
<a href="../api_c/env_set_flags.html">DBENV-&gt;set_flags</a>,
<a href="../api_c/env_set_mutexlocks.html">DBENV-&gt;set_mutexlocks</a>,
<a href="../api_c/env_set_paniccall.html">DBENV-&gt;set_paniccall</a>,
and
<a href="../api_c/env_set_verbose.html">DBENV-&gt;set_verbose</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_q_extentsize.so,v 1.3 2000/11/21 19:25:45 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_q_extentsize</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_q_extentsize</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_q_extentsize(DB *db, u_int32_t extentsize);
</pre></h3>
<h1>Description</h1>
<p>Set the size of the extents used to hold pages in a Queue database,
specified as a number of pages. Each extent is created as a separate
physical file. If no extent size is set, the default behavior is to
create only a single underlying database file.
<p>For information on tuning the extent size, see
<a href="../ref/am_conf/extentsize.html">Selecting a extent size</a>.
<p>The DB-&gt;set_q_extentsize interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_q_extentsize function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>Called after <a href="../api_c/db_open.html">DB-&gt;open</a> was called.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_re_delim.so,v 10.17 2000/05/01 21:57:43 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_re_delim</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_re_delim</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_re_delim(DB *db, int re_delim);
</pre></h3>
<h1>Description</h1>
<p>Set the delimiting byte used to mark the end of a record in the backing
source file for the Recno access method.
<p>This byte is used for variable length records, if the <b>re_source</b>
file is specified. If the <b>re_source</b> file is specified and no
delimiting byte was specified, &lt;newline&gt; characters (i.e.
ASCII 0x0a) are interpreted as end-of-record markers.
<p>The DB-&gt;set_re_delim interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_re_delim function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>Called after <a href="../api_c/db_open.html">DB-&gt;open</a> was called.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_re_len.so,v 10.17 2000/05/01 21:57:43 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_re_len</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_re_len</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_re_len(DB *db, u_int32_t re_len);
</pre></h3>
<h1>Description</h1>
<p>For the Queue access method, specify that the records are of length
<b>re_len</b>.
<p>For the Recno access method, specify that the records are fixed-length,
not byte delimited, and are of length <b>re_len</b>.
<p>Any records added to the database that are less than <b>re_len</b> bytes
long are automatically padded (see <a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a> for more
information).
<p>Any attempt to insert records into the database that are greater than
<b>re_len</b> bytes long will cause the call to fail immediately and
return an error.
<p>The DB-&gt;set_re_len interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_re_len function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>Called after <a href="../api_c/db_open.html">DB-&gt;open</a> was called.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_re_pad.so,v 10.16 2000/05/01 21:57:43 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_re_pad</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_re_pad</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_re_pad(DB *db, int re_pad);
</pre></h3>
<h1>Description</h1>
<p>Set the padding character for short, fixed-length records for the Queue
and Recno access methods.
<p>If no pad character is specified, &lt;space&gt; characters (i.e.,
ASCII 0x20) are used for padding.
<p>The DB-&gt;set_re_pad interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_re_pad function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>Called after <a href="../api_c/db_open.html">DB-&gt;open</a> was called.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_re_source.so,v 10.17 2000/05/01 21:57:43 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_re_source</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_re_source</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_re_source(DB *db, char *re_source);
</pre></h3>
<h1>Description</h1>
<p>Set the underlying source file for the Recno access method. The purpose
of the <b>re_source</b> value is to provide fast access and modification
to databases that are normally stored as flat text files.
<p>If the <b>re_source</b> field is set, it specifies an underlying flat
text database file that is read to initialize a transient record number
index. In the case of variable length records, the records are separated
as specified by <a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>. For example, standard UNIX
byte stream files can be interpreted as a sequence of variable length
records separated by &lt;newline&gt; characters.
<p>In addition, when cached data would normally be written back to the
underlying database file (e.g., the <a href="../api_c/db_close.html">DB-&gt;close</a> or <a href="../api_c/db_sync.html">DB-&gt;sync</a>
methods are called), the in-memory copy of the database will be written
back to the <b>re_source</b> file.
<p>By default, the backing source file is read lazily, i.e., records are not
read from the file until they are requested by the application.
<b>If multiple processes (not threads) are accessing a Recno database
concurrently and either inserting or deleting records, the backing source
file must be read in its entirety before more than a single process
accesses the database, and only that process should specify the backing
source file as part of the <a href="../api_c/db_open.html">DB-&gt;open</a> call. See the <a href="../api_c/db_set_flags.html#DB_SNAPSHOT">DB_SNAPSHOT</a>
flag for more information.</b>
<p><b>Reading and writing the backing source file specified by <b>re_source</b>
cannot be transactionally protected because it involves filesystem
operations that are not part of the Db transaction methodology.</b>
For this reason, if a temporary database is used to hold the records,
i.e., a NULL was specified as the <b>file</b> argument to <a href="../api_c/db_open.html">DB-&gt;open</a>,
it is possible to lose the contents of the <b>re_source</b> file, e.g.,
if the system crashes at the right instant.
If a file is used to hold the database, i.e., a file name was specified
as the <b>file</b> argument to <a href="../api_c/db_open.html">DB-&gt;open</a>, normal database
recovery on that file can be used to prevent information loss,
although it is still possible that the contents of <b>re_source</b>
will be lost if the system crashes.
<p>The <b>re_source</b> file must already exist (but may be zero-length) when
<a href="../api_c/db_open.html">DB-&gt;open</a> is called.
<p>It is not an error to specify a read-only <b>re_source</b> file when
creating a database, nor is it an error to modify the resulting database.
However, any attempt to write the changes to the backing source file using
either the <a href="../api_c/db_sync.html">DB-&gt;sync</a> or <a href="../api_c/db_close.html">DB-&gt;close</a> functions will fail, of course.
Specify the <a href="../api_c/db_close.html#DB_NOSYNC">DB_NOSYNC</a> flag to the <a href="../api_c/db_close.html">DB-&gt;close</a> function to stop it
from attempting to write the changes to the backing file, instead, they
will be silently discarded.
<p>For all of the above reasons, the <b>re_source</b> field is generally
used to specify databases that are read-only for DB applications,
and that are either generated on the fly by software tools, or modified
using a different mechanism, e.g., a text editor.
<p>The DB-&gt;set_re_source interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_re_source function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>Called after <a href="../api_c/db_open.html">DB-&gt;open</a> was called.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
<!--$Id: db_set_realloc.so,v 10.8 2000/05/25 13:47:07 dda Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DB-&gt;set_realloc</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DB-&gt;set_realloc</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DB-&gt;set_realloc(DB *db,
void *(*db_realloc_fcn)(void *ptr, size_t size));
</pre></h3>
<h1>Description</h1>
<p>Set the realloc function used by the DB methods to allocate memory
in which to return key/data items to the application.
<p>The <a href="../api_c/dbt.html#DB_DBT_REALLOC">DB_DBT_REALLOC</a> flag, when specified in the <a href="../api_c/dbt.html">DBT</a> object,
will cause the DB methods to allocate and re-allocate memory which
then becomes the responsibility of the calling application. See <a href="../api_c/dbt.html">DBT</a>
for more information.
<p>On systems where there may be multiple library versions of realloc (notably
Windows NT), specifying the <a href="../api_c/dbt.html#DB_DBT_REALLOC">DB_DBT_REALLOC</a> flag will fail because
the DB library will allocate memory from a different heap than
the application will use to free it. To avoid this problem, the
DB-&gt;set_realloc function can be used to pass Berkeley DB a reference to the
application's allocation routine, in which case it will be used to
allocate the memory returned when the <a href="../api_c/dbt.html#DB_DBT_REALLOC">DB_DBT_REALLOC</a> flag is set.
<p>The function specified must match the calling conventions of the
ANSI C X3.159-1989 (ANSI C) library routine of the same name.
<p>The DB-&gt;set_realloc interface may only be used to configure Berkeley DB before
the <a href="../api_c/db_open.html">DB-&gt;open</a> interface is called.
<p>The DB-&gt;set_realloc function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
</dl>
<h1>See Also</h1>
<a href="../api_c/db_create.html">db_create</a>,
<a href="../api_c/db_close.html">DB-&gt;close</a>,
<a href="../api_c/db_cursor.html">DB-&gt;cursor</a>,
<a href="../api_c/db_del.html">DB-&gt;del</a>,
<a href="../api_c/db_err.html">DB-&gt;err</a>,
<a href="../api_c/db_fd.html">DB-&gt;fd</a>,
<a href="../api_c/db_get.html">DB-&gt;get</a>,
<a href="../api_c/db_get_byteswapped.html">DB-&gt;get_byteswapped</a>,
<a href="../api_c/db_get_type.html">DB-&gt;get_type</a>,
<a href="../api_c/db_join.html">DB-&gt;join</a>,
<a href="../api_c/db_key_range.html">DB-&gt;key_range</a>,
<a href="../api_c/db_open.html">DB-&gt;open</a>,
<a href="../api_c/db_put.html">DB-&gt;put</a>,
<a href="../api_c/db_remove.html">DB-&gt;remove</a>,
<a href="../api_c/db_set_bt_compare.html">DB-&gt;set_bt_compare</a>,
<a href="../api_c/db_set_bt_minkey.html">DB-&gt;set_bt_minkey</a>,
<a href="../api_c/db_set_bt_prefix.html">DB-&gt;set_bt_prefix</a>,
<a href="../api_c/db_set_cachesize.html">DB-&gt;set_cachesize</a>,
<a href="../api_c/db_set_dup_compare.html">DB-&gt;set_dup_compare</a>,
<a href="../api_c/db_set_errcall.html">DB-&gt;set_errcall</a>,
<a href="../api_c/db_set_errfile.html">DB-&gt;set_errfile</a>,
<a href="../api_c/db_set_errpfx.html">DB-&gt;set_errpfx</a>,
<a href="../api_c/db_set_flags.html">DB-&gt;set_flags</a>,
<a href="../api_c/db_set_h_ffactor.html">DB-&gt;set_h_ffactor</a>,
<a href="../api_c/db_set_h_hash.html">DB-&gt;set_h_hash</a>,
<a href="../api_c/db_set_h_nelem.html">DB-&gt;set_h_nelem</a>,
<a href="../api_c/db_set_lorder.html">DB-&gt;set_lorder</a>,
<a href="../api_c/db_set_malloc.html">DB-&gt;set_malloc</a>,
<a href="../api_c/db_set_pagesize.html">DB-&gt;set_pagesize</a>,
<a href="../api_c/db_set_paniccall.html">DB-&gt;set_paniccall</a>,
<a href="../api_c/db_set_q_extentsize.html">DB-&gt;set_q_extentsize</a>,
<a href="../api_c/db_set_realloc.html">DB-&gt;set_realloc</a>,
<a href="../api_c/db_set_re_delim.html">DB-&gt;set_re_delim</a>,
<a href="../api_c/db_set_re_len.html">DB-&gt;set_re_len</a>,
<a href="../api_c/db_set_re_pad.html">DB-&gt;set_re_pad</a>,
<a href="../api_c/db_set_re_source.html">DB-&gt;set_re_source</a>,
<a href="../api_c/db_stat.html">DB-&gt;stat</a>,
<a href="../api_c/db_sync.html">DB-&gt;sync</a>,
<a href="../api_c/db_upgrade.html">DB-&gt;upgrade</a>
and
<a href="../api_c/db_verify.html">DB-&gt;verify</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<!--$Id: dbc_close.so,v 10.20 2000/03/01 21:41:29 bostic Exp $-->
<!--Copyright 1997, 1998, 1999, 2000 by Sleepycat Software, Inc.-->
<!--All rights reserved.-->
<html>
<head>
<title>Berkeley DB: DBcursor-&gt;c_close</title>
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
</head>
<body bgcolor=white>
<a name="2"><!--meow--></a>
<table><tr valign=top>
<td>
<h1>DBcursor-&gt;c_close</h1>
</td>
<td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<hr size=1 noshade>
<tt>
<h3><pre>
#include &lt;db.h&gt;
<p>
int
DBcursor-&gt;c_close(DBC *cursor);
</pre></h3>
<h1>Description</h1>
<p>The DBcursor-&gt;c_close function discards the cursor.
<p>It is possible for the DBcursor-&gt;c_close function to return
<a href="../ref/program/errorret.html#DB_LOCK_DEADLOCK">DB_LOCK_DEADLOCK</a>, signaling that any enclosing transaction should
be aborted. If the application is already intending to abort the
transaction, this error should be ignored, and the application should
proceed.
<p>Once DBcursor-&gt;c_close has been called, regardless of its return, the
cursor handle may not be used again.
<p>The DBcursor-&gt;c_close function returns a non-zero error value on failure and 0 on success.
<h1>Errors</h1>
<p>The DBcursor-&gt;c_close function may fail and return a non-zero error for the following conditions:
<p><dl compact>
<p><dt>DB_LOCK_DEADLOCK<dd>The operation was selected to resolve a deadlock.
</dl>
<p><dl compact>
<p><dt>EINVAL<dd>An invalid flag value or parameter was specified.
<p>The cursor was previously closed.
</dl>
<p>The DBcursor-&gt;c_close 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 DBcursor-&gt;c_close function may fail and return
<a href="../ref/program/errorret.html#DB_RUNRECOVERY">DB_RUNRECOVERY</a>, in which case all subsequent Berkeley DB calls will fail
in the same way.
<h1>See Also</h1>
<a href="../api_c/dbc_close.html">DBcursor-&gt;c_close</a>,
<a href="../api_c/dbc_count.html">DBcursor-&gt;c_count</a>,
<a href="../api_c/dbc_del.html">DBcursor-&gt;c_del</a>,
<a href="../api_c/dbc_dup.html">DBcursor-&gt;c_dup</a>,
<a href="../api_c/dbc_get.html">DBcursor-&gt;c_get</a>
and
<a href="../api_c/dbc_put.html">DBcursor-&gt;c_put</a>.
</tt>
<table><tr><td><br></td><td width="1%">
<a href="../api_c/c_index.html"><img src="../images/api.gif" alt="API"></a><a href="../ref/toc.html"><img src="../images/ref.gif" alt="Ref"></a>
</td></tr></table>
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>
</body>
</html>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment