From d03f220fde879509cab2ac1c73b71b7efb52b737 Mon Sep 17 00:00:00 2001 From: jbj Date: Sat, 16 Oct 2004 01:31:54 +0000 Subject: ... and in with the New ... CVS patchset: 7471 CVS date: 2004/10/16 01:31:54 --- db/docs/ref/am/close.html | 10 +- db/docs/ref/am/count.html | 6 +- db/docs/ref/am/curclose.html | 6 +- db/docs/ref/am/curdel.html | 6 +- db/docs/ref/am/curdup.html | 6 +- db/docs/ref/am/curget.html | 40 +++---- db/docs/ref/am/curput.html | 18 ++-- db/docs/ref/am/cursor.html | 6 +- db/docs/ref/am/delete.html | 6 +- db/docs/ref/am/get.html | 14 +-- db/docs/ref/am/join.html | 24 ++--- db/docs/ref/am/open.html | 30 +++--- db/docs/ref/am/opensub.html | 78 +++++++------- db/docs/ref/am/ops.html | 50 ++++----- db/docs/ref/am/put.html | 12 +-- db/docs/ref/am/second.html | 11 +- db/docs/ref/am/second.javas | 156 ++++++++++++++++++++++++++++ db/docs/ref/am/stat.html | 10 +- db/docs/ref/am/sync.html | 6 +- db/docs/ref/am/truncate.html | 6 +- db/docs/ref/am/upgrade.html | 6 +- db/docs/ref/am/verify.html | 6 +- db/docs/ref/am_conf/bt_compare.html | 12 +-- db/docs/ref/am_conf/bt_minkey.html | 6 +- db/docs/ref/am_conf/bt_prefix.html | 24 +++-- db/docs/ref/am_conf/bt_recnum.html | 6 +- db/docs/ref/am_conf/byteorder.html | 6 +- db/docs/ref/am_conf/cachesize.html | 6 +- db/docs/ref/am_conf/dup.html | 6 +- db/docs/ref/am_conf/extentsize.html | 6 +- db/docs/ref/am_conf/h_ffactor.html | 6 +- db/docs/ref/am_conf/h_hash.html | 6 +- db/docs/ref/am_conf/h_nelem.html | 6 +- db/docs/ref/am_conf/intro.html | 12 +-- db/docs/ref/am_conf/logrec.html | 19 ++-- db/docs/ref/am_conf/malloc.html | 6 +- db/docs/ref/am_conf/pagesize.html | 6 +- db/docs/ref/am_conf/re_source.html | 6 +- db/docs/ref/am_conf/recno.html | 6 +- db/docs/ref/am_conf/renumber.html | 6 +- db/docs/ref/am_conf/select.html | 6 +- db/docs/ref/am_misc/align.html | 6 +- db/docs/ref/am_misc/dbsizes.html | 31 +++--- db/docs/ref/am_misc/diskspace.html | 6 +- db/docs/ref/am_misc/error.html | 6 +- db/docs/ref/am_misc/faq.html | 12 +-- db/docs/ref/am_misc/get_bulk.html | 21 ++-- db/docs/ref/am_misc/partial.html | 6 +- db/docs/ref/am_misc/perm.html | 6 +- db/docs/ref/am_misc/stability.html | 12 ++- db/docs/ref/am_misc/struct.html | 6 +- db/docs/ref/am_misc/tune.html | 18 ++-- db/docs/ref/apprec/auto.html | 50 ++++----- db/docs/ref/apprec/config.html | 6 +- db/docs/ref/apprec/def.html | 6 +- db/docs/ref/apprec/intro.html | 25 +++-- db/docs/ref/arch/apis.html | 6 +- db/docs/ref/arch/bigpic.html | 18 ++-- db/docs/ref/arch/progmodel.html | 6 +- db/docs/ref/arch/script.html | 18 ++-- db/docs/ref/arch/utilities.html | 30 +++--- db/docs/ref/build_unix/aix.html | 6 +- db/docs/ref/build_unix/conf.html | 64 ++++++------ db/docs/ref/build_unix/flags.html | 6 +- db/docs/ref/build_unix/freebsd.html | 6 +- db/docs/ref/build_unix/hpux.html | 8 +- db/docs/ref/build_unix/install.html | 6 +- db/docs/ref/build_unix/intro.html | 10 +- db/docs/ref/build_unix/irix.html | 6 +- db/docs/ref/build_unix/linux.html | 21 ++-- db/docs/ref/build_unix/notes.html | 11 +- db/docs/ref/build_unix/osf1.html | 12 +-- db/docs/ref/build_unix/qnx.html | 6 +- db/docs/ref/build_unix/sco.html | 6 +- db/docs/ref/build_unix/shlib.html | 6 +- db/docs/ref/build_unix/small.html | 38 +++---- db/docs/ref/build_unix/solaris.html | 6 +- db/docs/ref/build_unix/sunos.html | 6 +- db/docs/ref/build_unix/test.html | 6 +- db/docs/ref/build_unix/ultrix.html | 6 +- db/docs/ref/build_vxworks/faq.html | 17 +-- db/docs/ref/build_vxworks/intro.html | 32 +++--- db/docs/ref/build_vxworks/introae.html | 6 +- db/docs/ref/build_vxworks/notes.html | 28 ++--- db/docs/ref/build_win/faq.html | 12 +-- db/docs/ref/build_win/intro.html | 60 +++++++---- db/docs/ref/build_win/notes.html | 19 +++- db/docs/ref/build_win/small.html | 16 +-- db/docs/ref/build_win/test.html | 6 +- db/docs/ref/build_win/unicode.html | 40 +++++++ db/docs/ref/cam/app.html | 131 +++++++++++++++++++++++ db/docs/ref/cam/intro.html | 16 +-- db/docs/ref/debug/common.html | 15 ++- db/docs/ref/debug/compile.html | 14 +-- db/docs/ref/debug/intro.html | 24 ++--- db/docs/ref/debug/printlog.html | 20 ++-- db/docs/ref/debug/runtime.html | 6 +- db/docs/ref/distrib/layout.html | 14 ++- db/docs/ref/distrib/port.html | 6 +- db/docs/ref/dumpload/format.html | 6 +- db/docs/ref/dumpload/text.html | 6 +- db/docs/ref/dumpload/utility.html | 12 +-- db/docs/ref/env/create.html | 16 +-- db/docs/ref/env/db_config.html | 8 +- db/docs/ref/env/encrypt.html | 6 +- db/docs/ref/env/error.html | 6 +- db/docs/ref/env/faq.html | 6 +- db/docs/ref/env/intro.html | 63 +++-------- db/docs/ref/env/naming.html | 30 +++--- db/docs/ref/env/open.html | 6 +- db/docs/ref/env/region.html | 6 +- db/docs/ref/env/remote.html | 12 +-- db/docs/ref/env/security.html | 16 +-- db/docs/ref/ext/mod.html | 69 ++++++++++++ db/docs/ref/ext/perl.html | 43 ++++++++ db/docs/ref/ext/php.html | 102 ++++++++++++++++++ db/docs/ref/install/file.html | 6 +- db/docs/ref/install/multiple.html | 12 +-- db/docs/ref/intro/data.html | 6 +- db/docs/ref/intro/dbis.html | 6 +- db/docs/ref/intro/dbisnot.html | 6 +- db/docs/ref/intro/distrib.html | 6 +- db/docs/ref/intro/need.html | 6 +- db/docs/ref/intro/products.html | 12 +-- db/docs/ref/intro/terrain.html | 6 +- db/docs/ref/intro/what.html | 14 +-- db/docs/ref/intro/where.html | 6 +- db/docs/ref/java/compat.html | 6 +- db/docs/ref/java/conf.html | 12 +-- db/docs/ref/java/faq.html | 72 ++++++++++--- db/docs/ref/java/program.html | 103 ++++++------------ db/docs/ref/lock/am_conv.html | 6 +- db/docs/ref/lock/cam_conv.html | 10 +- db/docs/ref/lock/config.html | 6 +- db/docs/ref/lock/dead.html | 6 +- db/docs/ref/lock/deaddbg.html | 6 +- db/docs/ref/lock/intro.html | 34 +++--- db/docs/ref/lock/max.html | 26 ++--- db/docs/ref/lock/nondb.html | 6 +- db/docs/ref/lock/notxn.html | 6 +- db/docs/ref/lock/page.html | 6 +- db/docs/ref/lock/stdmode.html | 16 +-- db/docs/ref/lock/timeout.html | 14 ++- db/docs/ref/lock/twopl.html | 6 +- db/docs/ref/log/config.html | 6 +- db/docs/ref/log/intro.html | 49 ++++----- db/docs/ref/log/limits.html | 22 ++-- db/docs/ref/mp/config.html | 6 +- db/docs/ref/mp/intro.html | 48 +++++---- db/docs/ref/pindex.src | 37 +++---- db/docs/ref/program/appsignals.html | 6 +- db/docs/ref/program/cache.html | 6 +- db/docs/ref/program/compatible.html | 6 +- db/docs/ref/program/copy.html | 37 +++---- db/docs/ref/program/environ.html | 12 +-- db/docs/ref/program/errorret.html | 21 ++-- db/docs/ref/program/faq.html | 6 +- db/docs/ref/program/mt.html | 6 +- db/docs/ref/program/namespace.html | 28 +++-- db/docs/ref/program/ram.html | 65 +++++++----- db/docs/ref/program/runtime.html | 11 +- db/docs/ref/program/scope.html | 20 ++-- db/docs/ref/refs/refs.html | 43 ++++---- db/docs/ref/refs/witold.html | 6 +- db/docs/ref/rep/app.html | 62 ++++++----- db/docs/ref/rep/comm.html | 32 +++--- db/docs/ref/rep/elect.html | 21 ++-- db/docs/ref/rep/ex.html | 22 ++-- db/docs/ref/rep/ex_comm.html | 6 +- db/docs/ref/rep/ex_rq.html | 8 +- db/docs/ref/rep/faq.html | 14 +-- db/docs/ref/rep/id.html | 12 +-- db/docs/ref/rep/intro.html | 20 ++-- db/docs/ref/rep/newsite.html | 17 +-- db/docs/ref/rep/partition.html | 6 +- db/docs/ref/rep/pri.html | 6 +- db/docs/ref/rep/trans.html | 12 +-- db/docs/ref/rpc/client.html | 6 +- db/docs/ref/rpc/faq.html | 12 +-- db/docs/ref/rpc/intro.html | 12 +-- db/docs/ref/rpc/server.html | 6 +- db/docs/ref/sequence/intro.html | 64 ++++++++++++ db/docs/ref/tcl/error.html | 6 +- db/docs/ref/tcl/faq.html | 12 +-- db/docs/ref/tcl/intro.html | 20 ++-- db/docs/ref/tcl/program.html | 6 +- db/docs/ref/tcl/using.html | 6 +- db/docs/ref/test/faq.html | 6 +- db/docs/ref/test/run.html | 12 +-- db/docs/ref/transapp/admin.html | 6 +- db/docs/ref/transapp/app.html | 29 +++--- db/docs/ref/transapp/archival.html | 62 +++++------ db/docs/ref/transapp/atomicity.html | 6 +- db/docs/ref/transapp/checkpoint.html | 40 +++---- db/docs/ref/transapp/cursor.html | 14 +-- db/docs/ref/transapp/data_open.html | 19 ++-- db/docs/ref/transapp/deadlock.html | 6 +- db/docs/ref/transapp/env_open.html | 6 +- db/docs/ref/transapp/faq.html | 26 ++--- db/docs/ref/transapp/filesys.html | 6 +- db/docs/ref/transapp/hotfail.html | 6 +- db/docs/ref/transapp/inc.html | 6 +- db/docs/ref/transapp/intro.html | 12 +-- db/docs/ref/transapp/logfile.html | 6 +- db/docs/ref/transapp/nested.html | 6 +- db/docs/ref/transapp/put.html | 6 +- db/docs/ref/transapp/read.html | 22 +++- db/docs/ref/transapp/reclimit.html | 6 +- db/docs/ref/transapp/recovery.html | 20 ++-- db/docs/ref/transapp/term.html | 22 ++-- db/docs/ref/transapp/throughput.html | 6 +- db/docs/ref/transapp/tune.html | 49 +++++---- db/docs/ref/transapp/why.html | 14 +-- db/docs/ref/txn/config.html | 6 +- db/docs/ref/txn/intro.html | 33 +++--- db/docs/ref/txn/limits.html | 12 +-- db/docs/ref/upgrade.2.0/convert.html | 6 +- db/docs/ref/upgrade.2.0/disk.html | 6 +- db/docs/ref/upgrade.2.0/intro.html | 9 +- db/docs/ref/upgrade.2.0/system.html | 6 +- db/docs/ref/upgrade.2.0/toc.html | 9 +- db/docs/ref/upgrade.3.0/close.html | 6 +- db/docs/ref/upgrade.3.0/cxx.html | 6 +- db/docs/ref/upgrade.3.0/db.html | 6 +- db/docs/ref/upgrade.3.0/db_cxx.html | 6 +- db/docs/ref/upgrade.3.0/dbenv.html | 6 +- db/docs/ref/upgrade.3.0/dbenv_cxx.html | 6 +- db/docs/ref/upgrade.3.0/dbinfo.html | 6 +- db/docs/ref/upgrade.3.0/disk.html | 6 +- db/docs/ref/upgrade.3.0/eacces.html | 6 +- db/docs/ref/upgrade.3.0/eagain.html | 6 +- db/docs/ref/upgrade.3.0/envopen.html | 6 +- db/docs/ref/upgrade.3.0/func.html | 6 +- db/docs/ref/upgrade.3.0/intro.html | 9 +- db/docs/ref/upgrade.3.0/java.html | 14 +-- db/docs/ref/upgrade.3.0/join.html | 6 +- db/docs/ref/upgrade.3.0/jump_set.html | 6 +- db/docs/ref/upgrade.3.0/lock_detect.html | 6 +- db/docs/ref/upgrade.3.0/lock_notheld.html | 6 +- db/docs/ref/upgrade.3.0/lock_put.html | 6 +- db/docs/ref/upgrade.3.0/lock_stat.html | 6 +- db/docs/ref/upgrade.3.0/log_register.html | 6 +- db/docs/ref/upgrade.3.0/log_stat.html | 6 +- db/docs/ref/upgrade.3.0/memp_stat.html | 6 +- db/docs/ref/upgrade.3.0/open.html | 6 +- db/docs/ref/upgrade.3.0/rmw.html | 6 +- db/docs/ref/upgrade.3.0/stat.html | 6 +- db/docs/ref/upgrade.3.0/toc.html | 9 +- db/docs/ref/upgrade.3.0/txn_begin.html | 6 +- db/docs/ref/upgrade.3.0/txn_commit.html | 6 +- db/docs/ref/upgrade.3.0/txn_stat.html | 6 +- db/docs/ref/upgrade.3.0/value_set.html | 6 +- db/docs/ref/upgrade.3.0/xa.html | 6 +- db/docs/ref/upgrade.3.1/btstat.html | 6 +- db/docs/ref/upgrade.3.1/config.html | 6 +- db/docs/ref/upgrade.3.1/disk.html | 6 +- db/docs/ref/upgrade.3.1/dup.html | 6 +- db/docs/ref/upgrade.3.1/env.html | 6 +- db/docs/ref/upgrade.3.1/intro.html | 9 +- db/docs/ref/upgrade.3.1/log_register.html | 6 +- db/docs/ref/upgrade.3.1/logalloc.html | 6 +- db/docs/ref/upgrade.3.1/memp_register.html | 6 +- db/docs/ref/upgrade.3.1/put.html | 6 +- db/docs/ref/upgrade.3.1/set_feedback.html | 6 +- db/docs/ref/upgrade.3.1/set_paniccall.html | 6 +- db/docs/ref/upgrade.3.1/set_tx_recover.html | 6 +- db/docs/ref/upgrade.3.1/sysmem.html | 6 +- db/docs/ref/upgrade.3.1/tcl.html | 6 +- db/docs/ref/upgrade.3.1/tmp.html | 6 +- db/docs/ref/upgrade.3.1/toc.html | 9 +- db/docs/ref/upgrade.3.1/txn_check.html | 6 +- db/docs/ref/upgrade.3.2/callback.html | 6 +- db/docs/ref/upgrade.3.2/db_dump.html | 6 +- db/docs/ref/upgrade.3.2/disk.html | 6 +- db/docs/ref/upgrade.3.2/handle.html | 23 ++-- db/docs/ref/upgrade.3.2/incomplete.html | 18 ++-- db/docs/ref/upgrade.3.2/intro.html | 9 +- db/docs/ref/upgrade.3.2/mutexlock.html | 6 +- db/docs/ref/upgrade.3.2/notfound.html | 21 ++-- db/docs/ref/upgrade.3.2/renumber.html | 6 +- db/docs/ref/upgrade.3.2/set_flags.html | 6 +- db/docs/ref/upgrade.3.2/toc.html | 9 +- db/docs/ref/upgrade.3.2/tx_recover.html | 6 +- db/docs/ref/upgrade.3.3/alloc.html | 26 ++--- db/docs/ref/upgrade.3.3/bigfile.html | 6 +- db/docs/ref/upgrade.3.3/conflict.html | 6 +- db/docs/ref/upgrade.3.3/disk.html | 6 +- db/docs/ref/upgrade.3.3/getswap.html | 6 +- db/docs/ref/upgrade.3.3/gettype.html | 6 +- db/docs/ref/upgrade.3.3/intro.html | 9 +- db/docs/ref/upgrade.3.3/memp_fget.html | 6 +- db/docs/ref/upgrade.3.3/rpc.html | 8 +- db/docs/ref/upgrade.3.3/shared.html | 6 +- db/docs/ref/upgrade.3.3/toc.html | 9 +- db/docs/ref/upgrade.3.3/txn_prepare.html | 6 +- db/docs/ref/upgrade.4.0/asr.html | 6 +- db/docs/ref/upgrade.4.0/cxx.html | 6 +- db/docs/ref/upgrade.4.0/deadlock.html | 6 +- db/docs/ref/upgrade.4.0/disk.html | 6 +- db/docs/ref/upgrade.4.0/env.html | 6 +- db/docs/ref/upgrade.4.0/intro.html | 9 +- db/docs/ref/upgrade.4.0/java.html | 8 +- db/docs/ref/upgrade.4.0/lock.html | 6 +- db/docs/ref/upgrade.4.0/lock_id_free.html | 6 +- db/docs/ref/upgrade.4.0/log.html | 6 +- db/docs/ref/upgrade.4.0/mp.html | 6 +- db/docs/ref/upgrade.4.0/rpc.html | 8 +- db/docs/ref/upgrade.4.0/set_lk_max.html | 6 +- db/docs/ref/upgrade.4.0/toc.html | 9 +- db/docs/ref/upgrade.4.0/txn.html | 6 +- db/docs/ref/upgrade.4.1/app_dispatch.html | 6 +- db/docs/ref/upgrade.4.1/checkpoint.html | 6 +- db/docs/ref/upgrade.4.1/cxx.html | 6 +- db/docs/ref/upgrade.4.1/disk.html | 6 +- db/docs/ref/upgrade.4.1/excl.html | 6 +- db/docs/ref/upgrade.4.1/fop.html | 8 +- db/docs/ref/upgrade.4.1/hash_nelem.html | 6 +- db/docs/ref/upgrade.4.1/incomplete.html | 15 ++- db/docs/ref/upgrade.4.1/intro.html | 9 +- db/docs/ref/upgrade.4.1/java.html | 27 ++--- db/docs/ref/upgrade.4.1/log_register.html | 6 +- db/docs/ref/upgrade.4.1/log_stat.html | 6 +- db/docs/ref/upgrade.4.1/memp_sync.html | 6 +- db/docs/ref/upgrade.4.1/toc.html | 9 +- db/docs/ref/upgrade.4.2/cksum.html | 9 +- db/docs/ref/upgrade.4.2/client.html | 9 +- db/docs/ref/upgrade.4.2/del.html | 28 ++--- db/docs/ref/upgrade.4.2/disk.html | 12 +-- db/docs/ref/upgrade.4.2/intro.html | 9 +- db/docs/ref/upgrade.4.2/java.html | 22 ++-- db/docs/ref/upgrade.4.2/lockng.html | 9 +- db/docs/ref/upgrade.4.2/nosync.html | 9 +- db/docs/ref/upgrade.4.2/priority.html | 9 +- db/docs/ref/upgrade.4.2/queue.html | 9 +- db/docs/ref/upgrade.4.2/repinit.html | 9 +- db/docs/ref/upgrade.4.2/tcl.html | 6 +- db/docs/ref/upgrade.4.2/toc.html | 9 +- db/docs/ref/upgrade.4.2/verify.html | 9 +- db/docs/ref/upgrade.4.3/cput.html | 26 +++++ db/docs/ref/upgrade.4.3/disk.html | 26 +++++ db/docs/ref/upgrade.4.3/enomem.html | 43 ++++++++ db/docs/ref/upgrade.4.3/err.html | 33 ++++++ db/docs/ref/upgrade.4.3/fileopen.html | 24 +++++ db/docs/ref/upgrade.4.3/intro.html | 26 +++++ db/docs/ref/upgrade.4.3/java.html | 63 +++++++++++ db/docs/ref/upgrade.4.3/log.html | 33 ++++++ db/docs/ref/upgrade.4.3/repl.html | 40 +++++++ db/docs/ref/upgrade.4.3/rtc.html | 25 +++++ db/docs/ref/upgrade.4.3/stat.html | 26 +++++ db/docs/ref/upgrade.4.3/toc.html | 37 +++++++ db/docs/ref/upgrade.4.3/verb.html | 33 ++++++ db/docs/ref/upgrade/process.html | 6 +- db/docs/ref/upgrade/version.html | 6 +- db/docs/ref/xa/build.html | 14 +-- db/docs/ref/xa/faq.html | 8 +- db/docs/ref/xa/intro.html | 6 +- db/docs/ref/xa/xa_config.html | 6 +- db/docs/ref/xa/xa_intro.html | 6 +- 358 files changed, 3175 insertions(+), 2092 deletions(-) create mode 100644 db/docs/ref/am/second.javas create mode 100644 db/docs/ref/build_win/unicode.html create mode 100644 db/docs/ref/cam/app.html create mode 100644 db/docs/ref/ext/mod.html create mode 100644 db/docs/ref/ext/perl.html create mode 100644 db/docs/ref/ext/php.html create mode 100644 db/docs/ref/sequence/intro.html create mode 100644 db/docs/ref/upgrade.4.3/cput.html create mode 100644 db/docs/ref/upgrade.4.3/disk.html create mode 100644 db/docs/ref/upgrade.4.3/enomem.html create mode 100644 db/docs/ref/upgrade.4.3/err.html create mode 100644 db/docs/ref/upgrade.4.3/fileopen.html create mode 100644 db/docs/ref/upgrade.4.3/intro.html create mode 100644 db/docs/ref/upgrade.4.3/java.html create mode 100644 db/docs/ref/upgrade.4.3/log.html create mode 100644 db/docs/ref/upgrade.4.3/repl.html create mode 100644 db/docs/ref/upgrade.4.3/rtc.html create mode 100644 db/docs/ref/upgrade.4.3/stat.html create mode 100644 db/docs/ref/upgrade.4.3/toc.html create mode 100644 db/docs/ref/upgrade.4.3/verb.html (limited to 'db/docs/ref') diff --git a/db/docs/ref/am/close.html b/db/docs/ref/am/close.html index e4d62bbbe..9367fcd17 100644 --- a/db/docs/ref/am/close.html +++ b/db/docs/ref/am/close.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Database close - + @@ -20,8 +20,8 @@ default, DB->close also flushes all modified records from the database cache to disk.

There is one flag that you can set to customize DB->close:

-

-

DB_NOSYNC
Do not flush cached information to disk. +
+
DB_NOSYNC
Do not flush cached information to disk.
It is important to understand that flushing cached information to disk only minimizes the window of opportunity for corrupted data, it @@ -39,6 +39,6 @@ atomically replace the original database with the updated copy.

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/count.html b/db/docs/ref/am/count.html index 71d1e6900..8628dc3ee 100644 --- a/db/docs/ref/am/count.html +++ b/db/docs/ref/am/count.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Data item count - + @@ -24,6 +24,6 @@ the database supports duplicate data items, in which case it may be any number of items.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/curclose.html b/db/docs/ref/am/curclose.html index a0461fe52..8f7d7efc9 100644 --- a/db/docs/ref/am/curclose.html +++ b/db/docs/ref/am/curclose.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Cursor close - + @@ -24,6 +24,6 @@ systems, cursors may not exist outside of a transaction and so must be explicitly closed.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/curdel.html b/db/docs/ref/am/curdel.html index a4e463292..98d27a6e2 100644 --- a/db/docs/ref/am/curdel.html +++ b/db/docs/ref/am/curdel.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Deleting records with a cursor - + @@ -22,6 +22,6 @@ refers. In all cases, the cursor position is unchanged after a delete.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/curdup.html b/db/docs/ref/am/curdup.html index 6a10fede6..3110876b3 100644 --- a/db/docs/ref/am/curdup.html +++ b/db/docs/ref/am/curdup.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Duplicating a cursor - + @@ -30,6 +30,6 @@ self-deadlocks. For further details, refer to Access method locking conventions.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/curget.html b/db/docs/ref/am/curget.html index 1e2316f1b..4b784523e 100644 --- a/db/docs/ref/am/curget.html +++ b/db/docs/ref/am/curget.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Retrieving records with a cursor - + @@ -24,46 +24,46 @@ also take a supplied key and retrieve the data associated with that key from the database. There are several flags that you can set to customize retrieval.

Cursor position flags

-

-

DB_FIRST, DB_LAST
Return the first (last) record in the database. -

DB_NEXT, DB_PREV
Return the next (previous) record in the database. -

DB_NEXT_DUP
Return the next record in the database, if it is a duplicate data item +
+
DB_FIRST, DB_LAST
Return the first (last) record in the database. +
DB_NEXT, DB_PREV
Return the next (previous) record in the database. +
DB_NEXT_DUP
Return the next record in the database, if it is a duplicate data item for the current key. -

DB_NEXT_NODUP, DB_PREV_NODUP
Return the next (previous) record in the database that is not a +
DB_NEXT_NODUP, DB_PREV_NODUP
Return the next (previous) record in the database that is not a duplicate data item for the current key. -

DB_CURRENT
Return the record from the database to which the cursor currently refers. +
DB_CURRENT
Return the record from the database to which the cursor currently refers.

Retrieving specific key/data pairs

-

-

DB_SET
Return the record from the database that matches the supplied key. In +
+
DB_SET
Return the record from the database that matches the supplied key. In the case of duplicates the first duplicate is returned and the cursor is positioned at the beginning of the duplicate list. The user can then traverse the duplicate entries for the key. -

DB_SET_RANGE
Return the smallest record in the database greater than or equal to the +
DB_SET_RANGE
Return the smallest record in the database greater than or equal to the supplied key. This functionality permits partial key matches and range searches in the Btree access method. -

DB_GET_BOTH
Return the record from the database that matches both the supplied key +
DB_GET_BOTH
Return the record from the database that matches both the supplied key and data items. This is particularly useful when there are large numbers of duplicate records for a key, as it allows the cursor to easily be positioned at the correct place for traversal of some part of a large set of duplicate records. -

DB_GET_BOTH_RANGE
Return the smallest record in the database greater than or equal to the +
DB_GET_BOTH_RANGE
Return the smallest record in the database greater than or equal to the supplied key and data items.

Retrieving based on record numbers

-

-

DB_SET_RECNO
If the underlying database is a Btree, and was configured so that it is +
+
DB_SET_RECNO
If the underlying database is a Btree, and was configured so that it is possible to search it by logical record number, retrieve a specific record based on a record number argument. -

DB_GET_RECNO
If the underlying database is a Btree, and was configured so that it is +
DB_GET_RECNO
If the underlying database is a Btree, and was configured so that it is possible to search it by logical record number, return the record number for the record to which the cursor refers.

Special-purpose flags

-

-

DB_CONSUME
Read-and-delete: the first record (the head) of the queue is returned and +
+
DB_CONSUME
Read-and-delete: the first record (the head) of the queue is returned and deleted. The underlying database must be a Queue. -

DB_RMW
Read-modify-write: acquire write locks instead of read locks during +
DB_RMW
Read-modify-write: acquire write locks instead of read locks during retrieval. This can enhance performance in threaded applications by reducing the chance of deadlock.
@@ -130,6 +130,6 @@ err: if (close_dbc && (ret = dbcp->c_close(dbcp)) != 0) }

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/curput.html b/db/docs/ref/am/curput.html index 327fe379c..ea02c7ac0 100644 --- a/db/docs/ref/am/curput.html +++ b/db/docs/ref/am/curput.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Storing records with a cursor - + @@ -20,15 +20,15 @@ general, DBcursor->c_put takes a key and inserts the associated data into the database, at a location controlled by a specified flag.

There are several flags that you can set to customize storage:

-

-

DB_AFTER
Create a new record, immediately after the record to which the cursor +
+
DB_AFTER
Create a new record, immediately after the record to which the cursor refers. -

DB_BEFORE
Create a new record, immediately before the record to which the cursor +
DB_BEFORE
Create a new record, immediately before the record to which the cursor refers. -

DB_CURRENT
Replace the data part of the record to which the cursor refers. -

DB_KEYFIRST
Create a new record as the first of the duplicate records for the +
DB_CURRENT
Replace the data part of the record to which the cursor refers. +
DB_KEYFIRST
Create a new record as the first of the duplicate records for the supplied key. -

DB_KEYLAST
Create a new record, as the last of the duplicate records for the supplied +
DB_KEYLAST
Create a new record, as the last of the duplicate records for the supplied key.

In all cases, the cursor is repositioned by a DBcursor->c_put operation @@ -85,6 +85,6 @@ err: if ((ret = dbcp->c_close(dbcp)) != 0) }

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/cursor.html b/db/docs/ref/am/cursor.html index 647f48904..ed8d3edc6 100644 --- a/db/docs/ref/am/cursor.html +++ b/db/docs/ref/am/cursor.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Cursor operations - + @@ -46,6 +46,6 @@ using DBcursor->c_close.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/delete.html b/db/docs/ref/am/delete.html index 8a8d2ed52..e29cffdff 100644 --- a/db/docs/ref/am/delete.html +++ b/db/docs/ref/am/delete.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Deleting records - + @@ -24,6 +24,6 @@ it from the database.

individual duplicate records, you must use a Berkeley DB cursor interface.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/get.html b/db/docs/ref/am/get.html index f541740fd..030ce2c59 100644 --- a/db/docs/ref/am/get.html +++ b/db/docs/ref/am/get.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Retrieving records - + @@ -20,13 +20,13 @@ DB->get takes a key and returns the associated data from the database.

There are a few flags that you can set to customize retrieval:

-

-

DB_GET_BOTH
Search for a matching key and data item, that is, only return success +
+
DB_GET_BOTH
Search for a matching key and data item, that is, only return success if both the key and the data items match those stored in the database. -

DB_RMW
Read-modify-write: acquire write locks instead of read locks during +
DB_RMW
Read-modify-write: acquire write locks instead of read locks during retrieval. This can enhance performance in threaded applications by reducing the chance of deadlock. -

DB_SET_RECNO
If the underlying database is a Btree, and was configured so that it +
DB_SET_RECNO
If the underlying database is a Btree, and was configured so that it is possible to search it by logical record number, retrieve a specific record.
@@ -35,6 +35,6 @@ record. set.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/join.html b/db/docs/ref/am/join.html index aa1157e1c..7805ac7b2 100644 --- a/db/docs/ref/am/join.html +++ b/db/docs/ref/am/join.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Equality Join - + @@ -70,11 +70,11 @@ to the DB->set_flags method.

What the DB->join method does is review a list of secondary keys, and, when it finds a data item that appears as a data item for all of the -secondary keys, it uses that data items as a lookup into the primary +secondary keys, it uses that data item as a lookup into the primary database, and returns the associated data item.

-

If there were a another secondary index that had as its key the -cost of the fruit, a similar lookup could be done on stores -where inexpensive fruit could be purchased:

+

If there were another secondary index that had as its key the cost +of the fruit, a similar lookup could be done on stores where inexpensive +fruit could be purchased:

@@ -97,16 +97,16 @@ would be used as the key for retrieval from the primary index, and would then return the store where expensive, red fruit could be purchased.

Example

Consider the following three databases:

-

-

personnel

    +
    +
    personnel

    • key = SSN
    • data = record containing name, address, phone number, job title
    -

    lastname

      +
      lastname

      • key = lastname
      • data = SSN
      -

      jobs

        +
        jobs

        • key = job title
        • data = SSN
        @@ -186,6 +186,6 @@ from the join method. This code then loops over the join cursor getting the personnel records of each one until there are no more.

Secondary key:Secondary data:
expensive blueberry

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/open.html b/db/docs/ref/am/open.html index 079f7cc50..f49ee98ed 100644 --- a/db/docs/ref/am/open.html +++ b/db/docs/ref/am/open.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Database open - + @@ -17,31 +17,31 @@

Database open

The DB->open method opens a database, and takes five arguments:

-

-

file
The name of the file to be opened. -

database
An optional database name. -

type
The type of database to open. This value will be one of the four access +
+
file
The name of the file to be opened. +
database
An optional database name. +
type
The type of database to open. This value will be one of the four access methods Berkeley DB supports: DB_BTREE, DB_HASH, DB_QUEUE or DB_RECNO, or the special value DB_UNKNOWN, which allows you to open an existing file without knowing its type. -

mode
The permissions to give to any created file. +
mode
The permissions to give to any created file.

There are a few flags that you can set to customize open:

-

-

DB_CREATE
Create the underlying database and any necessary physical files. -

DB_NOMMAP
Do not map this database into process memory. -

DB_RDONLY
Treat the data base as read-only. -

DB_THREAD
The returned handle is free-threaded, that is, it can be used +
+
DB_CREATE
Create the underlying database and any necessary physical files. +
DB_NOMMAP
Do not map this database into process memory. +
DB_RDONLY
Treat the data base as read-only. +
DB_THREAD
The returned handle is free-threaded, that is, it can be used simultaneously by multiple threads within the process. -

DB_TRUNCATE
Physically truncate the underlying database file, discarding all +
DB_TRUNCATE
Physically truncate the underlying database file, discarding all databases it contained. Underlying filesystem primitives are used to implement this flag. For this reason it is only applicable to the physical file and cannot be used to discard individual databases from within physical files. -

DB_UPGRADE
Upgrade the database format as necessary. +
DB_UPGRADE
Upgrade the database format as necessary.

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/opensub.html b/db/docs/ref/am/opensub.html index bf7aae61d..3be91dd0a 100644 --- a/db/docs/ref/am/opensub.html +++ b/db/docs/ref/am/opensub.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Opening multiple databases in a single file - + @@ -21,7 +21,7 @@ reasonably small, in order to avoid creating a large number of underlying files, or when it is desirable to include secondary index databases in the same file as the primary index database. Multiple databases are an administrative convenience and using them is unlikely -to effect database performance. To open or create a file that will +to affect database performance. To open or create a file that will include more than a single database, specify a database name when calling the DB->open method.

Physical files do not need to be comprised of a single type of database, @@ -34,48 +34,48 @@ standard Berkeley DB file size and disk space limitations.

not initially created using a database name, that is, the file must initially be specified as capable of containing multiple databases for a second database to be created in it.

-

It is not an error to open a file that contains multiple databases without -specifying a database name, however the database type should be specified -as DB_UNKNOWN and the database must be opened read-only. The handle that -is returned from such a call is a handle on a database whose key values -are the names of the databases stored in the database file and whose data -values are opaque objects. No keys or data values may be modified or -stored using this database handle.

-

Storing multiple databases in a single file is identical to storing each -database in a separate file with the exception of some configuration -information and the likely need for locking and a shared underlying -memory pool.

-

There are four types of configuration information which must be specified -consistently for all databases in a file, rather than differing on a -per-database basis. They are: byte order, checksum and encryption -behavior, and page size. When creating additional databases in a file, -any of these configuration values specified must be consistent with the -existing databases in the file or an error will be returned.

+

It is not an error to open a file that contains multiple databases +without specifying a database name, however the database type should be +specified as DB_UNKNOWN and the database must be opened read-only. The +handle that is returned from such a call is a handle on a database whose +key values are the names of the databases stored in the database file +and whose data values are opaque objects. No keys or data values may be +modified or stored using this database handle.

+

The main difference when storing multiple databases in a single file +rather than in separate files is that if any of the databases +in a file is opened for updates, all of the databases in the file must +share a memory pool. In other words, they must be opened in the same +environment. In addition, there are some constraints on configuration +information that apply to databases in the same file.

-An additional difference is how locking and the underlying memory pool -services must to be configured. As an example, consider two databases -instantiated in two different physical files. If access to each -separate database is single-threaded, there is no reason to perform any -locking of any kind, and the two databases may be read and written -simultaneously. Further, there would be no requirement to create a -shared database environment in which to open the databases.

-

Because multiple databases in a file exist in a single physical file, -opening two databases in the same file requires locking be enabled -(unless access to the databases is known to be single-threaded, that -is, only one of the databases is ever read or written at a time). -As the locks for the two databases can only conflict during page -allocation, this additional locking is unlikely to effect performance.

+If databases are in separate files, and access to each separate database +is single-threaded, there is no reason to perform any locking of any +kind, and the two databases may be read and written simultaneously. +Further, there would be no requirement to create a shared database +environment in which to open the databases.

+

However, since multiple databases in a file exist in a single physical +file, opening two databases in the same file simultaneously requires +locking be enabled unless all of the handles are read-only. As the +locks for the two databases can only conflict during page allocation, +this additional locking is unlikely to affect performance.

Also, because multiple databases in a file exist in a single physical file, opening two databases in the same file requires the databases share an underlying memory pool so that per-physical-file information common between the two databases is updated correctly.

-

In summary, programmers writing applications that open multiple databases -in a single file will almost certainly need to create a shared database -environment in the application as well. For more information on -database environments, see Database +

In summary, programmers writing applications that open multiple +databases in a single file will almost certainly need to create a shared +database environment in the application as well. For more information +on database environments, see Database environment introduction.

+

In addition, there are four types of configuration information which +must be specified consistently for all databases in a file, rather than +differing on a per-database basis. They are: byte order, checksum and +encryption behavior, and page size. When creating additional databases +in a file, any of these configuration values specified must be +consistent with the existing databases in the file or an error will be +returned.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/ops.html b/db/docs/ref/am/ops.html index dc1b2c431..5e9af0ca0 100644 --- a/db/docs/ref/am/ops.html +++ b/db/docs/ref/am/ops.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Access method operations - + @@ -29,60 +29,62 @@ version upgrade (DB->upgrade), veri (DB->verify), flushing to a backing file (DB->sync), and association of secondary indices (DB->associate). Database handles are eventually closed using DB->close.

- +
- + - - + - + - + + + + + + - - - - - - + + - - - - + + + + + - - - - - + + + + + +
Databases and Related MethodsDescription
Database OperationsDescription
db_createCreate a database handle
DB->associateAssociate a secondary index
DB->closeClose a database
DB->cursorCreate a cursor handle
DB->delDelete items from a database
DB->errError message with error string
DB->errxError message
DB->fdReturn a file descriptor from a database
DB->getGet items from a database
DB->get, DB->pgetGet items from a database
DB->get_byteswappedReturn if the underlying database is in host order
DB->get_envReturn a handle for the underlying database environment
DB->get_envReturn database environment handle
DB->get_typeReturn the database type
DB->joinPerform a database join on cursors
DB->key_rangeReturn estimate of key location
DB->openOpen a database
DB->pgetGet items from a database
DB->putStore items into a database
DB->removeRemove a database
DB->renameRename a database
DB->stat, DB->stat_printDatabase statistics
DB->syncFlush a database to stable storage
DB->truncateEmpty a database
DB->upgradeUpgrade a database
DB->verifyVerify/salvage a database
Database Configuration
DB->set_allocSet local space allocation functions
DB->set_append_recnoSet record append callback
DB->set_bt_compareSet a Btree comparison function
DB->set_bt_minkeySet the minimum number of keys per Btree page
DB->set_bt_prefixSet a Btree prefix comparison function
DB->set_cachesizeSet the database cache size
DB->set_dup_compareSet a duplicate comparison function
DB->set_encryptSet the database cryptographic key
DB->set_errcallSet error message callback
DB->set_errfileSet error message FILE
DB->set_errcall, DB->set_msgcallSet error and informational message callback
DB->set_errfile, DB->set_msgfileSet error and informational message FILE
DB->set_errpfxSet error message prefix
DB->set_feedbackSet feedback callback
DB->set_flagsGeneral database configuration
DB->set_h_ffactorSet the Hash table density
DB->set_h_hashSet a hashing function
DB->set_h_nelemSet the Hash table size
DB->set_lorderSet the database byte order
DB->set_pagesizeSet the underlying database page size
DB->set_paniccallSet panic callback
DB->set_q_extentsizeSet Queue database extent size
Btree/Recno Configuration
DB->set_append_recnoSet record append callback
DB->set_bt_compareSet a Btree comparison function
DB->set_bt_minkeySet the minimum number of keys per Btree page
DB->set_bt_prefixSet a Btree prefix comparison function
DB->set_re_delimSet the variable-length record delimiter
DB->set_re_lenSet the fixed-length record length
DB->set_re_padSet the fixed-length record pad byte
DB->set_re_sourceSet the backing Recno text file
DB->statReturn database statistics
DB->syncFlush a database to stable storage
DB->truncateEmpty a database
DB->upgradeUpgrade a database
DB->verifyVerify/salvage a database
Hash Configuration
DB->set_h_ffactorSet the Hash table density
DB->set_h_hashSet a hashing function
DB->set_h_nelemSet the Hash table size
Queue Configuration
DB->set_q_extentsizeSet Queue database extent size

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/put.html b/db/docs/ref/am/put.html index d9156bd98..f56346b66 100644 --- a/db/docs/ref/am/put.html +++ b/db/docs/ref/am/put.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Storing records - + @@ -20,11 +20,11 @@ DB->put takes a key and stores the associated data into the database.

There are a few flags that you can set to customize storage:

-

-

DB_APPEND
Simply append the data to the end of the database, treating the database +
+
DB_APPEND
Simply append the data to the end of the database, treating the database much like a simple log. This flag is only valid for the Queue and Recno access methods. -

DB_NOOVERWRITE
Only store the data item if the key does not already appear in the database. +
DB_NOOVERWRITE
Only store the data item if the key does not already appear in the database.

If the database has been configured to support duplicate records, the DB->put method will add the new data value at the end of the duplicate @@ -32,6 +32,6 @@ set. If the database supports sorted duplicates, the new data value is inserted at the correct sorted location.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/second.html b/db/docs/ref/am/second.html index 850144b76..169a974e8 100644 --- a/db/docs/ref/am/second.html +++ b/db/docs/ref/am/second.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Secondary indices - + @@ -36,7 +36,8 @@ a secondary index in which the secondary key was this last name.

CREATE TABLE students(student_id CHAR(4) NOT NULL,
 	lastname CHAR(15), firstname CHAR(15), PRIMARY KEY(student_id));
 CREATE INDEX lname ON students(lastname);
-

In Berkeley DB, this would work as follows:

+

In Berkeley DB, this would work as follows (a +Java API example is also available):

struct student_record { char student_id[4]; char last_name[15]; @@ -213,6 +214,6 @@ a new database handle and the DB->remove secondary database handles associated with it.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/second.javas b/db/docs/ref/am/second.javas new file mode 100644 index 000000000..bb96a7bc5 --- /dev/null +++ b/db/docs/ref/am/second.javas @@ -0,0 +1,156 @@ +/*- + * Copyright (c) 2002 + * Sleepycat Software. All rights reserved. + * + * $Id: second.javas,v 10.1 2004/09/15 19:40:07 bostic Exp $ + */ +package com.sleepycat.examples; + +import com.sleepycat.db.*; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.InputStreamReader; +import java.io.IOException; +import java.io.PrintStream; + +class SecondaryExample +{ + private static final String progname = "SecondaryExample"; + private static final String DATABASE_HOME = "TESTDIR"; + + public static void main(String[] args) + { + try { + SecondaryExample app = new SecondaryExample(); + app.run(); + } catch(Exception e) { + System.err.println(progname + ": " + e); + e.printStackTrace(System.err); + System.exit(1); + } + } + + void run() throws DbException, FileNotFoundException + { + DbEnv dbenv = new DbEnv(0); + + /* Open the environment. */ + dbenv.open(DATABASE_HOME, + Db.DB_CREATE | Db.DB_INIT_LOCK | Db.DB_INIT_LOG | + Db.DB_INIT_MPOOL | Db.DB_INIT_TXN, 0); + + try { + run_app(dbenv); + } finally { + dbenv.close(0); + } + } + + private void run_app(DbEnv dbenv) + throws DbException, FileNotFoundException + { + Db dbp, sdbp; + Dbt key, pkey, skey, data; + StudentRecord srec; + + /* Open/create primary */ + dbp = new Db(dbenv, 0); + dbp.open(null, "students.db", null, Db.DB_BTREE, Db.DB_CREATE, + 0600); + + /* + * Open/create secondary. Note that it supports duplicate data + * items, since last names might not be unique. + */ + sdbp = new Db(dbenv, 0); + sdbp.set_flags(Db.DB_DUP | Db.DB_DUPSORT); + sdbp.open(null, "lastname.db", null, Db.DB_BTREE, Db.DB_CREATE, + 0600); + + try { + /* Associate the secondary with the primary. */ + dbp.associate(sdbp, new GetName(), 0); + + /* Add a new record */ + key = new Dbt(); + key.set_data("WC42".getBytes()); + key.set_size(4); + srec = new StudentRecord(); + srec.student_id = "WC42"; + srec.last_name = "Churchill "; + srec.first_name = "Winston "; + data = new Dbt(); + srec.encode(data); + + System.out.println("Adding a record with primary key " + + new String(key.get_data()) + " and secondary key " + + srec.last_name); + dbp.put(null, key, data, 0); + + /* Now do a lookup */ + skey = new Dbt(); + pkey = new Dbt(); + data = new Dbt(); + skey.set_data("Churchill ".getBytes()); + skey.set_size(15); + System.out.println("Searching with secondary key " + + new String(skey.get_data())); + sdbp.pget(null, skey, pkey, data, 0); + + System.out.println("Found a record with primary key " + + new String(pkey.get_data())); + } finally { + dbp.close(0); + sdbp.close(0); + } + } + + /* + * getname -- extracts a secondary key (the last name) from a primary + * key/data pair + */ + class GetName implements DbSecondaryKeyCreate { + public int secondary_key_create(Db secondary, + Dbt pkey, Dbt pdata, Dbt skey) { + StudentRecord srec = new StudentRecord(); + srec.decode(pdata); + + // Make a fixed-length array of last_name + byte[] last_name_data = srec.last_name.getBytes(); + byte[] last_name_raw = new byte[15]; + System.arraycopy(last_name_data, 0, last_name_raw, 0, + last_name_data.length); + + skey.set_data(last_name_raw); + skey.set_size(last_name_raw.length); + return (0); + } + } + + class StudentRecord + { + String student_id; // assumed to be 4 bytes long + String last_name; // assumed to be 15 bytes long + String first_name; // assumed to be 15 bytes long + + void decode(Dbt dbt) { + byte[] data = dbt.get_data(); + student_id = new String(data, 0, 4); + last_name = new String(data, 4, 15); + first_name = new String(data, 19, 15); + } + + void encode(Dbt dbt) { + byte[] data = new byte[34]; + System.arraycopy(student_id.getBytes(), 0, data, 0, 4); + byte[] last_name_raw = last_name.getBytes(); + System.arraycopy(last_name_raw, 0, data, 4, + last_name_raw.length); + byte[] first_name_raw = first_name.getBytes(); + System.arraycopy(first_name_raw, 0, data, 19, + first_name_raw.length); + dbt.set_data(data); + dbt.set_size(data.length); + } + } +} diff --git a/db/docs/ref/am/stat.html b/db/docs/ref/am/stat.html index 2a655278a..a1864b61d 100644 --- a/db/docs/ref/am/stat.html +++ b/db/docs/ref/am/stat.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Database statistics - + @@ -20,12 +20,12 @@ database, for example, the number of key/data pairs in the database, how the database was originally configured, and so on.

There is one flag you can set to customize the returned statistics:

-

-

DB_FAST_STAT
Return only information that can be acquired without traversing the +
+
DB_FAST_STAT
Return only information that can be acquired without traversing the entire database.

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/sync.html b/db/docs/ref/am/sync.html index b36c7f2d3..22441f8b6 100644 --- a/db/docs/ref/am/sync.html +++ b/db/docs/ref/am/sync.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Flushing the database cache - + @@ -34,6 +34,6 @@ atomically replace the original database with the updated copy.

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/truncate.html b/db/docs/ref/am/truncate.html index fe4eecd77..cd51aa52d 100644 --- a/db/docs/ref/am/truncate.html +++ b/db/docs/ref/am/truncate.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Database truncation - + @@ -19,6 +19,6 @@

The DB->truncate method empties a database of all records.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/upgrade.html b/db/docs/ref/am/upgrade.html index 37da05527..f6b0ce882 100644 --- a/db/docs/ref/am/upgrade.html +++ b/db/docs/ref/am/upgrade.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Database upgrade - + @@ -46,6 +46,6 @@ appropriate copies of their application or application sources if they may need to access archived databases without first upgrading them.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am/verify.html b/db/docs/ref/am/verify.html index ab467affb..d4958ce6a 100644 --- a/db/docs/ref/am/verify.html +++ b/db/docs/ref/am/verify.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Database verification and salvage - + @@ -46,6 +46,6 @@ preferable to any kind of data loss.

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/bt_compare.html b/db/docs/ref/am_conf/bt_compare.html index 0f9453f8b..8173dd75f 100644 --- a/db/docs/ref/am_conf/bt_compare.html +++ b/db/docs/ref/am_conf/bt_compare.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Btree comparison - + @@ -76,9 +76,7 @@ compare_dbt(dbp, a, b) well-ordered. The most important implication of being well-ordered is that the key relations must be transitive, that is, if key A is less than key B, and key B is less than key C, then the comparison routine -must also return that key A is less than key C. In addition, comparisons -will only be able to return 0 when comparing full length keys; partial -key comparisons must always return a result less than or greater than 0.

+must also return that key A is less than key C.

It is reasonable for a comparison function to not examine an entire key in some applications, which implies that partial keys may be specified to the Berkeley DB interfaces. When partial keys are specified to Berkeley DB, @@ -89,6 +87,6 @@ key stored in the database. The actual key can be retrieved by calling the DBcursor->c_get method with the DB_CURRENT flag.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/bt_minkey.html b/db/docs/ref/am_conf/bt_minkey.html index 1ad0d403f..2ca2eed2f 100644 --- a/db/docs/ref/am_conf/bt_minkey.html +++ b/db/docs/ref/am_conf/bt_minkey.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Minimum keys per page - + @@ -49,6 +49,6 @@ value incorrectly can result in overusing overflow pages and decreasing the application's overall performance.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/bt_prefix.html b/db/docs/ref/am_conf/bt_prefix.html index 7d5ec1f74..b22d9c2a0 100644 --- a/db/docs/ref/am_conf/bt_prefix.html +++ b/db/docs/ref/am_conf/bt_prefix.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Btree prefix comparison - + @@ -27,13 +27,15 @@ comparison function of the Btree, since what distinguishes any two keys depends entirely on the function used to compare them. This means that if a prefix comparison routine is specified by the application, a compatible overall comparison routine must also have been specified.

-

Prefix comparison routines are passed pointers to keys as arguments. The -keys are represented as DBT structures. The prefix comparison -function must return the number of bytes of the second key argument that -are necessary to determine if it is greater than the first key argument. -If the keys are equal, the length of the second key should be returned. -The only fields that the routines may examine in the DBT -structures are data and size fields.

+

Prefix comparison routines are passed pointers to keys as arguments. +The keys are represented as DBT structures. The only fields +the routines may examine in the DBT structures are data +and size fields.

+

The prefix comparison function must return the number of bytes necessary +to distinguish the two keys. If the keys are identical (equal and equal +in length), the length should be returned. If the keys are equal up to +the smaller of the two lengths, then the length of the smaller key plus +1 should be returned.

An example prefix comparison routine follows:

u_int32_t
 compare_prefix(dbp, a, b)
@@ -63,6 +65,6 @@ compare_prefix(dbp, a, b)
 sets can produce significantly reduced tree sizes and faster search times.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/bt_recnum.html b/db/docs/ref/am_conf/bt_recnum.html index f1953b923..6003b102f 100644 --- a/db/docs/ref/am_conf/bt_recnum.html +++ b/db/docs/ref/am_conf/bt_recnum.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Retrieving Btree records by logical record number - + @@ -101,6 +101,6 @@ err: /* Close the cursor. */ }


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/byteorder.html b/db/docs/ref/am_conf/byteorder.html index bb305f7a3..f0ee13f84 100644 --- a/db/docs/ref/am_conf/byteorder.html +++ b/db/docs/ref/am_conf/byteorder.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Selecting a byte order - + @@ -33,6 +33,6 @@ exactly as they were written when retrieved on a big-endian format architecture.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/cachesize.html b/db/docs/ref/am_conf/cachesize.html index c24e04337..6b0e5ea4a 100644 --- a/db/docs/ref/am_conf/cachesize.html +++ b/db/docs/ref/am_conf/cachesize.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Selecting a cache size - + @@ -81,6 +81,6 @@ means that the cache is working well, yielding a 97% cache hit rate. The as a whole and for each file within the cache separately.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/dup.html b/db/docs/ref/am_conf/dup.html index ec6ffd7a5..c343a7bc5 100644 --- a/db/docs/ref/am_conf/dup.html +++ b/db/docs/ref/am_conf/dup.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Duplicate data items - + @@ -70,6 +70,6 @@ presence of duplicates (sorted or not), see the DB->put, DBcursor->c_get and DBcursor->c_put documentation.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/extentsize.html b/db/docs/ref/am_conf/extentsize.html index 595e27ad2..de7603608 100644 --- a/db/docs/ref/am_conf/extentsize.html +++ b/db/docs/ref/am_conf/extentsize.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Selecting a Queue extent size - + @@ -39,6 +39,6 @@ many files, all those files will need to be open at the same time, consuming system and process file resources.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/h_ffactor.html b/db/docs/ref/am_conf/h_ffactor.html index f8720544f..6ca6b339c 100644 --- a/db/docs/ref/am_conf/h_ffactor.html +++ b/db/docs/ref/am_conf/h_ffactor.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Page fill factor - + @@ -27,6 +27,6 @@ the DB->set_h_ffactor method. be selected dynamically as pages are filled.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/h_hash.html b/db/docs/ref/am_conf/h_hash.html index b0ee1f639..5c4751f03 100644 --- a/db/docs/ref/am_conf/h_hash.html +++ b/db/docs/ref/am_conf/h_hash.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Specifying a database hash - + @@ -35,6 +35,6 @@ take a reference to a DB object, a point its length, as arguments and return an unsigned, 32-bit hash value.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/h_nelem.html b/db/docs/ref/am_conf/h_nelem.html index 0b6346c27..94d6176db 100644 --- a/db/docs/ref/am_conf/h_nelem.html +++ b/db/docs/ref/am_conf/h_nelem.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Hash table size - + @@ -28,6 +28,6 @@ of elements to be a useful value to Berkeley DB, the
PrevRefNext -

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/intro.html b/db/docs/ref/am_conf/intro.html index 5e34912c0..2f8139cf7 100644 --- a/db/docs/ref/am_conf/intro.html +++ b/db/docs/ref/am_conf/intro.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: What are the available access methods? - + -

Berkeley DB Reference Guide:
Access Methods

PrevRefNext +PrevRefNext

What are the available access methods?

@@ -39,8 +39,8 @@ the head of the queue. The Queue access method uses record level locking.

The Recno access method stores both fixed and variable-length records with logical record numbers as keys, optionally backed by a flat text (byte stream) file.

-

PrevRefNext +

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/logrec.html b/db/docs/ref/am_conf/logrec.html index c1ca82a5d..a273c6d63 100644 --- a/db/docs/ref/am_conf/logrec.html +++ b/db/docs/ref/am_conf/logrec.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Logical record numbers - + @@ -30,11 +30,6 @@ The db_recno_t type is a 32-bit unsigned type, which limits the number of logical records in a Queue or Recno database, and the maximum logical record which may be directly retrieved from a Btree database, to 4,294,967,295.

-

Record numbers in Queue databases wrap around. When the tail of the -queue reaches the maximum record number, the next record appended will -be given record number 1. If the head of the queue ever catches up to -the tail of the queue, the Berkeley DB methods will return the system error -EFBIG.

Record numbers in Recno databases can be configured to run in either mutable or fixed mode: mutable, where logical record numbers change as records are deleted or inserted, and fixed, where record numbers never @@ -45,6 +40,12 @@ as records are deleted or inserted, the logical record number for other records in the database can change. See Logically renumbering records for more information.

+

When appending new data items into Queue databases, record numbers wrap +around. When the tail of the queue reaches the maximum record number, +the next record appended will be given record number 1. If the head of +the queue ever catches up to the tail of the queue, Berkeley DB will return +the system error EFBIG. Record numbers do not wrap around when appending +new data items into Recno databases.

Configuring Btree databases to support record numbers can severely limit the throughput of applications with multiple concurrent threads writing the database, because locations used to store record counts often become @@ -118,6 +119,6 @@ recno_build(dbp) }

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/malloc.html b/db/docs/ref/am_conf/malloc.html index 8f1aed123..c8dad08f8 100644 --- a/db/docs/ref/am_conf/malloc.html +++ b/db/docs/ref/am_conf/malloc.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Non-local memory allocation - + @@ -28,6 +28,6 @@ uses to free it, or vice versa. To avoid this problem, the give Berkeley DB references to the application's allocation routines.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/pagesize.html b/db/docs/ref/am_conf/pagesize.html index 1a6002c25..2772543c8 100644 --- a/db/docs/ref/am_conf/pagesize.html +++ b/db/docs/ref/am_conf/pagesize.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Selecting a page size - + @@ -73,6 +73,6 @@ from which your database can recover See information.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/re_source.html b/db/docs/ref/am_conf/re_source.html index 7d525e5de..5e64cbcec 100644 --- a/db/docs/ref/am_conf/re_source.html +++ b/db/docs/ref/am_conf/re_source.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Flat-text backing files - + @@ -58,6 +58,6 @@ are either generated on the fly by software tools, or modified using a different mechanism such as a text editor.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/recno.html b/db/docs/ref/am_conf/recno.html index d2281a9a4..0d14433bf 100644 --- a/db/docs/ref/am_conf/recno.html +++ b/db/docs/ref/am_conf/recno.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Managing record-based databases - + @@ -65,6 +65,6 @@ files, see Flat-text backing files.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/renumber.html b/db/docs/ref/am_conf/renumber.html index 82c307581..a990d540a 100644 --- a/db/docs/ref/am_conf/renumber.html +++ b/db/docs/ref/am_conf/renumber.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Logically renumbering records - + @@ -76,6 +76,6 @@ record by its record number will also result in the


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_conf/select.html b/db/docs/ref/am_conf/select.html index 4eb01fb4f..f72200675 100644 --- a/db/docs/ref/am_conf/select.html +++ b/db/docs/ref/am_conf/select.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Selecting an access method - + @@ -113,6 +113,6 @@ permanent storage is a flat text file and the database is used as a fast, temporary storage area while the data is being read or modified.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_misc/align.html b/db/docs/ref/am_misc/align.html index 7daceaac6..80f59224c 100644 --- a/db/docs/ref/am_misc/align.html +++ b/db/docs/ref/am_misc/align.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Data alignment - + @@ -24,6 +24,6 @@ any necessary alignment. The

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_misc/dbsizes.html b/db/docs/ref/am_misc/dbsizes.html index 732535f4c..f0cc71a22 100644 --- a/db/docs/ref/am_misc/dbsizes.html +++ b/db/docs/ref/am_misc/dbsizes.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Database limits - + @@ -27,20 +27,21 @@ maximum database size of 241 (2 terabytes).

if the host system does not have filesystem support for files larger than 232, including the ability to seek to absolute offsets within those files.

-

The largest key or data item that Berkeley DB can support is largely limited -by available memory. Specifically, while key and data byte strings may -be of essentially unlimited length, any one of them must fit into -available memory so that it can be returned to the application. As some -of the Berkeley DB interfaces return both key and data items to the application, -those interfaces will require that any key/data pair fit simultaneously -into memory. Further, as the access methods may need to compare key and -data items with other key and data items, it may be a requirement that -any two key or two data items fit into available memory. Finally, when -writing applications supporting transactions, it may be necessary to have -an additional copy of any data item in memory for logging purposes.

+

The largest key or data item that Berkeley DB can support is 232, +or more likely by available memory. Specifically, while key and data +byte strings may be of essentially unlimited length, any one of them +must fit into available memory so that it can be returned to the +application. As some of the Berkeley DB interfaces return both key and data +items to the application, those interfaces will require that any +key/data pair fit simultaneously into memory. Further, as the access +methods may need to compare key and data items with other key and data +items, it may be a requirement that any two key or two data items fit +into available memory. Finally, when writing applications supporting +transactions, it may be necessary to have an additional copy of any data +item in memory for logging purposes.

The maximum Btree depth is 255.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_misc/diskspace.html b/db/docs/ref/am_misc/diskspace.html index 6c9d693d0..b66906c72 100644 --- a/db/docs/ref/am_misc/diskspace.html +++ b/db/docs/ref/am_misc/diskspace.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Disk space requirements - + @@ -144,6 +144,6 @@ only at specific points in the file, and this too can lead to sparse hash tables.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_misc/error.html b/db/docs/ref/am_misc/error.html index d92d4766c..575e33d77 100644 --- a/db/docs/ref/am_misc/error.html +++ b/db/docs/ref/am_misc/error.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Error support - + @@ -58,6 +58,6 @@ an EACCESS system error, the error messages shown would appear as follows:

my_app: contact your system administrator: session ID was 14

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_misc/faq.html b/db/docs/ref/am_misc/faq.html index 760aca14c..08d988ff1 100644 --- a/db/docs/ref/am_misc/faq.html +++ b/db/docs/ref/am_misc/faq.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: Access method FAQ - + -

Berkeley DB Reference Guide:
Access Methods

PrevRefNext +PrevRefNext

Access method FAQ

@@ -124,8 +124,8 @@ to take the first argument to the callback function and cast it to a MyDb (in C++, cast it to (MyDb*)). That will allow you to access your data members or methods.

-

PrevRefNext +

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_misc/get_bulk.html b/db/docs/ref/am_misc/get_bulk.html index 434cea707..bbd94ba70 100644 --- a/db/docs/ref/am_misc/get_bulk.html +++ b/db/docs/ref/am_misc/get_bulk.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Retrieving records in bulk - + @@ -42,12 +42,9 @@ This is implemented for the C and C++ APIs using four macros: DB_MULTIPLE_INIT, DB_MULTIPLE_NEXT, DB_MULTIPLE_KEY_NEXT, and DB_MULTIPLE_RECNO_NEXT. For the Java API, this is implemented as three iterator classes: -DbMultipleDataIterator -, -DbMultipleKeyDataIterator -, and -DbMultipleRecnoDataIterator -.

+MultipleDataEntry, +MultipleKeyDataEntry, and +MultipleRecnoDataEntry.

The DB_MULTIPLE_INIT macro is always called first. It initializes a local application variable and the data DBT for stepping through the set of returned records. Then, @@ -102,8 +99,8 @@ rec_display(dbp) /* * Acquire the next set of key/data pairs. This code does * not handle single key/data pairs that won't fit in a - * BUFFER_LENGTH size buffer, instead returning ENOMEM to - * our caller. + * BUFFER_LENGTH size buffer, instead returning DB_BUFFER_SMALL + * to our caller. */ if ((ret = dbcp->c_get(dbcp, &key, &data, DB_MULTIPLE_KEY | DB_NEXT)) != 0) { @@ -134,6 +131,6 @@ rec_display(dbp) }

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_misc/partial.html b/db/docs/ref/am_misc/partial.html index d8c8896ba..80b604495 100644 --- a/db/docs/ref/am_misc/partial.html +++ b/db/docs/ref/am_misc/partial.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Partial record storage and retrieval - + @@ -129,6 +129,6 @@ ABCDEFGHIJ0123456789 -> ABCDEFGHIJ0123456789\0\0\0\0\0abcdefghij

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_misc/perm.html b/db/docs/ref/am_misc/perm.html index e713c1abd..58902350c 100644 --- a/db/docs/ref/am_misc/perm.html +++ b/db/docs/ref/am_misc/perm.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Retrieved key/data permanence for C/C++ - + @@ -32,6 +32,6 @@ pointer stored into the DBT refers is o call to Berkeley DB using the DBC handle returned by DB->cursor.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_misc/stability.html b/db/docs/ref/am_misc/stability.html index e2a7fafe1..b4bb1e9d7 100644 --- a/db/docs/ref/am_misc/stability.html +++ b/db/docs/ref/am_misc/stability.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Cursor stability - + @@ -38,7 +38,9 @@ records are not locked, therefore another transaction may replace a deleted record between two calls to retrieve it. The record would not appear in the first call but would be seen by the second call. For readers not enclosed in transactions, all access method calls provide -degree 2 isolation, that is, reads are not repeatable. Finally, Berkeley DB +degree 2 isolation, that is, reads are not repeatable. A transaction +may be declared to run with degree 2 isolation by specifying the +DB_DEGREE_2 flag. Finally, Berkeley DB provides degree 1 isolation when the DB_DIRTY_READ flag is specified; that is, reads may see data modified in transactions which have not yet committed.

@@ -50,6 +52,6 @@ the scan inserts a new pair into the database, it is possible that duplicate key/data pairs will be returned.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_misc/struct.html b/db/docs/ref/am_misc/struct.html index 74881ede9..ff5423abe 100644 --- a/db/docs/ref/am_misc/struct.html +++ b/db/docs/ref/am_misc/struct.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Storing C/C++ structures/objects - + @@ -83,6 +83,6 @@ memcpy(&info.buf[0], string, strlen(string) + 1); without any additional work.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/am_misc/tune.html b/db/docs/ref/am_misc/tune.html index b8b828787..fa2c31607 100644 --- a/db/docs/ref/am_misc/tune.html +++ b/db/docs/ref/am_misc/tune.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Access method tuning - + @@ -18,8 +18,8 @@

Access method tuning

There are a few different issues to consider when tuning the performance of Berkeley DB access method applications.

-

-

access method
An application's choice of a database access method can significantly +
+
access method
An application's choice of a database access method can significantly affect performance. Applications using fixed-length records and integer keys are likely to get better performance from the Queue access method. Applications using variable-length records are likely to get better @@ -28,7 +28,7 @@ most applications than either the Hash or Recno access methods. Because the access method APIs are largely identical between the Berkeley DB access methods, it is easy for applications to benchmark the different access methods against each other. See Selecting an access method for more information. -

cache size
The Berkeley DB database cache defaults to a fairly small size, and most +
cache size
The Berkeley DB database cache defaults to a fairly small size, and most applications concerned with performance will want to set it explicitly. Using a too-small cache will result in horrible performance. The first step in tuning the cache size is to use the db_stat utility (or the @@ -49,7 +49,7 @@ cache to the maximum size possible without triggering paging activity. Finally, always remember to make your measurements under conditions as close as possible to the conditions your deployed application will run under, and to test your final choices under worst-case conditions. -

shared memory
By default, Berkeley DB creates its database environment shared regions in +
shared memory
By default, Berkeley DB creates its database environment shared regions in filesystem backed memory. Some systems do not distinguish between regular filesystem pages and memory-mapped pages backed by the filesystem, when selecting dirty pages to be flushed back to disk. For @@ -61,7 +61,7 @@ regions in system shared memory (DB_PRIVATE), or, in cases where this behavior is configurable, to turn off the operating system's flushing of memory-mapped pages. -

large key/data items
Storing large key/data items in a database can alter the performance +
large key/data items
Storing large key/data items in a database can alter the performance characteristics of Btree, Hash and Recno databases. The first parameter to consider is the database page size. When a key/data item is too large to be placed on a database page, it is stored on "overflow" pages @@ -117,6 +117,6 @@ of control to to some small multiple of the number of CPUs is usually the right choice to make.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/apprec/auto.html b/db/docs/ref/apprec/auto.html index 743ce6bd2..a321f2aea 100644 --- a/db/docs/ref/apprec/auto.html +++ b/db/docs/ref/apprec/auto.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Automatically generated functions - + @@ -90,20 +90,20 @@ ex_apprec_template and ex_apprec_rec.c for an example.)

(but not the automatically generated source_file, as that will get overwritten each time gen_rec.awk is run) and fully developed there. The recovery function takes the following parameters:

-

-

dbenv
The environment in which recovery is running. -

rec
The record being recovered. -

lsn
The log sequence number of the record being recovered. The +
+
dbenv
The environment in which recovery is running. +
rec
The record being recovered. +
lsn
The log sequence number of the record being recovered. The prev_lsn field, automatically included in every auto-generated log record, should be returned through this argument. The prev_lsn field is used to chain log records together to allow transaction aborts; because the recovery function is the only place that a log record gets parsed, the responsibility for returning this value lies with the recovery function writer. -

op
A parameter of type db_recops, which indicates what operation is being +
op
A parameter of type db_recops, which indicates what operation is being run (DB_TXN_ABORT, DB_TXN_APPLY, DB_TXN_BACKWARD_ROLL, DB_TXN_FORWARD_ROLL or DB_TXN_PRINT). -

info
A structure passed by the dispatch function. It is used to contain a +
info
A structure passed by the dispatch function. It is used to contain a list of committed transactions and information about files that may have been deleted. Application-specific log records can usually simply ignore this field. @@ -114,15 +114,15 @@ record type.

The log function marshalls the parameters into a buffer, and calls DB_ENV->log_put on that buffer returning 0 on success and non-zero on failure. The log function takes the following parameters:

-

-

dbenv
The environment in which recovery is running. -

txnid
The transaction identifier for the transaction handle returned by +
+
dbenv
The environment in which recovery is running. +
txnid
The transaction identifier for the transaction handle returned by DB_ENV->txn_begin. -

lsnp
A pointer to storage for a log sequence number into which the log +
lsnp
A pointer to storage for a log sequence number into which the log sequence number of the new log record will be returned. -

syncflag
A flag indicating whether the record must be written synchronously. +
syncflag
A flag indicating whether the record must be written synchronously. Valid values are 0 and DB_FLUSH. -

args
The remaining parameters to the log message are the fields described +
args
The remaining parameters to the log message are the fields described in the XXX.src file, in order.

The read function takes a buffer and unmarshalls its contents into a @@ -130,10 +130,10 @@ structure of the appropriate type. It returns 0 on success and non-zero on error. After the fields of the structure have been used, the pointer returned from the read function should be freed. The read function takes the following parameters:

-

-

dbenv
The environment in which recovery is running. -

recbuf
A buffer. -

argp
A pointer to a structure of the appropriate type. +
+
dbenv
The environment in which recovery is running. +
recbuf
A buffer. +
argp
A pointer to a structure of the appropriate type.

The print function displays the contents of the record. The print function takes the same parameters as the recovery function described @@ -141,12 +141,12 @@ previously. Although some of the parameters are unused by the print function, taking the same parameters allows a single dispatch loop to dispatch to a variety of functions. The print function takes the following parameters:

-

-

dbenv
The environment in which recovery is running. -

rec
The record being recovered. -

lsn
The log sequence number of the record being recovered. -

op
Unused. -

info
Unused. +
+
dbenv
The environment in which recovery is running. +
rec
The record being recovered. +
lsn
The log sequence number of the record being recovered. +
op
Unused. +
info
Unused.

Finally, the source file will contain a function (named XXX_init_print, where XXX is replaced by the prefix) which should be added to the @@ -154,6 +154,6 @@ initialization part of the standalone d so that utility can be used to display application-specific log records.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/apprec/config.html b/db/docs/ref/apprec/config.html index 76579c60c..7497419e2 100644 --- a/db/docs/ref/apprec/config.html +++ b/db/docs/ref/apprec/config.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Application configuration - + @@ -123,6 +123,6 @@ to stable storage before calling the D to allow the periodic removal of database environment log files.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/apprec/def.html b/db/docs/ref/apprec/def.html index c85a4eddc..57960cc0d 100644 --- a/db/docs/ref/apprec/def.html +++ b/db/docs/ref/apprec/def.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Defining application-specific log records - + @@ -91,6 +91,6 @@ file btree/btree.src contains the definitions for the log records supported by the Berkeley DB Btree access method.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/apprec/intro.html b/db/docs/ref/apprec/intro.html index 7318bb7b7..7c3a5dd5d 100644 --- a/db/docs/ref/apprec/intro.html +++ b/db/docs/ref/apprec/intro.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Introduction - + @@ -47,13 +47,16 @@ and what part is undo information.

system call. After all requests are issued, the application may call DB_TXN->commit. When DB_TXN->commit returns, the caller is guaranteed that all necessary log writes have been written to disk.

-

At any time before issuing a DB_TXN->commit, -the application may call DB_TXN->abort, which will -result in restoration of the database to a consistent pretransaction -state. (The application may specify its own recovery function for this -purpose using the DB_ENV->set_app_dispatch method. The recovery -function must be able to either reapply or undo the update depending on -the context, for each different type of log record.)

+

At any time before issuing a DB_TXN->commit, the application may +call DB_TXN->abort, which will result in restoration of the database +to a consistent pretransaction state. (The application may specify its +own recovery function for this purpose using the +DB_ENV->set_app_dispatch method. The recovery function must be able to +either reapply or undo the update depending on the context, for each +different type of log record. The recovery functions must not use Berkeley DB +methods to access data in the environment as there is no way to +coordinate these accesses with either the aborting transaction or the +updates done by recovery or replication.)

If the application crashes, the recovery process uses the log to restore the database to a consistent state.

Berkeley DB includes tools to assist in the development of application-specific @@ -72,6 +75,6 @@ usable on any system, not just POSIX systems.

in the Berkeley DB distribution, in the directory examples_c/ex_apprec.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/arch/apis.html b/db/docs/ref/arch/apis.html index 7813c495a..fa776f838 100644 --- a/db/docs/ref/arch/apis.html +++ b/db/docs/ref/arch/apis.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Programmatic APIs - + @@ -72,6 +72,6 @@ the effectiveness of the internal hashing function on the particular data set. This is not a problem with Berkeley DB.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/arch/bigpic.html b/db/docs/ref/arch/bigpic.html index 54673406f..9d527a2f5 100644 --- a/db/docs/ref/arch/bigpic.html +++ b/db/docs/ref/arch/bigpic.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: The big picture - + @@ -77,29 +77,29 @@ it is wrapped in transaction calls. The transaction is started with operation fails due to a deadlock, the transaction is aborted using DB_TXN->abort, after which the operation may be retried.

There are actually five major subsystems in Berkeley DB, as follows:

-

-

Access Methods
The access methods subsystem provides general-purpose support for +
+
Access Methods
The access methods subsystem provides general-purpose support for creating and accessing database files formatted as Btrees, Hashed files, and Fixed- and Variable-length records. These modules are useful in the absence of transactions for applications that need fast formatted file support. See DB->open and DB->cursor for more information. These functions were already discussed in detail in the previous chapters. -

Memory Pool
The Memory Pool subsystem is the general-purpose shared memory buffer pool +
Memory Pool
The Memory Pool subsystem is the general-purpose shared memory buffer pool used by Berkeley DB. This is the shared memory cache that allows multiple processes and threads within processes to share access to databases. This module is useful outside of the Berkeley DB package for processes that require portable, page-oriented, cached, shared file access. -

Transaction
The Transaction subsystem allows a group of database changes to be +
Transaction
The Transaction subsystem allows a group of database changes to be treated as an atomic unit so that either all of the changes are done, or none of the changes are done. The transaction subsystem implements the Berkeley DB transaction model. This module is useful outside of the Berkeley DB package for processes that want to transaction-protect their own data modifications. -

Locking
The Locking subsystem is the general-purpose lock manager used by Berkeley DB. +
Locking
The Locking subsystem is the general-purpose lock manager used by Berkeley DB. This module is useful outside of the Berkeley DB package for processes that require a portable, fast, configurable lock manager. -

Logging
The Logging subsystem is the write-ahead logging used to support the +
Logging
The Logging subsystem is the write-ahead logging used to support the Berkeley DB transaction model. It is largely specific to the Berkeley DB package, and unlikely to be useful elsewhere except as a supporting module for the Berkeley DB transaction subsystem. @@ -120,6 +120,6 @@ subsystem, or the access methods subsystem wrapped in calls to the Berkeley DB transaction interfaces.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/arch/progmodel.html b/db/docs/ref/arch/progmodel.html index aad85ae76..f62904779 100644 --- a/db/docs/ref/arch/progmodel.html +++ b/db/docs/ref/arch/progmodel.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Programming model - + @@ -39,6 +39,6 @@ call. Of course, this model also greatly simplifies the creation of network client-server applications.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/arch/script.html b/db/docs/ref/arch/script.html index 4a5e3823f..797bd82ce 100644 --- a/db/docs/ref/arch/script.html +++ b/db/docs/ref/arch/script.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Scripting languages - + @@ -16,17 +16,21 @@

Scripting languages

Perl

-

Two Perl APIs are distributed with the Berkeley DB release. The Perl +

Two Perl wrappers are distributed with the Berkeley DB release. The Perl interface to Berkeley DB version 1.85 is called DB_File. The Perl interface to Berkeley DB version 2 and later is called BerkeleyDB. See -Using Berkeley DB with Perl for more +Using Berkeley DB with Perl for more +information.

+

PHP

+

A PHP wrapper is distributed with the Berkeley DB release. See +Using Berkeley DB with Perl for more information.

Tcl

-

A Tcl API is distributed with the Berkeley DB release. See +

A Tcl wrapper is distributed with the Berkeley DB release. See Using Berkeley DB with Tcl for more information.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/arch/utilities.html b/db/docs/ref/arch/utilities.html index 7d32fadc5..885268a66 100644 --- a/db/docs/ref/arch/utilities.html +++ b/db/docs/ref/arch/utilities.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Supporting utilities - + @@ -18,37 +18,37 @@

Supporting utilities

The following are the standalone utilities that provide supporting functionality for the Berkeley DB environment:

-

-

berkeley_db_svc
The berkeley_db_svc utility is the Berkeley DB RPC server that +
+
berkeley_db_svc
The berkeley_db_svc utility is the Berkeley DB RPC server that provides standard server functionality for client applications. -

db_archive
The db_archive utility supports database backup and archival, +
db_archive
The db_archive utility supports database backup and archival, and log file administration. It facilitates log reclamation and the creation of database snapshots. Generally, some form of log archival must be done if a database environment has been configured for logging or transactions. -

db_checkpoint
The db_checkpoint utility runs as a daemon process, monitoring +
db_checkpoint
The db_checkpoint utility runs as a daemon process, monitoring the database log and periodically issuing checkpoints. It facilitates log reclamation and the creation of database snapshots. Generally, some form of database checkpointing must be done if a database environment has been configured for transactions. -

db_deadlock
The db_deadlock utility runs as a daemon process, periodically +
db_deadlock
The db_deadlock utility runs as a daemon process, periodically traversing the database lock structures and aborting transactions when it detects a deadlock. Generally, some form of deadlock detection must be done if a database environment has been configured for locking. -

db_dump
The db_dump utility writes a copy of the database to a flat-text +
db_dump
The db_dump utility writes a copy of the database to a flat-text file in a portable format. -

db_load
The db_load utility reads the flat-text file produced by +
db_load
The db_load utility reads the flat-text file produced by db_dump and loads it into a database file. -

db_printlog
The db_printlog utility displays the contents of Berkeley DB log files +
db_printlog
The db_printlog utility displays the contents of Berkeley DB log files in a human-readable and parsable format. -

db_recover
The db_recover utility runs after an unexpected Berkeley DB or system +
db_recover
The db_recover utility runs after an unexpected Berkeley DB or system failure to restore the database to a consistent state. Generally, some form of database recovery must be done if databases are being modified. -

db_stat
The db_stat utility displays statistics for databases and database +
db_stat
The db_stat utility displays statistics for databases and database environments. -

db_upgrade
The db_upgrade utility provides a command-line interface for +
db_upgrade
The db_upgrade utility provides a command-line interface for upgrading underlying database formats. -

db_verify
The db_verify utility provides a command-line interface for +
db_verify
The db_verify utility provides a command-line interface for verifying the database format.

All of the functionality implemented for these utilities is also available @@ -59,6 +59,6 @@ the necessity for multiple processes to negotiate database and database environment creation and shut down.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/aix.html b/db/docs/ref/build_unix/aix.html index d280c896c..f6ea88e93 100644 --- a/db/docs/ref/build_unix/aix.html +++ b/db/docs/ref/build_unix/aix.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: AIX - + @@ -78,6 +78,6 @@ include the problematical system include files.

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/conf.html b/db/docs/ref/build_unix/conf.html index 2b8ee79b4..886a19a54 100644 --- a/db/docs/ref/build_unix/conf.html +++ b/db/docs/ref/build_unix/conf.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Configuring Berkeley DB - + @@ -22,9 +22,9 @@ standard GNU autoconf arguments are available and supported. To see a complete list of possible arguments, specify the --help flag to the configure program.

The Berkeley DB specific arguments are as follows:

-

+
-

--disable-largefile
Some systems, notably versions of HP/UX and Solaris, require special +
--disable-largefile
Some systems, notably versions of HP/UX and Solaris, require special compile-time options in order to create files larger than 2^32 bytes. These options are automatically enabled when Berkeley DB is compiled. For this reason, binaries built on current versions of these systems may @@ -33,7 +33,7 @@ calls necessary for large files are not available. To disable building with these compile-time options, enter --disable-largefile as an argument to configure. -

--disable-shared, --disable-static
On systems supporting shared libraries, Berkeley DB builds both static and +
--disable-shared, --disable-static
On systems supporting shared libraries, Berkeley DB builds both static and shared libraries by default. (Shared libraries are built using the GNU Project's Libtool distribution, which supports shared library builds @@ -41,33 +41,33 @@ on many (although not all) systems.) To not build shared libraries, configure using the --disable-shared argument. To not build static libraries, configure using the --disable-static argument. -

--enable-compat185
To compile or load Berkeley DB 1.85 applications against this release of the +
--enable-compat185
To compile or load Berkeley DB 1.85 applications against this release of the Berkeley DB library, enter --enable-compat185 as an argument to configure. This will include Berkeley DB 1.85 API compatibility code in the library. -

--enable-cxx
To build the Berkeley DB C++ API, enter --enable-cxx as an argument to +
--enable-cxx
To build the Berkeley DB C++ API, enter --enable-cxx as an argument to configure. -

--enable-debug
To build Berkeley DB with -g as a compiler flag and with +
--enable-debug
To build Berkeley DB with -g as a compiler flag and with DEBUG #defined during compilation, enter --enable-debug as an argument to configure. This will create a Berkeley DB library and utilities with debugging symbols, as well as load various routines that can be called from a debugger to display pages, cursor queues, and so forth. If installed, the utilities will not be stripped. This argument should not be specified when configuring to build production binaries. -

--enable-debug_rop
To build Berkeley DB to output log records for read operations, enter +
--enable-debug_rop
To build Berkeley DB to output log records for read operations, enter --enable-debug_rop as an argument to configure. This argument should not be specified when configuring to build production binaries. -

--enable-debug_wop
To build Berkeley DB to output log records for write operations, enter +
--enable-debug_wop
To build Berkeley DB to output log records for write operations, enter --enable-debug_wop as an argument to configure. This argument should not be specified when configuring to build production binaries. -

--enable-diagnostic
To build Berkeley DB with run-time debugging checks, enter --enable-diagnostic +
--enable-diagnostic
To build Berkeley DB with run-time debugging checks, enter --enable-diagnostic as an argument to configure. This will cause a number of special checks to be performed when Berkeley DB is running. Applications built using this argument should not share database environments with applications built without this argument. This argument should not be specified when configuring to build production binaries. -

--enable-dump185
To convert Berkeley DB 1.85 (or earlier) databases to this release of Berkeley DB, +
--enable-dump185
To convert Berkeley DB 1.85 (or earlier) databases to this release of Berkeley DB, enter --enable-dump185 as an argument to configure. This will build the db_dump185 utility, which can dump Berkeley DB 1.85 and 1.86 databases in a format readable by the Berkeley DB db_load utility. @@ -78,7 +78,7 @@ are using a non-standard library for the Berkeley DB 1.85 library routines, you will have to change the Makefile that the configuration step creates to load the db_dump185 utility with that library.

-

--enable-java
To build the Berkeley DB Java API, enter --enable-java as an argument to +
--enable-java
To build the Berkeley DB Java API, enter --enable-java as an argument to configure. To build Java, you must also build with shared libraries. Before configuring, you must set your PATH environment variable to include javac. Note that it is not sufficient to include a symbolic @@ -87,7 +87,7 @@ location of javac to determine the location of the Java include files (for example, jni.h). On some systems, additional include directories may be needed to process jni.h; see Changing compile or load options for more information. -

--enable-posixmutexes
To force Berkeley DB to use the POSIX pthread mutex interfaces for underlying +
--enable-posixmutexes
To force Berkeley DB to use the POSIX pthread mutex interfaces for underlying mutex support, enter --enable-posixmutexes as an argument to configure. This is rarely necessary: POSIX mutexes will be selected automatically on systems where they are the preferred implementation. @@ -110,21 +110,21 @@ database environments, that is, environments where the

Specifying the --enable-posixmutexes configuration argument may require that Berkeley DB be linked with the -lpthread library.

-

--enable-rpc
To build the Berkeley DB RPC client code and server utility, enter --enable-rpc +
--enable-rpc
To build the Berkeley DB RPC client code and server utility, enter --enable-rpc as an argument to configure. The --enable-rpc argument requires that RPC libraries already be installed on your system. -

--enable-smallbuild
To build a small memory footprint version of the Berkeley DB library, enter +
--enable-smallbuild
To build a small memory footprint version of the Berkeley DB library, enter --enable-smallbuild as an argument to configure. The --enable-smallbuild argument is equivalent to individually specifying --disable-cryptography, --disable-hash, --disable-queue, ---disable-replication, and --disable-verify, turning off cryptography -support, the Hash and Queue access methods, database environment -replication support and database verification support. See -Building a small memory footprint -library for more information. +--disable-replication, --disable-statistics and --disable-verify, +turning off cryptography support, the Hash and Queue access methods, +database environment replication support and database verification +support. See Building a +small memory footprint library for more information. -

--enable-tcl
To build the Berkeley DB Tcl API, enter --enable-tcl as an argument to +
--enable-tcl
To build the Berkeley DB Tcl API, enter --enable-tcl as an argument to configure. This configuration argument expects to find Tcl's tclConfig.sh file in the /usr/local/lib directory. See the --with-tcl argument for instructions on specifying a non-standard location for the @@ -133,11 +133,11 @@ with Tcl for information on sites from which you can download Tcl and which Tcl versions are compatible with Berkeley DB. To build Tcl, you must also build with shared libraries. -

--enable-test
To build the Berkeley DB test suite, enter --enable-test as an argument to +
--enable-test
To build the Berkeley DB test suite, enter --enable-test as an argument to configure. To run the Berkeley DB test suite, you must also build the Tcl API. This argument should not be specified when configuring to build production binaries. -

--enable-uimutexes
To force Berkeley DB to use the UNIX International (UI) mutex interfaces for +
--enable-uimutexes
To force Berkeley DB to use the UNIX International (UI) mutex interfaces for underlying mutex support, enter --enable-uimutexes as an argument to configure. This is rarely necessary: UI mutexes will be selected automatically on systems where they are the preferred implementation. @@ -147,13 +147,13 @@ implementation is not the preferred one (for example, on Solaris where the LWP mutexes are used by default).

Specifying the --enable-uimutexes configuration argument may require that Berkeley DB be linked with the -lthread library.

-

--enable-umrw
Rational Software's Purify product and other run-time tools complain +
--enable-umrw
Rational Software's Purify product and other run-time tools complain about uninitialized reads/writes of structure fields whose only purpose is padding, as well as when heap memory that was never initialized is written to disk. Specify the --enable-umrw argument during configuration to mask these errors. This argument should not be specified when configuring to build production binaries. -

--with-mutex=MUTEX
To force Berkeley DB to use a specific mutex implementation, configure with +
--with-mutex=MUTEX
To force Berkeley DB to use a specific mutex implementation, configure with --with-mutex=MUTEX, where MUTEX is the mutex implementation you want. For example, --with-mutex=x86/gcc-assembly will configure Berkeley DB to use the x86 GNU gcc compiler based test-and-set assembly mutexes. This is @@ -161,23 +161,23 @@ rarely necessary and should be done only when the default configuration selects the wrong mutex implementation. A list of available mutex implementations can be found in the distribution file dist/aclocal/mutex.ac. -

--with-mutexalign=ALIGNMENT
To force Berkeley DB to use a specific mutex byte alignment, configure with +
--with-mutexalign=ALIGNMENT
To force Berkeley DB to use a specific mutex byte alignment, configure with --with-mutexalignment=ALIGNMENT. For example, --with-mutexalignment=64 will configure Berkeley DB to align mutexes at 64-byte alignments, ensuring no two mutexes use the same cache line on machines with 64-byte cache alignment. This is only useful when performance tuning Berkeley DB for large multiprocessor systems. -

--with-rpm=ARCHIVE
To build Berkeley DB as an RPM software package, configure with --with-rpm=ARCHIVE, +
--with-rpm=ARCHIVE
To build Berkeley DB as an RPM software package, configure with --with-rpm=ARCHIVE, where ARCHIVE is the path of gzipped tar archive Berkeley DB distribution file. This configuration argument will create an RPM specification file from which the RPM software package can be built, using the "make" command. -

--with-tcl=DIR
To build the Berkeley DB Tcl API, enter --with-tcl=DIR, replacing DIR with +
--with-tcl=DIR
To build the Berkeley DB Tcl API, enter --with-tcl=DIR, replacing DIR with the directory in which the Tcl tclConfig.sh file may be found. See Loading Berkeley DB with Tcl for information on sites from which you can download Tcl and which Tcl versions are compatible with Berkeley DB. To build Tcl, you must also build with shared libraries. -

--with-uniquename=NAME
To build Berkeley DB with unique symbol names (in order to avoid conflicts +
--with-uniquename=NAME
To build Berkeley DB with unique symbol names (in order to avoid conflicts with other application modules or libraries), enter --with-uniquename=NAME, replacing NAME with a string that to be appended to every Berkeley DB symbol. If "=NAME" is not specified, a default value of "_MAJORMINOR" is used, @@ -187,6 +187,6 @@ multiple versions of Berkeley DB for more information.

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/flags.html b/db/docs/ref/build_unix/flags.html index 422e4b393..9afec5f3f 100644 --- a/db/docs/ref/build_unix/flags.html +++ b/db/docs/ref/build_unix/flags.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Changing compile or load options - + @@ -57,6 +57,6 @@ prompt: ../dist/configure

See your command shell's manual page for further information.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/freebsd.html b/db/docs/ref/build_unix/freebsd.html index f8a01d2d2..8e697e27d 100644 --- a/db/docs/ref/build_unix/freebsd.html +++ b/db/docs/ref/build_unix/freebsd.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: FreeBSD - + @@ -61,6 +61,6 @@ files should be placed on NFS-mounted filesystems on these systems.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/hpux.html b/db/docs/ref/build_unix/hpux.html index a77b3e490..7f14b8718 100644 --- a/db/docs/ref/build_unix/hpux.html +++ b/db/docs/ref/build_unix/hpux.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: HP-UX - + @@ -91,6 +91,6 @@ include the problematical system include files.

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/install.html b/db/docs/ref/build_unix/install.html index 95fc34a91..d092b88ae 100644 --- a/db/docs/ref/build_unix/install.html +++ b/db/docs/ref/build_unix/install.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Installing Berkeley DB - + @@ -61,6 +61,6 @@ the install itself:

directories that do not already exist on the system.


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/intro.html b/db/docs/ref/build_unix/intro.html index 897943816..0b76cd7b2 100644 --- a/db/docs/ref/build_unix/intro.html +++ b/db/docs/ref/build_unix/intro.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Building for UNIX/POSIX - + @@ -44,6 +44,8 @@ start from scratch by entering the following command:

make realclean
 ../dist/configure
 make
+

To uninstall Berkeley DB, enter:

+
make uninstall

To build multiple UNIX versions of Berkeley DB in the same source tree, create a new directory at the same level as the build_unix directory, and then configure and build in that directory as described previously.

@@ -57,6 +59,6 @@ compilation, and any output they produced.

PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/irix.html b/db/docs/ref/build_unix/irix.html index 0e929b277..2ed8d2840 100644 --- a/db/docs/ref/build_unix/irix.html +++ b/db/docs/ref/build_unix/irix.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: IRIX - + @@ -26,6 +26,6 @@ must compile with the _SGI_MP_SOURCE flag:


PrevRefNext
-

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

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/linux.html b/db/docs/ref/build_unix/linux.html index df0a4992f..b5cb079f2 100644 --- a/db/docs/ref/build_unix/linux.html +++ b/db/docs/ref/build_unix/linux.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: Linux - + -

Berkeley DB Reference Guide:
Building Berkeley DB for UNIX/POSIX systems

PrevRefNext +PrevRefNext

Linux

@@ -23,11 +23,6 @@ applications on Linux. If you are compiling a threaded application, you must compile with the _REENTRANT flag:

cc -D_REENTRANT ...

The Berkeley DB library will automatically build with the correct options.

-

  • I see database corruption when accessing databases on -NFS-mounted filesystems. -

    Some Linux filesystems are known to not support complete semantics for -the POSIX fsync call on NFS-mounted filesystems. No Berkeley DB files should -be placed on NFS-mounted filesystems on these systems.

  • I see database corruption when accessing databases.

    Some Linux filesystems do not support POSIX filesystem semantics. Specifically, ext2 and early releases of ReiserFS, and ext3 in some @@ -35,9 +30,13 @@ configurations, do not support "ordered data mode" and may insert random data into database or log files when systems crash. Berkeley DB files should not be placed on a filesystem that does not support, or is not configured to support, POSIX semantics.

    +

  • What scheduler should I use? +

    In some Linux kernels you can select schedulers, and the default is the +"anticipatory" scheduler. We recommend not using the "anticipatory" +scheduler for transaction processing workloads.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/notes.html b/db/docs/ref/build_unix/notes.html index 7f9cdb167..ec2267c74 100644 --- a/db/docs/ref/build_unix/notes.html +++ b/db/docs/ref/build_unix/notes.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Architecture independent FAQ - + @@ -106,7 +106,8 @@ Purify tool).

    For performance reasons, Berkeley DB does not write the unused portions of database pages or fill in unused structure fields. To turn off these errors when running software analysis tools, build with the ---enable-umrw configuration option.

    +--enable-umrw +configuration option.


  • Berkeley DB programs or the test suite fail unexpectedly.

    The Berkeley DB architecture does not support placing the shared memory @@ -148,6 +149,6 @@ DB185LIB=-ldb185

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/osf1.html b/db/docs/ref/build_unix/osf1.html index 1a7646f17..d5c00a927 100644 --- a/db/docs/ref/build_unix/osf1.html +++ b/db/docs/ref/build_unix/osf1.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: OSF/1 - + -

    Berkeley DB Reference Guide:
    Building Berkeley DB for UNIX/POSIX systems

    PrevRefNext +PrevRefNext

    OSF/1

    @@ -24,8 +24,8 @@ must compile with the _REENTRANT flag:

    cc -D_REENTRANT ...

    The Berkeley DB library will automatically build with the correct options.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/qnx.html b/db/docs/ref/build_unix/qnx.html index 3cfbec511..132cb40c4 100644 --- a/db/docs/ref/build_unix/qnx.html +++ b/db/docs/ref/build_unix/qnx.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: QNX - + @@ -72,6 +72,6 @@ should be used with caution on QNX.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/sco.html b/db/docs/ref/build_unix/sco.html index 9d237e73d..1df28f11e 100644 --- a/db/docs/ref/build_unix/sco.html +++ b/db/docs/ref/build_unix/sco.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: SCO - + @@ -25,6 +25,6 @@ libraries.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/shlib.html b/db/docs/ref/build_unix/shlib.html index 7f02f5a8d..fa03b7932 100644 --- a/db/docs/ref/build_unix/shlib.html +++ b/db/docs/ref/build_unix/shlib.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Dynamic shared libraries - + @@ -99,6 +99,6 @@ program. On other systems, using libtool has the virtue of knowing about any other details on systems that don't behave in this typical way.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/small.html b/db/docs/ref/build_unix/small.html index ca2beab54..2c1fc4e26 100644 --- a/db/docs/ref/build_unix/small.html +++ b/db/docs/ref/build_unix/small.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Building a small memory footprint library - + @@ -19,28 +19,30 @@ small memory footprint library. These configuration options turn off specific functionality in the Berkeley DB library, reducing the code size. These configuration options include:

    -

    -

    --disable-cryptography
    To build Berkeley DB without support for cryptography, enter +
    +
    --disable-cryptography
    To build Berkeley DB without support for cryptography, enter --disable-cryptography as an argument to configure. -

    --disable-hash
    To build Berkeley DB without support for the Hash access method, enter +
    --disable-hash
    To build Berkeley DB without support for the Hash access method, enter --disable-hash as an argument to configure. -

    --disable-queue
    To build Berkeley DB without support for the Queue access method, enter +
    --disable-queue
    To build Berkeley DB without support for the Queue access method, enter --disable-queue as an argument to configure. -

    --disable-replication
    To build Berkeley DB without support for the database environment replication, +
    --disable-replication
    To build Berkeley DB without support for the database environment replication, enter --disable-replication as an argument to configure. -

    --disable-verify
    To build Berkeley DB without support for database verification, enter +
    --disable-statistics
    To build Berkeley DB without support for the statistics interfaces, enter +--disable-statistics as an argument to configure. +
    --disable-verify
    To build Berkeley DB without support for database verification, enter --disable-verify as an argument to configure. -

    --enable-smallbuild
    Equivalent to individually specifying --disable-cryptography, ---disable-hash, --disable-queue, --disable-replication, and ---disable-verify +
    --enable-smallbuild
    Equivalent to individually specifying --disable-cryptography, +--disable-hash, --disable-queue, --disable-replication, +--disable-statistics and --disable-verify

    The following configuration options will increase the size of the Berkeley DB library dramatically and are only useful when debugging applications:

    -

    -

    --enable-debug
    Build Berkeley DB with symbols for debugging. -

    --enable-debug_rop
    Build Berkeley DB with read-operation logging. -

    --enable-debug_wop
    Build Berkeley DB with write-operation logging. -

    --enable-diagnostic
    Build Berkeley DB with run-time debugging checks. +
    +
    --enable-debug
    Build Berkeley DB with symbols for debugging. +
    --enable-debug_rop
    Build Berkeley DB with read-operation logging. +
    --enable-debug_wop
    Build Berkeley DB with write-operation logging. +
    --enable-diagnostic
    Build Berkeley DB with run-time debugging checks.

    In addition, static libraries are usually smaller than shared libraries. By default Berkeley DB will build both shared and static libraries. To build @@ -54,6 +56,6 @@ building small memory footprint libraries on other systems, please contact Sleepycat Software support.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/solaris.html b/db/docs/ref/build_unix/solaris.html index 8ab696dc7..46c0b8418 100644 --- a/db/docs/ref/build_unix/solaris.html +++ b/db/docs/ref/build_unix/solaris.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Solaris - + @@ -111,6 +111,6 @@ include the problematical system include files.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/sunos.html b/db/docs/ref/build_unix/sunos.html index 469d0b5fe..d112baeea 100644 --- a/db/docs/ref/build_unix/sunos.html +++ b/db/docs/ref/build_unix/sunos.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: SunOS - + @@ -26,6 +26,6 @@ versions of SunOS.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/test.html b/db/docs/ref/build_unix/test.html index 13151129d..daebf8c6c 100644 --- a/db/docs/ref/build_unix/test.html +++ b/db/docs/ref/build_unix/test.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Running the test suite under UNIX - + @@ -51,6 +51,6 @@ command:

    information.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_unix/ultrix.html b/db/docs/ref/build_unix/ultrix.html index 18cddf6cd..84b2dc795 100644 --- a/db/docs/ref/build_unix/ultrix.html +++ b/db/docs/ref/build_unix/ultrix.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Ultrix - + @@ -23,6 +23,6 @@ they exist, because they are known to not work correctly.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_vxworks/faq.html b/db/docs/ref/build_vxworks/faq.html index f9cea42a2..a7bfe0fca 100644 --- a/db/docs/ref/build_vxworks/faq.html +++ b/db/docs/ref/build_vxworks/faq.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: VxWorks FAQ - + @@ -108,9 +108,14 @@ particular problem.

    look at SPR 72063 in the Wind River Systems' Support pages for a more detailed description of this problem.

  • Are there any filesystems I cannot use? +

    Currently both the Target Server File System (TSFS) and NFS are not able +to be used.

    The Target Server File System (TSFS) uses the netDrv driver. This driver -does not support any ioctl that allows flushing to the disk, and therefore -cannot be used with Berkeley DB.

    +does not support any ioctl that allows flushing to the disk, nor does +it allow renaming of files via FIORENAME. +The NFS file system uses nfsDrv and that driver +does not support FIORENAME and cannot be used +with Berkeley DB.

  • What VxWorks primitives are used for mutual exclusion in Berkeley DB?

    Mutexes inside of Berkeley DB use the basic binary semaphores in VxWorks. The mutexes are created using the FIFO queue type.

    @@ -130,6 +135,6 @@ may leak their underlying system resources. Therefore, the

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_vxworks/intro.html b/db/docs/ref/build_vxworks/intro.html index 76d479d57..bec44b47a 100644 --- a/db/docs/ref/build_vxworks/intro.html +++ b/db/docs/ref/build_vxworks/intro.html @@ -1,26 +1,23 @@ - - + + Berkeley DB Reference Guide: Building for VxWorks - + -

    Berkeley DB Reference Guide:
    Building Berkeley DB for VxWorks systems

    PrevRefNext +PrevRefNext

    Building for VxWorks

    The build_vxworks directory in the Berkeley DB distribution contains a workspace -and project files for Tornado 2.0/VxWorks 5.4, Tornado 2.2/VxWorks 5.5 -and component files for Tornado 3.1/VxWorks AE. See -Building for VxWorks AE for -information about VxWorks AE.

    +and project files for Tornado 2.0/VxWorks 5.4 and Tornado 2.2/VxWorks 5.5.

    @@ -36,13 +33,14 @@ information about VxWorks AE.

    Open the workspace BerkeleyDB20.wsp or BerkeleyDB22.wsp. The list of projects in this workspace will be shown. These projects were created for the x86 BSP for VxWorks.

    -

    The remainder of this document assumes that you already have a -VxWorks target and a target server, both up and running. It also -assumes that your VxWorks image is configured properly for your -needs. It also assumes that you -have an acceptable file system already available. See -VxWorks FAQ for more -information about file system requirements.

    +

    The remainder of this document assumes that you already have a VxWorks +target and a target server, both up and running. It also assumes that +your VxWorks image is configured properly for your needs. It also +assumes that you have an acceptable file system already available. +See VxWorks FAQ for more +information about file system requirements. +See VxWorks Notes for more +information about building a small footprint version of Berkeley DB.

    First, you need to set the include directories. To do this, go to the Builds tab for the workspace. Open up Berkeley DB Builds. You will see several different builds, containing different @@ -98,8 +96,8 @@ depending on which version of Tornado you are running. You need to repeat this procedure for all builds you are interested in building, as well as for all of the utility project builds you want to run.

    -
    FileDescription
    BerkeleyDB20.wsp Berkeley DB Workspace file for Tornado 2.0

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_vxworks/introae.html b/db/docs/ref/build_vxworks/introae.html index f1ddb5ad9..2d80a4152 100644 --- a/db/docs/ref/build_vxworks/introae.html +++ b/db/docs/ref/build_vxworks/introae.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Building for VxWorks AE - + @@ -129,6 +129,6 @@ building, as well as for all of the utility project builds you want to run.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_vxworks/notes.html b/db/docs/ref/build_vxworks/notes.html index e30859af1..e2c06a973 100644 --- a/db/docs/ref/build_vxworks/notes.html +++ b/db/docs/ref/build_vxworks/notes.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: VxWorks notes - + -

    Berkeley DB Reference Guide:
    Building Berkeley DB for VxWorks systems

    PrevRefNext +PrevRefNext

    VxWorks notes

    @@ -28,8 +28,7 @@ system supporting FIOSYNC.

    building Berkeley DB. If you want different or additional BSP build specifications you should add them by following the directions indicated in Building -with Tornado 2.0 or Tornado 2.2 or -Building with Tornado 3.1.

    +with Tornado 2.0 or Tornado 2.2.

    The demo program can be downloaded and run by calling the entry function dbdemo with the pathname of a database to use. The demo program will ask for some input keys. It creates a database and adds @@ -56,14 +55,15 @@ flag is implied for any application that does not specify the ID to ensure that different applications do not overwrite each other's database environments. See the DB_ENV->set_shm_key method for more information. Also, the DB_LOCKDOWN flag has no effect.

    -

    Notes for VxWorks AE 1.1

    -

    All tasks wanting to access a particular environment must run in the -same application domain. The memory regions used by the environment are -only accessible to the application domain. If more than one application -domain attempts to access an environment simultaneously, the results are -undefined but will likely lead to corruption.

    -

    PrevRefNext +

    A default small footprint build is provided. This default provides +equivalent to the --enable-smallbuild configuration option +described in Building a +small memory footprint library. In order to build the small +footprint, you should move db_config.h aside and copy +db_config_small.h to db_config.h. Then open up +the appropriate small workspace file via Tornado and build as usual.

    +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_win/faq.html b/db/docs/ref/build_win/faq.html index ba7410a98..0bebd855c 100644 --- a/db/docs/ref/build_win/faq.html +++ b/db/docs/ref/build_win/faq.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Windows FAQ - + @@ -29,14 +29,14 @@ click on db_load -> Properties and change "Configuration Type" from fprintf (or some other standard C library function).

    You should be using the "Debug Multithreaded DLL" compiler option in your application when you link with the -build_win32/Debug/libdb42d.lib library (this .lib file -is actually a stub for libdb42d.DLL). To check this +build_win32/Debug/libdb43d.lib library (this .lib file +is actually a stub for libdb43d.DLL). To check this setting in Visual C++, choose the Project/Settings menu item and select Code Generation under the tab marked C/C++; and see the box marked Use runtime library. This should be set to Debug Multithreaded DLL. If your application is linked against the static library, -build_win32/Debug/libdb42sd.lib; then, you will want +build_win32/Debug/libdb43sd.lib; then, you will want to set Use runtime library to Debug Multithreaded.

    Setting this option incorrectly can cause multiple versions of the standard libraries to be linked into your application (one on behalf @@ -75,6 +75,6 @@ source.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_win/intro.html b/db/docs/ref/build_win/intro.html index bbc6f7387..390a7fd0c 100644 --- a/db/docs/ref/build_win/intro.html +++ b/db/docs/ref/build_win/intro.html @@ -1,18 +1,18 @@ - + Berkeley DB Reference Guide: Building for Win32 - + -

    Berkeley DB Reference Guide:
    Building Berkeley DB for Windows systems

    PrevRefNext +PrevRefNext

    Building for Win32

    @@ -25,7 +25,9 @@ project files for Microsoft Visual C++:

    These project files can be used to build Berkeley DB for any Win32 platform: Windows/XP, Windows/2000, Windows/NT, Windows/98 and Windows/95.

    -

    Building Berkeley DB with Visual C++ .NET

    +

    The build_win64 directory contains project files for Microsoft +Visual C++ to target Windows on 64-bit CPUs:

    +

    Building Berkeley DB with Visual C++ .NET for Win32

    1. Choose File -> Open Solution. Look in the build_win32 directory for compatible workspace files, select @@ -44,7 +46,7 @@ your build will be placed in a subdirectory of build_win32 named after the configuration you chose (for examples, build_win32/Release or build_win32/Debug).
    -

    Building Berkeley DB with Visual C++ 6.0

    +

    Building Berkeley DB with Visual C++ 6.0 for Win32

    1. Choose File -> Open Workspace. Look in the build_win32 directory for Workspaces, select @@ -65,20 +67,39 @@ examples, build_win32/Release or

    When building your application, you should normally use compile options "Debug Multithreaded DLL" and link against -build_win32/Debug/libdb42d.lib. If you +build_win32/Debug/libdb43d.lib. If you want to link against a static (non-DLL) version of the library, use the "Debug Multithreaded" compile options and link against -build_win32/Debug_static/libdb42sd.lib. +build_win32/Debug_static/libdb43sd.lib. You can also build using a release version of the libraries and tools, which will be placed in -build_win32/Release/libdb42.lib. The +build_win32/Release/libdb43.lib. The static version will be in -build_win32/Release_static/libdb42s.lib. +build_win32/Release_static/libdb43s.lib. You will also need to add the build_win32 directory to the list of include directories of your application's project.

    Each release of Berkeley DB is built and tested with this procedure using Microsoft Visual C++ 6.0, Standard Version and Microsoft Visual C++ .NET, Standard Version.

    +

    Building Berkeley DB for 64-bit Windows

    +

    You can follow the same steps on either the Itanium itself or to +cross-compile on an x86 box.

    +

    You will need latest Platform SDK from Microsoft, available from +Microsoft's web site. You only need the "Core SDK" from there.

    +

    Once that is installed, you should have an entry in your Start Menu +called Microsoft Platform SDK (date) -> Open Build +Environment Window -> Windows Server 2003 64-bit Build Environment +-> Set Win Svr 2003 Build Env (Debug). Selecting that will open +a command window with the environment set up for Itanium development.

    +

    Then, in the build_win64 directory in the Berkeley DB distribution, +run: +

    msdev /useenv BerkeleyDB.dsw /make "build_all - Debug"
    +You should now have Itanium binaries in the "Debug" directory.

    +

    To build a release, open the "Retail" window instead of the "Debug" +window, and run: +

    msdev /useenv BerkeleyDB.dsw /make "build_all - Release"
    +There may be some warnings during build, but we don't believe any of +them are real bugs.

    Building Berkeley DB with Cygwin

    To build Berkeley DB with Cygwin, follow the instructions in Building for UNIX.

    @@ -127,7 +148,7 @@ javac. either the Debug or Release version of the db_java project. Then press OK.

  • To build, select Build -> Build -libdb_java42.dll. This builds the Java support +libdb_java43.dll. This builds the Java support library for Berkeley DB and compiles all the java files, placing the resulting db.jar and dbexamples.jar files in the build_win32/Release or build_win32/Debug @@ -178,7 +199,7 @@ tool bar.

  • To build, right-click on db_tcl and select Build. This builds the Tcl support library for Berkeley DB, placing the result into build_win32/Debug/libdb_tcl4M4MINORd.dll or -build_win32/Release/libdb_tcl42.dll. +build_win32/Release/libdb_tcl43.dll.

    If you use a version different from Tcl 8.4.x you will need to change the name of the Tcl library used in the build (for @@ -205,18 +226,19 @@ whatever the library is named in your distribution). either the Debug or Release version of the db_tcl project. Then press OK.

  • To build, select Build -> Build -libdb_tcl42.dll. This builds the Tcl support +libdb_tcl43.dll. This builds the Tcl support library for Berkeley DB, placing the result into build_win32/Debug/libdb_tcl4M4MINORd.dll or -build_win32/Release/libdb_tcl42.dll. +build_win32/Release/libdb_tcl43.dll.

    If you use a version different from Tcl 8.4.x you will need to change the name of the Tcl library used in the build (for example, tcl84g.lib) to the -appropriate name. To do this, right click on db_tcl, go to -Settings -> Link -> Object / library modules -and change tcl84g.lib to match the -Tcl version you are using.

    +appropriate name. To do this, choose +Project -> Settings -> db_tcl +and change the Tcl library listed in the Object/Library modules +tcl84g.lib to match the Tcl version +you are using.

    Distributing DLLs

    When distributing applications linked against the DLL (not static) version of the library, the DLL files you need will be found in the @@ -231,8 +253,8 @@ installed in the same directory that will contain your installed Berkeley DB DLLs. This directory may need to be added to your System PATH environment variable. Check your compiler's license and documentation for specifics on redistributing runtime DLLs.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_win/notes.html b/db/docs/ref/build_win/notes.html index 9feb6cec9..5d4a4b363 100644 --- a/db/docs/ref/build_win/notes.html +++ b/db/docs/ref/build_win/notes.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Windows notes - + @@ -29,6 +29,17 @@ with an obvious race.

    Practically speaking, however, these efforts would be largely meaningless on a FAT file system, which only has a "readable" and "writable" flag, applying to all users.

    +

  • On Windows, Berkeley DB supports internationalized filenames by treating all +directory paths and filenames passed to Berkeley DB methods as UTF-8 strings. +All paths are internally converted to wide character strings and passed +to the wide character variants of Windows system calls. +

    This allows applications to create and open databases with names that +cannot be represented with ASCII names while maintaining compatibility +with applications that work purely with ASCII paths.

    +

    Applications that operate on wide character strings can use the Windows +function WideCharToMultiByte with the code page CP_UTF8 to convert paths +to the form expected by Berkeley DB. Internally, Berkeley DB calls MultiByteToWideChar +on paths before calling Windows functions.

  • On Windows/9X, files opened by multiple processes do not share data correctly. For this reason, the DB_SYSTEM_MEM flag is implied for any application that does not specify the DB_PRIVATE flag, @@ -57,6 +68,6 @@ directly specified through the DB_ENV->op

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_win/small.html b/db/docs/ref/build_win/small.html index fa2ffd47b..8c5e1352b 100644 --- a/db/docs/ref/build_win/small.html +++ b/db/docs/ref/build_win/small.html @@ -1,20 +1,20 @@ - - + + -Berkeley DB Reference Guide: Building a small memory footprint library on Windows +Berkeley DB Reference Guide: Building a small memory footprint library - + -

    Berkeley DB Reference Guide:
    Building Berkeley DB for Windows systems

    PrevRefNext +PrevRefNext

    -

    Building a small memory footprint library on Windows

    +

    Building a small memory footprint library

    For applications that don't require all of the functionality of the full Berkeley DB library, an option is provided to build a static library with certain functionality disabled. In particular, cryptography, hash and @@ -38,8 +38,8 @@ in Release_small or Debug_small, respectively.

    For assistance in further reducing the size of the Berkeley DB library, or in building small memory footprint libraries on other systems, please contact Sleepycat Software support.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_win/test.html b/db/docs/ref/build_win/test.html index de817f9c6..8120bf580 100644 --- a/db/docs/ref/build_win/test.html +++ b/db/docs/ref/build_win/test.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Running the test suite under Windows - + @@ -72,6 +72,6 @@ the Tcl shell for your system. information.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/build_win/unicode.html b/db/docs/ref/build_win/unicode.html new file mode 100644 index 000000000..ed6eca30b --- /dev/null +++ b/db/docs/ref/build_win/unicode.html @@ -0,0 +1,40 @@ + + + + + + +Berkeley DB Reference Guide: Unicode support + + + + + + + +

    Berkeley DB Reference Guide:
    Building Berkeley DB for Windows systems

    PrevRefNext +
    +

    +

    Unicode support

    +

    Unicode support requires a separate configuration step on Windows. +To enable Unicode support, perform the following steps:

    +
      +

    1. Right click on the "db_dll" project and choose Settings... (Visual +Studio .NET: Properties), then C/C++. The "Preprocessor definitions" +should read: +
      DB_CREATE_DLL,...
      +

      Change it to read:

      +
      UNICODE,_UNICODE,DB_CREATE_DLL,...
      +

      You will have to do this twice: once for the debug build and once for +the release build. If you also require static libraries, repeat for the +"db_static" project (there the first symbol is "CONFIG_TEST" for the +Debug Static build and "WIN32" for the Release Static build).

      +

    2. Select "Rebuild All" from the Build menu. +
    +

    To build binaries that can also run on Windows 9x or ME, follow the +instructions at Microsoft's web site.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/cam/app.html b/db/docs/ref/cam/app.html new file mode 100644 index 000000000..3720a5e4a --- /dev/null +++ b/db/docs/ref/cam/app.html @@ -0,0 +1,131 @@ + + + + + + +Berkeley DB Reference Guide: Architecting Data Store and Concurrent Data Store applications + + + + + + +

    Berkeley DB Reference Guide:
    Berkeley DB Concurrent Data Store Applications

    PrevRefNext +
    +

    +

    Architecting Data Store and Concurrent Data Store applications

    +

    When building Data Store and Concurrent Data Store applications, there +are two special issues to consider whenever any thread of control exits +for any reason with a Berkeley DB database or database environment open.

    +

    First, unexpected application or system failure may result in lost data, +corruption or inconsistencies in Berkeley DB databases. When a thread of +control exits while holding Berkeley DB resources, all databases (modified +since the database was last flushed to disk), should be either:

    +

      +
    • removed and re-created, +
    • removed and restored from the last known good backup, +
    • verified using the DB->verify method or db_verify utility. If +the database does not verify cleanly, the contents may be salvaged using +the -R and -r options of the db_dump +utility. +
    +

    Applications where this is unacceptable should consider the Berkeley DB Transactional Data Store +product, which offers standard transactional guarantees such as +recoverability after failure.

    +

    Second, unexpected application or system failure requires that any +persistent database environment (that is, any database environment not +created using the DB_PRIVATE flag), be removed to recover the +Berkeley DB resources and release any locks or mutexes that may have been held +to avoid starvation as the remaining threads of control block behind the +failed thread's locks or mutexes.

    +

    The Berkeley DB library cannot determine when to remove and re-create a +database environment; the application must make that decision. +Furthermore, database environment removal must be single-threaded; that +is, one thread of control or process must remove and re-create the +database environment before any other thread of control or process +attempts to join the Berkeley DB environment.

    +

    There are two approaches to handling this problem:

    +
    +
    The hard way:
    Applications can track their own state carefully enough that they know +when the database environment needs to be removed and re-created. +Specifically, the rule to use is that any persistent database +environment must be removed any time the threads of control previously +using the Berkeley DB environment did not shut the environment down cleanly +before exiting the environment for any reason (including application or +system failure). +
    The easy way:
    It is almost invariably simpler to remove and re-create the database +environment each time a thread of control accessing a database +environment fails for any reason. This requires the application detect +application or system failure, of course, and remove and re-create the +database environment on application, when appropriate. +
    +

    There are two common ways to build Data Store and Concurrent Data Store +applications. The most common way is as a single, usually +multithreaded, process. This architecture is simplest because it +requires no monitoring of other threads of control. When the +application starts, it opens and potentially creates the environment, +and then opens its databases. From then on, the application can create +new threads of control as it chooses. All threads of control share the +open Berkeley DB DB_ENV and DB handles. In this model, +databases are rarely opened or closed when more than a single thread of +control is running; that is, they are opened when only a single thread +is running, and closed after all threads but one have exited. The last +thread of control to exit closes the databases and the environment.

    +

    An alternative way to build Berkeley DB applications is as a set of +cooperating processes, which may or may not be multithreaded. This +architecture is more complicated.

    +

    First, this architecture requires that the order in which threads of +control are created and subsequently access the Berkeley DB environment be +controlled because database environment removal must be single-threaded. +The first thread of control to access the environment must remove any +previously existing environment and re-create the environment, and no +other thread should attempt to access the environment until the removal +is complete. (Note this ordering requirement does not apply to +environment creation without removal. If multiple threads attempt to +create a Berkeley DB environment, only one will perform the creation and the +others will join the already existing environment.)

    +

    Second, this architecture requires that threads of control be monitored. +If any thread of control that owns Berkeley DB resources exits without first +cleanly discarding those resources, removing the database environment +is usually necessary. Before removing the database environment, all +threads using the Berkeley DB environment must relinquish all of their Berkeley DB +resources (it does not matter if they do so gracefully or because they +are forced to exit). Then, the database environment can be removed and +and the threads of control continued or restarted.

    +

    We have found that the safest way to structure groups of cooperating +processes is to first create a single process (often a shell script) +that removes and re-creates the Berkeley DB environment, verifies, rebuilds +or removes the databases, and then creates the processes or threads that +will actually perform work. The initial thread has no further +responsibilities other than to monitor the threads of control it has +created, to ensure that none of them unexpectedly exits. If one exits, +the initial process then forces all of the threads of control using the +Berkeley DB environment to exit, removes the database environment, verifies, +rebuilds or removes the databases, and restarts the working threads of +control.

    +

    If it is not practical to have a single parent for the processes sharing +a Berkeley DB environment, each process sharing the environment should log +their connection to and exit from the environment in a way that allows +a monitoring process to detect if a thread of control might have +acquired Berkeley DB resources and never released them. In this model, an +initial "watcher" process removes and re-creates the Berkeley DB environment, +verifies, rebuilds or removes the databases, and then creates a sentinel +file. Any other process wanting to use the Berkeley DB environment checks for +the sentinel file; if the sentinel file exists, the other process +registers its process ID with the watcher and joins the database +environment. When the new process finishes with the environment, it +unregisters its process ID with the watcher. The watcher periodically +checks to ensure that no process has failed while using the environment. +If a process does fail while using the environment, the watcher removes +the sentinel file, kills all processes currently using the environment, +removes and re-creates the database environment, verifies, rebuilds or +removes the databases, and re-creates the sentinel file.

    +

    Obviously, it is important that the monitoring process in either case +be as simple and well-tested as possible because there is no recourse +if it fails.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/cam/intro.html b/db/docs/ref/cam/intro.html index 1b5f26b9a..fab7ce578 100644 --- a/db/docs/ref/cam/intro.html +++ b/db/docs/ref/cam/intro.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: Berkeley DB Concurrent Data Store applications - + -

    Berkeley DB Reference Guide:
    Berkeley DB Concurrent Data Store Applications

    PrevRefNext +PrevRefNext

    Berkeley DB Concurrent Data Store applications

    @@ -94,15 +94,15 @@ lock that is blocking it.

  • Not testing Berkeley DB error return codes (if any cursor operation returns an unexpected error, that cursor must still be closed).

  • By default, Berkeley DB Concurrent Data Store does locking on a per-database basis. For this reason, -accessing multiple databases in different orders in different threads -or processes, or leaving cursors open on one database while accessing +using cursors to access multiple databases in different orders in different +threads or processes, or leaving cursors open on one database while accessing another database, can cause an application to hang. If this behavior is a requirement for the application, Berkeley DB should be configured to do locking on an environment-wide basis. See the DB_CDB_ALLDB flag of the DB_ENV->set_flags function for more information. -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/debug/common.html b/db/docs/ref/debug/common.html index 4ce650e50..8e6634671 100644 --- a/db/docs/ref/debug/common.html +++ b/db/docs/ref/debug/common.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Troubleshooting common Berkeley DB problems - + @@ -133,9 +133,16 @@ specifying the DB_RMW flag on your

    Or, if the application is doing a large number of updates in a small database, turning off Btree splits may help (see DB_REVSPLITOFF for more information.)

    +
    +

  • Opening the database environment displays the following error: +
    Log sequence error: page LSN # ######; previous LSN ## ######.
    +

    A database update was made outside of a transaction. Check that your +application passes a transaction handle to all opens and updates of +transactionally protected databases. This error leaves the environment +unrecoverable, and the databases must be dumped and reloaded.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/debug/compile.html b/db/docs/ref/debug/compile.html index 99eea3924..64cb5fb03 100644 --- a/db/docs/ref/debug/compile.html +++ b/db/docs/ref/debug/compile.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Compile-time configuration - + @@ -17,8 +17,8 @@

    Compile-time configuration

    There are three compile-time configuration options that assist in debugging Berkeley DB and Berkeley DB applications:

    -

    -

    --enable-debug
    If you want to build Berkeley DB with -g as the C and C++ compiler +
    +
    --enable-debug
    If you want to build Berkeley DB with -g as the C and C++ compiler flag, enter --enable-debug as an argument to configure. This will create Berkeley DB with debugging symbols, as well as load various Berkeley DB routines that can be called directly from a debugger to display database page @@ -26,12 +26,12 @@ content, cursor queues, and so forth. (Note that the -O optimization flag will still be specified. To compile with only the -g, explicitly set the CFLAGS environment variable before configuring.) -

    --enable-diagnostic
    If you want to build Berkeley DB with debugging run-time sanity checks and with +
    --enable-diagnostic
    If you want to build Berkeley DB with debugging run-time sanity checks and with DIAGNOSTIC #defined during compilation, enter --enable-diagnostic as an argument to configure. This will cause a number of special checks to be performed when Berkeley DB is running. This flag should not be defined when configuring to build production binaries because it degrades performance. -

    --enable-umrw
    When compiling Berkeley DB for use in run-time memory consistency checkers +
    --enable-umrw
    When compiling Berkeley DB for use in run-time memory consistency checkers (in particular, programs that look for reads and writes of uninitialized memory), use --enable-umrw as an argument to configure. This guarantees, among other things, that Berkeley DB will completely initialize @@ -40,6 +40,6 @@ amount.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/debug/intro.html b/db/docs/ref/debug/intro.html index dfb988492..b22c3f968 100644 --- a/db/docs/ref/debug/intro.html +++ b/db/docs/ref/debug/intro.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: Introduction - + -

    Berkeley DB Reference Guide:
    Debugging Applications

    PrevRefNext +PrevRefNext

    Introduction

    @@ -28,32 +28,32 @@ you with debugging applications and reporting bugs to us so that we can provide you with the correct answer or fix as quickly as possible.

    When you encounter a problem, there are a few general actions you can take:

    -

    -

    Review the Berkeley DB error output
    If an error output mechanism has been configured in the Berkeley DB +
    +
    Review the Berkeley DB error output
    If an error output mechanism has been configured in the Berkeley DB environment, additional run-time error messages are made available to the applications. If you are not using an environment, it is well worth modifying your application to create one so that you can get more detailed error messages. See Run-time error information for more information on configuring Berkeley DB to output these error messages. -

    Review DB_ENV->set_verbose
    Check the list of flags for the DB_ENV->set_verbose function, and +
    Review DB_ENV->set_verbose
    Check the list of flags for the DB_ENV->set_verbose function, and see if any of them will produce additional information that might help understand the problem. -

    Add run-time diagnostics
    You can configure and build Berkeley DB to perform run-time diagnostics. (By +
    Add run-time diagnostics
    You can configure and build Berkeley DB to perform run-time diagnostics. (By default, these checks are not done because they can seriously impact performance.) See Compile-time configuration for more information. -

    Apply all available patches
    Before reporting a problem to Sleepycat Software, please upgrade to the +
    Apply all available patches
    Before reporting a problem to Sleepycat Software, please upgrade to the latest Sleepycat Software release of Berkeley DB, if possible, or at least make sure you have applied any updates available for your release from the Sleepycat Software web site. -

    Run the test suite
    If you see repeated failures or failures of simple test cases, run the +
    Run the test suite
    If you see repeated failures or failures of simple test cases, run the Berkeley DB test suite to determine whether the distribution of Berkeley DB you are using was built and configured correctly.
    - - + + @@ -58,16 +59,19 @@ + + + @@ -75,6 +79,6 @@

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/debug/printlog.html b/db/docs/ref/debug/printlog.html index 7f882fbd3..42069df77 100644 --- a/db/docs/ref/debug/printlog.html +++ b/db/docs/ref/debug/printlog.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Reviewing Berkeley DB log files - + @@ -48,7 +48,7 @@ some records.

    The following table presents each currently written log record type with a brief description of the operation it describes. Any of these record types may have the string "_debug" appended if they -were written because DB_TXN_NOT_DURABLE was specified and the +were written because DB_TXN_NOT_DURABLE was specified and the system was configured with --enable-diagnostic.

    @@ -58,6 +58,7 @@ system was configured with - + + - + + + + + @@ -154,6 +160,6 @@ extract:

    awk -f range.awk START_FILE=sf START_OFFSET=so END_FILE=ef END_OFFSET=eo log_output
    db_debugLog debugging message.
    db_noopThis marks an operation that did nothing but update the LSN on a page.
    db_ovrefIncrement or decrement the reference count for a big item.
    db_pg_allocIndicates we allocated a page to a Btree.
    db_pg_allocIndicates we allocated a page to a database.
    db_pg_freeIndicates we freed a page (freed pages are added to a freelist and reused).
    db_pg_freedataIndicates we freed a page that still contained data entries (freed pages are added to a freelist and reused.)
    db_pg_initIndicates we reinitialized a page during a truncate.
    db_pg_newIndicates that a page was allocated and put on the free list.
    db_pg_prepareIndicates a new page was allocated during a child transaction of a prepared transaction.
    db_relinkFix prev/next chains on duplicate pages because a page was added or removed.
    dbreg_registerRecords an open of a file (mapping the filename to a log-id that is used in subsequent log operations).
    fop_createCreate a file in the file system.
    fop_file_removeRemove a name in the file system.
    fop_removeRemove a file in the file system.
    fop_renameRename a file in the file system.
    fop_writeWrite bytes to an object in the file system.
    ham_chgpgUsed to adjust a cursor location when a Hash page is removed, and its elements are moved to a different Hash page.
    ham_copypageUsed when we empty a bucket page, but there are overflow pages for the bucket; one needs to be copied back into the actual bucket.
    ham_curadjUsed to adjust a cursor location when a nearby record changes in a Hash database.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/debug/runtime.html b/db/docs/ref/debug/runtime.html index 02705396f..3140c2095 100644 --- a/db/docs/ref/debug/runtime.html +++ b/db/docs/ref/debug/runtime.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Run-time error information - + @@ -43,6 +43,6 @@ described previously to format and display error messages to appropriate output devices.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/distrib/layout.html b/db/docs/ref/distrib/layout.html index 3269139f3..f9e17ed46 100644 --- a/db/docs/ref/distrib/layout.html +++ b/db/docs/ref/distrib/layout.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Source code layout - + @@ -22,7 +22,8 @@

    btreeBtree access method source code
    build_unixUNIX build directory
    build_vxworksVxWorks build directory.
    build_win32Windows build directory.
    build_win32Windows 32-bit build directory.
    build_win64Windows 64-bit build directory.
    clibC library replacement functions
    commonCommon Berkeley DB functions
    cryptoCryptographic support
    libdb_javaThe libdb_java shared library
    lockLock manager
    logLog manager
    mod_db4Apache module support
    mpShared memory buffer pool
    mutexMutexes
    osPOSIX 1003.1 operating-system specific functionality
    os_vxworksVxWorks operating-system specific functionality
    os_win32Windows operating-system specific functionality
    perlDB_File and BerkeleyDB Perl modules
    php_db4PHP module support
    qamQueue access method source code
    repReplication source code
    rpc_clientRPC client support
    rpc_serverRPC server utility
    sequenceSequence source code
    tclTcl API
    testTest suite
    txnTransaction manager

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/distrib/port.html b/db/docs/ref/distrib/port.html index b9aa39426..077135cea 100644 --- a/db/docs/ref/distrib/port.html +++ b/db/docs/ref/distrib/port.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Porting Berkeley DB to new architectures - + @@ -105,6 +105,6 @@ have any porting questions, just let us know, and we will be happy to answer them.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/dumpload/format.html b/db/docs/ref/dumpload/format.html index 68fe67f00..ae5a1469a 100644 --- a/db/docs/ref/dumpload/format.html +++ b/db/docs/ref/dumpload/format.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Dump output formats - + @@ -65,6 +65,6 @@ DATA=END.

    will repeat; that is, a new set of headers and a new set of data items.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/dumpload/text.html b/db/docs/ref/dumpload/text.html index 806f3bd08..f7da9df92 100644 --- a/db/docs/ref/dumpload/text.html +++ b/db/docs/ref/dumpload/text.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Loading text into databases - + @@ -28,6 +28,6 @@ name as the key item and the entire password entry as the data item:

    to avoid interpretation as escape characters by db_load.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/dumpload/utility.html b/db/docs/ref/dumpload/utility.html index 803110d1a..d977d4b64 100644 --- a/db/docs/ref/dumpload/utility.html +++ b/db/docs/ref/dumpload/utility.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: The db_dump and db_load utilities - + -

    Berkeley DB Reference Guide:
    Dumping and Reloading

    PrevRefNext +PrevRefNext

    The db_dump and db_load utilities

    @@ -39,8 +39,8 @@ the load process itself will fail.

    The only available workaround for either Hash or Btree databases is to modify the sources for the db_load utility to load the database using the correct hash, prefix, and comparison functions.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/env/create.html b/db/docs/ref/env/create.html index fb8975dd8..ed61fcea8 100644 --- a/db/docs/ref/env/create.html +++ b/db/docs/ref/env/create.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Creating a database environment - + @@ -32,8 +32,8 @@ in a different directory or on a different system.

    or joins the database environment. There are a number of options you can set to customize DB_ENV->open for your environment. These options fall into four broad categories:

    -

    -

    Subsystem Initialization:
    These flags indicate which Berkeley DB subsystems will be initialized for the +
    +
    Subsystem Initialization:
    These flags indicate which Berkeley DB subsystems will be initialized for the environment, and what operations will happen automatically when databases are accessed within the environment. The flags include DB_JOINENV, DB_INIT_CDB, DB_INIT_LOCK, @@ -45,13 +45,13 @@ a single subsystem; that is, when DB_RECOVER and +
    Recovery options:
    These flags, which include DB_RECOVER and DB_RECOVER_FATAL, indicate what recovery is to be performed on the environment before it is opened for normal use. -

    Naming options:
    These flags, which include DB_USE_ENVIRON and +
    Naming options:
    These flags, which include DB_USE_ENVIRON and DB_USE_ENVIRON_ROOT, modify how file naming happens in the environment. -

    Miscellaneous:
    Finally, there are a number of miscellaneous flags, for example, +
    Miscellaneous:
    Finally, there are a number of miscellaneous flags, for example, DB_CREATE which causes underlying files to be created as necessary. See the DB_ENV->open manual pages for further information. @@ -125,6 +125,6 @@ err: (void)dbenv->close(dbenv, 0); }

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/env/db_config.html b/db/docs/ref/env/db_config.html index 1935840df..22888b964 100644 --- a/db/docs/ref/env/db_config.html +++ b/db/docs/ref/env/db_config.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: DB_CONFIG configuration file - + @@ -46,6 +46,6 @@ compiled-in application cache size to a size more appropriate for a specific machine.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/env/encrypt.html b/db/docs/ref/env/encrypt.html index 0d370d675..8378dbab4 100644 --- a/db/docs/ref/env/encrypt.html +++ b/db/docs/ref/env/encrypt.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Encryption - + @@ -87,6 +87,6 @@ Mersenne Twister code into Berkeley DB.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/env/error.html b/db/docs/ref/env/error.html index 18dc0fc99..f4644babf 100644 --- a/db/docs/ref/env/error.html +++ b/db/docs/ref/env/error.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Error support - + @@ -53,6 +53,6 @@ a permission error, the error messages shown would look like this:

    my_app: contact your system administrator: session ID was 2

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/env/faq.html b/db/docs/ref/env/faq.html index a6d1efa5d..82572812f 100644 --- a/db/docs/ref/env/faq.html +++ b/db/docs/ref/env/faq.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Environment FAQ - + @@ -55,6 +55,6 @@ data members or methods.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/env/intro.html b/db/docs/ref/env/intro.html index 7a86ed745..72112b33c 100644 --- a/db/docs/ref/env/intro.html +++ b/db/docs/ref/env/intro.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Database environment introduction - + @@ -44,77 +44,42 @@ other's data as it resides in the shared regions, and they will share resources such as buffer space and locks. At the same time, any applications using the same databases must share an environment if consistency is to be maintained between them.

    - + - + - - - - - - - - - - - - - - - - - - + + - - - - - + + + + - + - - + + - - - - - - - - - - - - - - - - - -
    Database Environments and Related MethodsDescription
    Database Environment OperationsDescription
    db_env_createCreate an environment handle
    DB_ENV->closeClose an environment
    DB_ENV->dbremoveRemove a database
    DB_ENV->dbrenameRename a database
    DB_ENV->errError message with error string
    DB_ENV->errxError message
    DB_ENV->lock_detectPerform deadlock detection
    DB_ENV->lock_getAcquire a lock
    DB_ENV->lock_idAcquire a locker ID
    DB_ENV->lock_id_freeRelease a locker ID
    DB_ENV->lock_putRelease a lock
    DB_ENV->lock_statReturn lock subsystem statistics
    DB_ENV->lock_vecAcquire/release locks
    DB_ENV->log_archiveList log and database files
    DB_ENV->log_cursorCreate a log cursor handle
    DB_ENV->log_fileMap Log Sequence Numbers to log files
    DB_ENV->log_flushFlush log records
    DB_ENV->log_putWrite a log record
    DB_ENV->log_statReturn log subsystem statistics
    DB_ENV->memp_fcreateOpen a file in a memory pool
    DB_ENV->memp_registerRegister input/output functions for a file in a memory pool
    DB_ENV->memp_statReturn memory pool statistics
    DB_ENV->memp_syncFlush pages from a memory pool
    DB_ENV->memp_trickleTrickle flush pages from a memory pool
    DB_ENV->get_homeReturn environment's home directory
    DB_ENV->get_open_flagsReturn the flags with which the environment was opened
    DB_ENV->openOpen an environment
    DB_ENV->removeRemove an environment
    DB_ENV->rep_electHold a replication election
    DB_ENV->rep_process_messageProcess a replication message
    DB_ENV->rep_startConfigure an environment for replication
    DB_ENV->rep_statReplication statistics
    DB_ENV->set_allocSet local space allocation functions
    DB_ENV->stat_printEnvironment statistics
    db_strerrorError strings
    db_versionReturn version information
    Environment Configuration
    DB_ENV->set_app_dispatchConfigure application recovery
    DB_ENV->set_cachesizeSet the environment cache size
    DB_ENV->set_allocSet local space allocation functions
    DB_ENV->set_data_dirSet the environment data directory
    DB_ENV->set_encryptSet the environment cryptographic key
    DB_ENV->set_errcallSet error message callback
    DB_ENV->set_errfileSet error message FILE
    DB_ENV->set_errcall, DB_ENV->set_msgcallSet error and informational message callbacks
    DB_ENV->set_errfile, DB_ENV->set_msgfileSet error and informational message FILE
    DB_ENV->set_errpfxSet error message prefix
    DB_ENV->set_feedbackSet feedback callback
    DB_ENV->set_flagsEnvironment configuration
    DB_ENV->set_lg_bsizeSet log buffer size
    DB_ENV->set_lg_dirSet the environment logging directory
    DB_ENV->set_lg_maxSet log file size
    DB_ENV->set_lg_regionmaxSet logging region size
    DB_ENV->set_lk_conflictsSet lock conflicts matrix
    DB_ENV->set_lk_detectSet automatic deadlock detection
    DB_ENV->set_lk_max_lockersSet maximum number of lockers
    DB_ENV->set_lk_max_locksSet maximum number of locks
    DB_ENV->set_lk_max_objectsSet maximum number of lock objects
    DB_ENV->set_mp_mmapsizeSet maximum mapped-in database file size
    DB_ENV->set_paniccallSet panic callback
    DB_ENV->set_rep_limitLimit data sent in response to a single message
    DB_ENV->set_rep_transportConfigure replication transport
    DB_ENV->set_rpc_serverEstablish an RPC server connection
    DB_ENV->set_shm_keySet system memory shared segment ID
    DB_ENV->set_tas_spinsSet the number of test-and-set spins
    DB_ENV->set_timeoutSet lock and transaction timeout
    DB_ENV->set_tmp_dirSet the environment temporary file directory
    DB_ENV->set_tx_maxSet maximum number of transactions
    DB_ENV->set_tx_timestampSet recovery timestamp
    DB_ENV->set_verboseSet verbose messages
    DB_ENV->txn_beginBegin a transaction
    DB_ENV->txn_checkpointCheckpoint the transaction subsystem
    DB_ENV->txn_recoverDistributed transaction recovery
    DB_ENV->txn_statReturn transaction subsystem statistics

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/env/naming.html b/db/docs/ref/env/naming.html index e6234befd..02d3931b3 100644 --- a/db/docs/ref/env/naming.html +++ b/db/docs/ref/env/naming.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: File naming - + @@ -34,11 +34,11 @@ information.

    information may be specified to the Berkeley DB library. The specific circumstances and order in which these ways are applied are described in a subsequent paragraph.

    -

    -

    db_home
    If the db_home argument to DB_ENV->open is non-NULL, +
    +
    db_home
    If the db_home argument to DB_ENV->open is non-NULL, its value may be used as the database home, and files named relative to its path. -

    DB_HOME
    If the DB_HOME environment variable is set when DB_ENV->open is +
    DB_HOME
    If the DB_HOME environment variable is set when DB_ENV->open is called, its value may be used as the database home, and files named relative to its path.

    The DB_HOME environment variable is intended to permit users and system @@ -48,7 +48,7 @@ example::

    Application writers are encouraged to support the -h option found in the supporting Berkeley DB utilities to let users specify a database home.

    -

    DB_ENV methods
    There are three DB_ENV methods that affect file naming. The +
    DB_ENV methods
    There are three DB_ENV methods that affect file naming. The DB_ENV->set_data_dir method specifies a directory to search for database files. The DB_ENV->set_lg_dir method specifies a directory in which to create logging files. The DB_ENV->set_tmp_dir method specifies a @@ -57,7 +57,7 @@ are intended to permit applications to customize a file location for a database. For example, an application writer can place data files and log files in different directories or instantiate a new log directory each time the application runs. -

    DB_CONFIG
    The same information specified to the DB_ENV methods may also be +
    DB_CONFIG
    The same information specified to the DB_ENV methods may also be specified using the DB_CONFIG configuration file.

    Filename resolution in Berkeley DB

    @@ -65,8 +65,8 @@ specified using the DB_CONFIG -

    -

    absolute pathnames
    If the filename specified to a Berkeley DB function is an absolute +
    +
    absolute pathnames
    If the filename specified to a Berkeley DB function is an absolute pathname, that filename is used without modification by Berkeley DB.

    On UNIX systems, an absolute pathname is defined as any pathname that begins with a leading slash (/).

    @@ -74,21 +74,21 @@ begins with a leading slash (/).

    a leading slash or leading backslash (\); or any pathname beginning with a single alphabetic character, a colon and a leading slash or backslash (for example, C:/tmp).

    -

    DB_ENV methods, DB_CONFIG
    If a relevant configuration string (for example, set_data_dir), is +
    DB_ENV methods, DB_CONFIG
    If a relevant configuration string (for example, set_data_dir), is specified either by calling a DB_ENV method or as a line in the DB_CONFIG configuration file, the value is prepended to the filename. If the resulting filename is an absolute pathname, the filename is used without further modification by Berkeley DB. -

    db_home
    If the application specified a non-NULL db_home argument to +
    db_home
    If the application specified a non-NULL db_home argument to DB_ENV->open, its value is prepended to the filename. If the resulting filename is an absolute pathname, the filename is used without further modification by Berkeley DB. -

    DB_HOME
    If the db_home argument is NULL, the DB_HOME environment +
    DB_HOME
    If the db_home argument is NULL, the DB_HOME environment variable was set, and the application has set the appropriate DB_USE_ENVIRON or DB_USE_ENVIRON_ROOT flags, its value is prepended to the filename. If the resulting filename is an absolute pathname, the filename is used without further modification by Berkeley DB. -

    default
    Finally, all filenames are interpreted relative to the current working +
    default
    Finally, all filenames are interpreted relative to the current working directory of the process.

    The common model for a Berkeley DB environment is one in which only the DB_HOME @@ -122,6 +122,6 @@ dbenv->set_data_dir(dbenv, "data1"); dbenv->open(dbenv, "/a/database", flags, mode);

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/env/open.html b/db/docs/ref/env/open.html index 32f3a93d5..e6860b593 100644 --- a/db/docs/ref/env/open.html +++ b/db/docs/ref/env/open.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Opening databases within the environment - + @@ -85,6 +85,6 @@ err: if (dbp2 != NULL) }

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/env/region.html b/db/docs/ref/env/region.html index 6bcf7c02b..1ba9ee91b 100644 --- a/db/docs/ref/env/region.html +++ b/db/docs/ref/env/region.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Shared memory regions - + @@ -70,6 +70,6 @@ shared memory that is being used by the environment.

    displayed using the -e option to the db_stat utility.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/env/remote.html b/db/docs/ref/env/remote.html index acad323c2..8a5d5e942 100644 --- a/db/docs/ref/env/remote.html +++ b/db/docs/ref/env/remote.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Remote filesystem - + @@ -38,17 +38,17 @@ databases cannot be accessed from more than one Berkeley DB environment at a time (and therefore from more than one system), because no Berkeley DB database may be accessed from more than one Berkeley DB environment at a time.

    -

    -

    FreeBSD note:
    Some FreeBSD releases are known to return ENOLCK from fsync and close +
    +
    FreeBSD note:
    Some FreeBSD releases are known to return ENOLCK from fsync and close calls on NFS-mounted filesystems, even though the call has succeeded. The Berkeley DB code should be modified to ignore ENOLCK errors, or no Berkeley DB files should be placed on NFS-mounted filesystems on these systems. -

    Linux note:
    Some Linux releases are known to not support complete semantics for the +
    Linux note:
    Some Linux releases are known to not support complete semantics for the POSIX fsync call on NFS-mounted filesystems. No Berkeley DB files should be placed on NFS-mounted filesystems on these systems.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/env/security.html b/db/docs/ref/env/security.html index 46dcd6ff3..c01a8fa88 100644 --- a/db/docs/ref/env/security.html +++ b/db/docs/ref/env/security.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Security - + @@ -18,25 +18,25 @@

    Security

    The following are security issues that should be considered when writing Berkeley DB applications:

    -

    -

    Database environment permissions
    The directory used as the Berkeley DB database environment should have its +
    +
    Database environment permissions
    The directory used as the Berkeley DB database environment should have its permissions set to ensure that files in the environment are not accessible to users without appropriate permissions. Applications that add to the user's permissions (for example, UNIX setuid or setgid applications), must be carefully checked to not permit illegal use of those permissions such as general file access in the environment directory. -

    Environment variables
    Setting the DB_USE_ENVIRON and DB_USE_ENVIRON_ROOT flags +
    Environment variables
    Setting the DB_USE_ENVIRON and DB_USE_ENVIRON_ROOT flags and allowing the use of environment variables during file naming can be dangerous. Setting those flags in Berkeley DB applications with additional permissions (for example, UNIX setuid or setgid applications) could potentially allow users to read and write databases to which they would not normally have access. -

    File permissions
    By default, Berkeley DB always creates files readable and writable by the owner +
    File permissions
    By default, Berkeley DB always creates files readable and writable by the owner and the group (that is, S_IRUSR, S_IWUSR, S_IRGRP and S_IWGRP; or octal mode 0660 on historic UNIX systems). The group ownership of created files is based on the system and directory defaults, and is not further specified by Berkeley DB. -

    Temporary backing files
    If an unnamed database is created and the cache is too small to hold +
    Temporary backing files
    If an unnamed database is created and the cache is too small to hold the database in memory, Berkeley DB will create a temporary physical file to enable it to page the database to disk as needed. In this case, environment variables such as TMPDIR may be used to specify @@ -51,6 +51,6 @@ known permissions.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/ext/mod.html b/db/docs/ref/ext/mod.html new file mode 100644 index 000000000..55a181606 --- /dev/null +++ b/db/docs/ref/ext/mod.html @@ -0,0 +1,69 @@ + + + + + + +Berkeley DB Reference Guide: Using Berkeley DB with Apache + + + + + + + +

    Berkeley DB Reference Guide:
    Berkeley DB Extensions

    PrevRefNext +
    +

    +

    Using Berkeley DB with Apache

    +

    A mod_db4 Apache module for this release of Berkeley DB is included in the +distribution, providing a safe framework for running Berkeley DB applications +in the Apache 1.3 environment. In general, it is dangerous to run Berkeley DB +in a multiprocess system without some facility to coordinate recovery +between participating processes. Apache natively provides no interface +for communication between processes, so the mod_db4 module exists to +provide this communication.

    +

    Specifically, mod_db4 provides the following facilities:

    +
      +

    1. New constructors for DB_ENV and DB handles, which install +replacement open/close methods. +

    2. Transparent caching of open DB_ENV and DB handles. +

    3. Reference counting on all structures, allowing the module to detect the +initial opening of any managed database and automatically perform recovery. +

    4. Automatic detection of unexpected failures (segfaults, or a module +actually calling exit() and avoiding shut down phases), and automatic +termination of all child processes with open database resources to +attempt consistency. +
    +

    mod_db4 is designed to be used as an alternative interface to Berkeley DB. To +have another Apache module (for example, mod_foo) use mod_db4, do not +link mod_foo against the Berkeley DB library. In your mod_foo makefile, you +should:

    +
    #include "mod_db4_export.h"
    +

    and add your Apache include directory to your CPPFLAGS.

    +

    In mod_foo, to create a mod_db4 managed DB_ENV handle, use the +following:

    +
    int mod_db4_db_env_create(DB_ENV **dbenvp, u_int32_t flags);
    +

    which takes identical arguments to db_env_create.

    +

    To create a mod_db4 managed DB handle, use the following:

    +
    int mod_db4_db_create(DB **dbp, DB_ENV *dbenv, u_int32_t flags);
    +

    which takes identical arguments to db_create.

    +

    Otherwise the API is completely consistent with the standard Sleepycat +API.

    +

    The mod_db4 module requires the Berkeley DB library be compiled with C++ extensions +and the libmm library. Information and source code for the libmm library can +be found at +http://www.ossp.org/pkg/lib/mm/

    +

    To build this apache module, perform the following steps:

    +
    % ./configure --with-apxs=[path to the apxs utility] \
    +	--with-db4=[Berkeley DB library installation directory] \
    +	--with-mm=[libmm installation directory]
    +% make
    +% make install
    +

    Post-installation, modules can use this extension via the functions +documented in $APACHE_INCLUDEDIR/mod_db4_export.h.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/ext/perl.html b/db/docs/ref/ext/perl.html new file mode 100644 index 000000000..2dec231bc --- /dev/null +++ b/db/docs/ref/ext/perl.html @@ -0,0 +1,43 @@ + + + + + + +Berkeley DB Reference Guide: Using Berkeley DB with Perl + + + + + + + +

    Berkeley DB Reference Guide:
    Berkeley DB Extensions

    PrevRefNext +
    +

    +

    Using Berkeley DB with Perl

    +

    The original Perl module for Berkeley DB was DB_File, which was written to +interface to Berkeley DB version 1.85. The newer Perl module for Berkeley DB is +BerkeleyDB, which was written to interface to version 2.0 and subsequent +releases. Because Berkeley DB version 2.X has a compatibility API for version +1.85, you can (and should!) build DB_File using version 2.X of Berkeley DB, +although DB_File will still only support the 1.85 functionality.

    +

    DB_File is distributed with the standard Perl source distribution (look +in the directory "ext/DB_File"). You can find both DB_File and BerkeleyDB +on CPAN, the Comprehensive Perl Archive Network of mirrored FTP sites. +The master CPAN site is +ftp://ftp.funet.fi/.

    +

    Versions of both BerkeleyDB and DB_File that are known to work correctly +with each release of Berkeley DB are included in the distributed Berkeley DB source +tree, in the subdirectories perl.BerkeleyDB and +perl.DB_File. Each of those directories contains a +README file with instructions on installing and using those +modules.

    +

    The Perl interface is not maintained by Sleepycat Software. Questions +about the DB_File and BerkeleyDB modules are best asked on the Usenet +newsgroup comp.lang.perl.modules.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/ext/php.html b/db/docs/ref/ext/php.html new file mode 100644 index 000000000..62ae0de60 --- /dev/null +++ b/db/docs/ref/ext/php.html @@ -0,0 +1,102 @@ + + + + + + +Berkeley DB Reference Guide: Using Berkeley DB with PHP + + + + + + + +

    Berkeley DB Reference Guide:
    Berkeley DB Extensions

    PrevRefNext +
    +

    +

    Using Berkeley DB with PHP

    +

    A PHP 4 extension for this release of Berkeley DB is included in the +distribution package. It can either either link directly against the +installed Berkeley DB library (which is necessary for running in a +non-Apache/mod_php4 environment), or against mod_db4, which provides +additional safety when running under Apache/mod_php4.

    +

    The PHP extension provides the following classes, which mirror the +standard Berkeley DB C++ API.

    +
    class Db4Env {
    +
    function Db4Env($flags = 0) {}
    +function close($flags = 0) {}
    +function dbremove($txn, $filename, $database = null, $flags = 0) {}
    +function dbrename($txn, $file, $database, $new_database, $flags = 0) {}
    +function open($home, $flags = DB_CREATE  | DB_INIT_LOCK | DB_INIT_LOG | DB_INIT_MPOOL | DB_INIT_TXN, $mode = 0666) {}
    +function remove($home, $flags = 0) {}
    +function set_data_dir($directory) {}
    +function txn_begin($parent_txn = null, $flags = 0) {}
    +function txn_checkpoint($kbytes, $minutes, $flags = 0) {}
    +} +

    +class Db4 { +

    function Db4($dbenv = null) {}	// create a new Db4 object using the optional DbEnv
    +function open($txn = null, $file = null, $database = null, $flags = DB_CREATE, $mode = 0) {}
    +function close() {}
    +function del($key, $txn = null) {}
    +function get($key, $txn = null, $flags = 0) {}
    +function pget($key, &$pkey, $txn = null, $flags = 0) {}
    +function get_type() {}	// returns the stringified database type name
    +function stat() {}	// returns statistics as an associative array
    +function join($cursor_list, $flags = 0) {}
    +function sync() {}
    +function truncate($txn = null, $flags = 0) {}
    +function cursor($txn = null, flags = 0) {}
    +} +

    +class Db4Txn { +

    function abort() {}
    +function commit() {}
    +function discard() {
    +function id() {}
    +function set_timeout($timeout, $flags = 0) {}
    +} +

    +class Db4Cursor { +

    function close() {}
    +function count() {}
    +function del() {}
    +function dup($flags = 0) {}
    +function get($key, $flags = 0) {}
    +function pget($key, &$primary_key, $flags = 0) {}
    +function put($key, $data, $flags = 0) {}
    +}
    +

    The PHP extension attempts to be "smart" for you by:

    +
      +

    1. Auto-committing operations on transactional databases if no explicit +Db4Txn object is specified. +

    2. Performing reference and dependency checking to insure that all +resources are closed in the correct order. +

    3. Supplying default values for flags. +
    +

    To install this PHP module linked against the mod_db4 framework, perform +the following steps:

    +
    % phpize
    +% ./configure --with-db4=[Berkeley DB library installation directory] \
    +	--with-mod_db4=$APACHE_INCLUDEDIR
    +% make
    +% make install
    +

    Then, in your php.ini file add the following:

    +
    extension=db4.so
    +

    This extension will now only run in a SAPI linked into Apache httpd +(mod_php4, most likely), and will take advantage of all of its +auto-recovery and handle-caching facilities.

    +

    To install this php module linked against the Berkeley DB library and not the +mod_db4 framework, perform the following steps:

    +
    % phpize
    +% ./configure --with-db4=[Berkeley DB library installation directory]
    +% make
    +% make install
    +

    Then in your php.ini file add:

    +
    extension=db4.so
    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/install/file.html b/db/docs/ref/install/file.html index 208993243..3f89ff555 100644 --- a/db/docs/ref/install/file.html +++ b/db/docs/ref/install/file.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: File utility /etc/magic information - + @@ -33,6 +33,6 @@ Berkeley DB distribution. This magic.txt information is correct for both big-endian and little-endian architectures.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/install/multiple.html b/db/docs/ref/install/multiple.html index 370493995..6e3794010 100644 --- a/db/docs/ref/install/multiple.html +++ b/db/docs/ref/install/multiple.html @@ -1,17 +1,17 @@ - - + + Berkeley DB Reference Guide: Building with multiple versions of Berkeley DB - + -

    Berkeley DB Reference Guide:
    System Installation Notes

    PrevRefNext +PrevRefNext

    Building with multiple versions of Berkeley DB

    @@ -48,8 +48,8 @@ version of Berkeley DB happens to be installed on the target system. Second, use --with-uniquename when configuring Berkeley DB, because that will insure that you do not unexpectedly collide with other application code or a library already installed on the target system.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/intro/data.html b/db/docs/ref/intro/data.html index 15cf282d6..10993985e 100644 --- a/db/docs/ref/intro/data.html +++ b/db/docs/ref/intro/data.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: An introduction to data management - + @@ -50,6 +50,6 @@ commercially-available database systems. The problem is selecting the one that best solves the problems that their applications face.


    RefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/intro/dbis.html b/db/docs/ref/intro/dbis.html index 427751089..5c3255dbb 100644 --- a/db/docs/ref/intro/dbis.html +++ b/db/docs/ref/intro/dbis.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: What is Berkeley DB? - + @@ -155,6 +155,6 @@ increasingly important feature in a world using CGI scripts to deliver HTML.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/intro/dbisnot.html b/db/docs/ref/intro/dbisnot.html index e49284394..cf727a3dd 100644 --- a/db/docs/ref/intro/dbisnot.html +++ b/db/docs/ref/intro/dbisnot.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: What Berkeley DB is not - + @@ -136,6 +136,6 @@ servers make calls through the Berkeley DB API to find records and return them to clients. On its own, however, Berkeley DB is not a server.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/intro/distrib.html b/db/docs/ref/intro/distrib.html index 9c370d99d..413136ef0 100644 --- a/db/docs/ref/intro/distrib.html +++ b/db/docs/ref/intro/distrib.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: What does the Berkeley DB distribution include? - + @@ -24,6 +24,6 @@ architecture/compiler combinations are available as part of Sleepycat Software's Berkeley DB support services.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/intro/need.html b/db/docs/ref/intro/need.html index 9857ff13a..ba9398fec 100644 --- a/db/docs/ref/intro/need.html +++ b/db/docs/ref/intro/need.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Do you need Berkeley DB? - + @@ -56,6 +56,6 @@ that set of features, then Berkeley DB is almost certainly the best choice for you.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/intro/products.html b/db/docs/ref/intro/products.html index 16709854a..604a185db 100644 --- a/db/docs/ref/intro/products.html +++ b/db/docs/ref/intro/products.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: Sleepycat Software's Berkeley DB products - + -

    Berkeley DB Reference Guide:
    Introduction

    PrevRefNext +PrevRefNext

    Sleepycat Software's Berkeley DB products

    @@ -63,8 +63,8 @@ application requires. All replicas can handle read requests during normal processing. If the master system fails for any reason, one of the replicas takes over as the new master system, and distributes updates to the remaining replicas.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/intro/terrain.html b/db/docs/ref/intro/terrain.html index 4913e1861..b4e1f7e8d 100644 --- a/db/docs/ref/intro/terrain.html +++ b/db/docs/ref/intro/terrain.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Mapping the terrain: theory and practice - + @@ -244,6 +244,6 @@ application creates new opportunity for installation mistakes and run-time problems.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/intro/what.html b/db/docs/ref/intro/what.html index fd0d38028..112a03fa4 100644 --- a/db/docs/ref/intro/what.html +++ b/db/docs/ref/intro/what.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: What other services does Berkeley DB provide? - + @@ -17,20 +17,20 @@

    What other services does Berkeley DB provide?

    Berkeley DB also provides core database services to developers. These services include:

    -

    -

    Page cache management:
    The page cache provides fast access to a cache of database pages, +
    +
    Page cache management:
    The page cache provides fast access to a cache of database pages, handling the I/O associated with the cache to ensure that dirty pages are written back to the file system and that new pages are allocated on demand. Applications may use the Berkeley DB shared memory buffer manager to serve their own files and pages. -

    Transactions and logging:
    The transaction and logging systems provide recoverability and atomicity +
    Transactions and logging:
    The transaction and logging systems provide recoverability and atomicity for multiple database operations. The transaction system uses two-phase locking and write-ahead logging protocols to ensure that database operations may be undone or redone in the case of application or system failure. Applications may use Berkeley DB transaction and logging subsystems to protect their own data structures and operations from application or system failure. -

    Locking:
    The locking system provides multiple reader or single writer access to +
    Locking:
    The locking system provides multiple reader or single writer access to objects. The Berkeley DB access methods use the locking system to acquire the right to read or write database pages. Applications may use the Berkeley DB locking subsystem to support their own locking needs. @@ -49,6 +49,6 @@ Berkeley DB access method. As a result, developers can integrate non-database objects into their transactional applications using Berkeley DB.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/intro/where.html b/db/docs/ref/intro/where.html index 86e2fe9c5..ee8662aff 100644 --- a/db/docs/ref/intro/where.html +++ b/db/docs/ref/intro/where.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Where does Berkeley DB run? - + @@ -40,6 +40,6 @@ Windows/NT, Windows/2000 and Windows/XP, via the Microsoft Visual C++ for more information.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/java/compat.html b/db/docs/ref/java/compat.html index 1443c8d9f..1fc11409f 100644 --- a/db/docs/ref/java/compat.html +++ b/db/docs/ref/java/compat.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Compatibility - + @@ -30,6 +30,6 @@ across multiple platforms. However, using the JNI means that Berkeley DB will not be compatible with Microsoft Visual J++.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/java/conf.html b/db/docs/ref/java/conf.html index 226a096b5..1c0c0824a 100644 --- a/db/docs/ref/java/conf.html +++ b/db/docs/ref/java/conf.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: Java configuration - + -

    Berkeley DB Reference Guide:
    Java API

    PrevRefNext +PrevRefNext

    Java configuration

    @@ -98,8 +98,8 @@ your current directory:

    it exits, you should see a list of the lines you entered display with data items. This is a simple check to make sure the fundamental configuration is working correctly.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/java/faq.html b/db/docs/ref/java/faq.html index 7f336cfee..3443acbd3 100644 --- a/db/docs/ref/java/faq.html +++ b/db/docs/ref/java/faq.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Java FAQ - + @@ -17,6 +17,36 @@

    Java FAQ

      +

    1. On what platforms is the Berkeley DB Java API supported? +

      All platforms supported by Berkeley DB that have a J2SE 1.3.1 compliant JVM.

      +

    2. Will the Berkeley DB Java API function properly when using Java +version 1.4? +

      The minimum required version is J2SE 1.3. Sun claims, and it has been +our experience, that for the most part 1.4.1 is backwards compatible +with 1.3.1. It is highly likely it will, we recommend that you run the +supplied test suites against the specific Java VM on the specific +platform on which you plan to ship your product to ensure compatibility.

      +

    3. How does the Berkeley DB Java API relate to the J2EE standard? +

      The Berkeley DB Java API does not currently implement any part of the J2EE +standard. That said, it does implement the implicit standard for Java +Java Collections. The concept of a transaction exists in several +Java packages (J2EE, XA, JINI to name a few). Support for these APIs +will be added based on demand in future versions of Berkeley DB.

      +

    4. How should I incorporate db.jar and the db native library into +a Tomcat or other J2EE application servers? +

      Tomcat and other J2EE application servers have the ability to rebuild +and reload code automatically. When using Tomcat this is the case when +"reloadable" is set to "true". If your WAR file includes the db.jar it +too will be reloaded each time your code is reloaded. This causes +exceptions as the native library can't be loaded more than once and +there is no way to unload native code. The solution is to place the +db.jar in $TOMCAT_HOME/common/lib and let Tomcat load that library once +at start time rather than putting it into the WAR that gets reloaded +over and over.

      +

    5. Can I use the Berkeley DB Java API from within a EJB, a Servlet or a +JSP page? +

      Yes. The Berkeley DB Java API can be used from within all the popular J2EE +application servers in many different ways.

    6. During one of the first calls to the Berkeley DB Java API, a DbException is thrown with a "Bad file number" or "Bad file descriptor" message. @@ -32,21 +62,31 @@ follows (note the 'd' at the end):

      % java -Dsleepycat.db.libname=libdb_java-VERSIONd

      On UNIX, try:

      % java -Dsleepycat.db.libname=db_java_g-VERSION
      -

    7. How should I incorporate db.jar and the db native library -into a Tomcat or other J2EE application servers? -

      Tomcat and other J2EE application servers have the ability to -rebuild and reload code automatically. When using Tomcat this -is the case when "reloadable" is set to "true". If your WAR -file includes the db.jar it too will be reloaded each time -your code is reloaded. This causes exceptions as the native -library can't be loaded more than once and there is no way to -unload native code. The solution is to place the db.jar in -$TOMCAT_HOME/common/lib and let Tomcat load that library once -at start time rather than putting it into the WAR that -gets reloaded over and over.

      +

    8. Why is ClassNotFoundException thrown when adding a record to +the database, when a SerialBinding is used? +

      This problem occurs if you copy the db.jar file into the Java extensions +(ext) directory. This will cause the database code to run under the +System class loader, and it won't be able to find your application +classes.

      +

      You'll have to actually remove db.jar from the Java extension directory. +If you have more than one installation of Java, be sure to remove it +from all of them. This is necessary even if db.jar is specified in the +classpath.

      +

      An example of the exception is:

      +
      com.sleepycat.examples.bdb.shipment.basic.SupplierKey
      +at java.net.URLClassLoader$1.run(Unknown Source)
      +at java.security.AccessController.doPrivileged(Native Method)
      +at java.net.URLClassLoader.findClass(Unknown Source)
      +at java.lang.ClassLoader.loadClass(Unknown Source)
      +at java.lang.ClassLoader.loadClass(Unknown Source)
      +at java.lang.ClassLoader.loadClassInternal(Unknown Source)
      +at java.lang.Class.forName0(Native Method)
      +at java.lang.Class.forName(Unknown Source)
      +at com.sleepycat.bind.serial.StoredClassCatalog.getClassInfo(StoredClassCatalog.java:211)
      +...

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/java/program.html b/db/docs/ref/java/program.html index e0571b8a6..68b6d27b5 100644 --- a/db/docs/ref/java/program.html +++ b/db/docs/ref/java/program.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Java programming notes - + @@ -30,79 +30,38 @@ order, so we would have to do extra bookkeeping to make sure that everything was closed in the proper order. The best word of advice is to always do a close() for any matching open() call. Specifically, the Berkeley DB package requires that you explicitly call close on each individual -Db - and -Dbc - object that you opened. Your database +Database and +Cursor object that you opened. Your database activity may not be synchronized to disk unless you do so.

  • Some methods in the Java API have no return type, and throw a -DbException - when an severe error -arises. There are some notable -methods that do have a return value, and can also throw an exception. -Db.get - and -Dbc.get - both return 0 when a get succeeds, -return Db.DB_NOTFOUND when the key is not found, and throw an error -when there is a severe error. This approach allows the programmer to -check for typical data-driven errors by watching return values without -special casing exceptions. -

    An object of type -DbDeadlockException - is +DatabaseException when an severe error +arises. There are some notable methods that do have a return value, and +can also throw an exception. The "get" methods in +Database and +Cursor both return 0 when a get +succeeds, DB_NOTFOUND when the key is not found, and throw an +error when there is a severe error. This approach allows the programmer +to check for typical data-driven errors by watching return values +without special casing exceptions. +

    An object of type MemoryException is +thrown when a Dbt is too small to hold the corresponding key or data item.

    +

    An object of type DeadlockException is thrown when a deadlock would occur.

    -

    An object of type -DbMemoryException - is -thrown when the system cannot provide enough memory to complete the -operation (the ENOMEM system error on UNIX).

    -

    An object of type -DbRunRecoveryException -, -a subclass of -DbException -, is thrown when -there is an error that requires a -recovery of the database using db_recover.

    -

    An object of type -IllegalArgumentException +

    An object of type RunRecoveryException, a +subclass of DatabaseException, is thrown when +there is an error that requires a recovery of the database using +db_recover.

    +

    An object of type IllegalArgumentException a standard Java Language exception, is thrown when there is an error in method arguments.

    -

  • Berkeley DB always turns on the -Db.DB_THREAD -flag because threads are expected in Java. -

  • Callbacks in Java manufacture -Dbt - objects -from internal data. For efficiency, the data field in such Dbts is -not set in the Java object until a -Dbt.getData - method call. This avoids the -creation of a potentially large Java byte array if it isn't needed. If -callback code can be written to defer calling -Dbt.getData -performance may be increased. For example, a bt_compare method might -compare values returned by -Dbt.getSize -before deciding whether a call to -Dbt.getData - is needed. -

  • If there are embedded null strings in the curslist argument for -Db.join -, they will be treated as the -end of the list of -cursors, even if you may have allocated a longer array. Fill in all -the strings in your array unless you intend to cut it short. -

  • The callback installed for -DbEnv.setErrorHandler - will run in the same -thread as the caller to -DbEnv.setErrorHandler -. Make sure that -thread remains running until your application exits or until -DbEnv.close -is called. +

    An object of type OutOfMemoryError is thrown +when the system cannot provide enough memory to complete the operation +(the ENOMEM system error on UNIX).

    +

  • If there are embedded nulls in the curslist argument for +Database.join(com.sleepycat.db.Cursor__BRACKETS__, com.sleepycat.db.JoinConfig), +they will be treated as the end of the list of cursors, even if you +may have allocated a longer array. Fill in all the cursors in your +array unless you intend to cut it short.

  • If you are using custom class loaders in your application, make sure that the Berkeley DB classes are loaded by the system class loader, not a custom class loader. This is due to a JVM bug that can cause an access @@ -111,6 +70,6 @@ Java Bug Database).

  • PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/lock/am_conv.html b/db/docs/ref/lock/am_conv.html index 3f59e39fb..7251b55b5 100644 --- a/db/docs/ref/lock/am_conv.html +++ b/db/docs/ref/lock/am_conv.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Berkeley DB Transactional Data Store locking conventions - + @@ -119,6 +119,6 @@ span threads of control, so the library knows that two cursors in the same transaction cannot modify the database concurrently.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/lock/cam_conv.html b/db/docs/ref/lock/cam_conv.html index 0f16a12c7..731685a03 100644 --- a/db/docs/ref/lock/cam_conv.html +++ b/db/docs/ref/lock/cam_conv.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Berkeley DB Concurrent Data Store locking conventions - + @@ -23,8 +23,8 @@ entirely in the Berkeley DB interface layer.

    The object it locks is the file, identified by its unique file number. The locking matrix is not one of the two standard lock modes, instead, we use a four-lock set, consisting of the following:

    -

    -

    DB_LOCK_NG
    not granted (always 0) +
    +
    DB_LOCK_NG
    not granted (always 0)
    DB_LOCK_READ
    read (shared)
    DB_LOCK_WRITE
    write (exclusive)
    DB_LOCK_IWRITE
    intention-to-write (shared with NG and READ, but conflicts with WRITE and IWRITE) @@ -49,6 +49,6 @@ already locked with a READ lock.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/lock/config.html b/db/docs/ref/lock/config.html index d03ecedae..222ae3cf6 100644 --- a/db/docs/ref/lock/config.html +++ b/db/docs/ref/lock/config.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Configuring locking - + @@ -39,6 +39,6 @@ locking conflicts matrix. This is an advanced configuration option, and is almost never necessary.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/lock/dead.html b/db/docs/ref/lock/dead.html index ad9df2199..2ba094ca7 100644 --- a/db/docs/ref/lock/dead.html +++ b/db/docs/ref/lock/dead.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Deadlock detection - + @@ -79,6 +79,6 @@ operations block temporarily on locks but are soon able to proceed, automatic detection can decrease performance.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/lock/deaddbg.html b/db/docs/ref/lock/deaddbg.html index 273e509c1..31b5e3459 100644 --- a/db/docs/ref/lock/deaddbg.html +++ b/db/docs/ref/lock/deaddbg.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Deadlock debugging - + @@ -136,6 +136,6 @@ progress, one of them will have to be killed in order to resolve the deadlock.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/lock/intro.html b/db/docs/ref/lock/intro.html index 46f938a81..460fbf3eb 100644 --- a/db/docs/ref/lock/intro.html +++ b/db/docs/ref/lock/intro.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Berkeley DB and locking - + @@ -83,25 +83,25 @@ the lock subsystem. It is the programmatic interface used by the

    The locking subsystem is closed by the call to DB_ENV->close.

    Finally, the entire locking subsystem may be discarded using the DB_ENV->remove method.

    - + - - - - - - - - - - - - - + + + + + + + + + + + + +
    Locking Subsystem and Related MethodsDescription
    DB_ENV->set_lk_conflictsSet lock conflicts matrix
    DB_ENV->set_lk_detectSet automatic deadlock detection
    DB_ENV->set_lk_max_lockersSet maximum number of lockers
    DB_ENV->set_lk_max_locksSet maximum number of locks
    DB_ENV->set_lk_max_objectsSet maximum number of lock objects
    DB_ENV->set_timeoutSet lock and transaction timeout
    DB_ENV->lock_detectPerform deadlock detection
    DB_ENV->lock_getAcquire a lock
    DB_ENV->lock_idAcquire a locker ID
    DB_ENV->lock_id_freeRelease a locker ID
    DB_ENV->lock_putRelease a lock
    DB_ENV->lock_statReturn lock subsystem statistics
    DB_ENV->lock_vecAcquire/release locks
    DB_ENV->lock_detectPerform deadlock detection
    DB_ENV->lock_getAcquire a lock
    DB_ENV->lock_idAcquire a locker ID
    DB_ENV->lock_id_freeRelease a locker ID
    DB_ENV->lock_putRelease a lock
    DB_ENV->lock_statReturn lock subsystem statistics
    DB_ENV->lock_vecAcquire/release locks
    DB_ENV->set_lk_conflictsSet lock conflicts matrix
    DB_ENV->set_lk_detectSet automatic deadlock detection
    DB_ENV->set_lk_max_lockersSet maximum number of lockers
    DB_ENV->set_lk_max_locksSet maximum number of locks
    DB_ENV->set_lk_max_objectsSet maximum number of lock objects
    DB_ENV->set_timeoutSet lock and transaction timeout

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/lock/max.html b/db/docs/ref/lock/max.html index fe414de65..99ddad165 100644 --- a/db/docs/ref/lock/max.html +++ b/db/docs/ref/lock/max.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Configuring locking: sizing the system - + @@ -44,14 +44,16 @@ applications, finer granularity of control is necessary in order to minimize the size of the Lock subsystem.

    The maximum number of lockers can be estimated as follows:

      -
    • If the database environment is configured to use transactions, the -maximum number of lockers needed is the number of simultaneously active -transactions and child transactions (where a child transaction is active -until its parent commits or aborts, not until it commits or aborts). -
    • If the database environment is not configured to use transactions, the -maximum number of lockers needed is the number of simultaneous -non-cursor operations plus an additional locker for every simultaneously -open cursor or database handle. +
    • If the database environment is using transactions, the maximum number +of lockers can be estimated by adding the number of simultaneously +active non-transactional cursors open database handles to the number of +simultaneously active transactions and child transactions (where a child +transaction is active until it commits or aborts, not until its parent +commits or aborts). +
    • If the database environment is not using transactions, the maximum +number of lockers can be estimated by adding the number of +simultaneously active non-transactional cursors and open database +handles to the number of simultaneous non-cursor operations.

    The maximum number of lock objects needed for a single database operation can be estimated as follows:

    @@ -90,6 +92,6 @@ applications are unlikely to actually need that many locks. Reviewing the Lock subsystem statistics is the best way to determine this value.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/lock/nondb.html b/db/docs/ref/lock/nondb.html index 26d06e311..1146ae76c 100644 --- a/db/docs/ref/lock/nondb.html +++ b/db/docs/ref/lock/nondb.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Locking and non-Berkeley DB applications - + @@ -46,6 +46,6 @@ be post-processed into a human-readable schedule of conference room use.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/lock/notxn.html b/db/docs/ref/lock/notxn.html index ad6e843a2..099f48ea9 100644 --- a/db/docs/ref/lock/notxn.html +++ b/db/docs/ref/lock/notxn.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Locking without transactions - + @@ -42,6 +42,6 @@ concurrent access, but not transactions, are more safely implemented using the Berkeley DB Concurrent Data Store Product.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/lock/page.html b/db/docs/ref/lock/page.html index e02894f31..7ea77af76 100644 --- a/db/docs/ref/lock/page.html +++ b/db/docs/ref/lock/page.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Locking granularity - + @@ -67,6 +67,6 @@ Therefore, two conflicting threads of control cannot access the same duplicate set simultaneously.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/lock/stdmode.html b/db/docs/ref/lock/stdmode.html index ae004ed20..f40b12e26 100644 --- a/db/docs/ref/lock/stdmode.html +++ b/db/docs/ref/lock/stdmode.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Standard lock modes - + @@ -26,8 +26,8 @@ lock mode within a conflict matrix.

    matrix used by Berkeley DB to support the underlying access methods is more complicated, but this matrix shows the lock mode relationships available to applications using the Berkeley DB Locking subsystem interfaces directly.

    -

    -

    DB_LOCK_NG
    not granted (always 0) +
    +
    DB_LOCK_NG
    not granted (always 0)
    DB_LOCK_READ
    read (shared)
    DB_LOCK_WRITE
    write (exclusive)
    DB_LOCK_IWRITE
    intention to write (shared) @@ -45,15 +45,15 @@ Write** 0 1 1 1 1 1 Intent Write 0 1 1 0 0 0 Intent Read 0 0 1 0 0 0 Intent RW 0 1 1 0 0 0 -

    -

    *
    In this case, suppose that there is a read lock held on an object. A new +
    +
    *
    In this case, suppose that there is a read lock held on an object. A new request for a read lock would be granted, but a request for a write lock would not. -

    **
    In this case, suppose that there is a write lock held on an object. A +
    **
    In this case, suppose that there is a write lock held on an object. A new request for either a read or write lock would be denied.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/lock/timeout.html b/db/docs/ref/lock/timeout.html index 53606fbe1..e6760aaeb 100644 --- a/db/docs/ref/lock/timeout.html +++ b/db/docs/ref/lock/timeout.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Deadlock detection using timers - + @@ -35,7 +35,11 @@ case of timeout.

    first block or when deadlock detection is performed, the accuracy of the timeout depends on how often deadlock detection is performed. More specifically, transactions will continue to run after their timeout has -expired if they do not block on a lock request after that time.

    +expired if they do not block on a lock request after that time. +A separate deadlock detection thread (or process) should always +be used if the application depends on timeouts otherwise if +there are no new blocked lock requests a pending timeout will +never trigger.

    If the database environment deadlock detector has been configured with the DB_LOCK_EXPIRE option, timeouts are the only mechanism by which deadlocks will be broken. If the deadlock detector has been @@ -61,6 +65,6 @@ and the specific lock described will be timed out if it blocks longer than 4ms.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/lock/twopl.html b/db/docs/ref/lock/twopl.html index b1382464d..8f81627b9 100644 --- a/db/docs/ref/lock/twopl.html +++ b/db/docs/ref/lock/twopl.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Locking with transactions: two-phase locking - + @@ -46,6 +46,6 @@ transaction most likely to deadlock.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/log/config.html b/db/docs/ref/log/config.html index 68de05486..5a6fd736d 100644 --- a/db/docs/ref/log/config.html +++ b/db/docs/ref/log/config.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Configuring logging - + @@ -42,6 +42,6 @@ or transactions producing large amounts of data. By default, the buffer is 32KB.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/log/intro.html b/db/docs/ref/log/intro.html index 00642046a..eb63d82fb 100644 --- a/db/docs/ref/log/intro.html +++ b/db/docs/ref/log/intro.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Berkeley DB and logging - + @@ -33,37 +33,38 @@ have two methods: DB_LOGC->get method log, and DB_LOGC->close method to destroy the cursor.

    There are additional methods for integrating the log subsystem with a transaction processing system:

    -

    -

    DB_ENV->log_flush
    Flushes the log up to a particular log sequence number. -

    log_compare
    Allows applications to compare any two log sequence numbers. -

    DB_ENV->log_file
    Maps a log sequence number to the specific log file that contains it. -

    DB_ENV->log_archive
    Returns various sets of log filenames. These methods are used for +
    +
    DB_ENV->log_flush
    Flushes the log up to a particular log sequence number. +
    log_compare
    Allows applications to compare any two log sequence numbers. +
    DB_ENV->log_file
    Maps a log sequence number to the specific log file that contains it. +
    DB_ENV->log_archive
    Returns various sets of log filenames. These methods are used for database administration; for example, to determine if log files may safely be removed from the system. -

    DB_ENV->log_stat
    The display db_stat utility uses the DB_ENV->log_stat method to +
    DB_ENV->log_stat
    The display db_stat utility uses the DB_ENV->log_stat method to display statistics about the log. -

    DB_ENV->remove
    The log meta-information (but not the log files themselves) may be +
    DB_ENV->remove
    The log meta-information (but not the log files themselves) may be removed using the DB_ENV->remove method.
    - + - - - - - - - - - - - - - + + + + + + + + + + + + + +
    Logging Subsystem and Related MethodsDescription
    DB_ENV->log_archiveList log and database files
    DB_ENV->log_cursorCreate a log cursor handle
    DB_ENV->log_fileMap Log Sequence Numbers to log files
    DB_ENV->log_flushFlush log records
    DB_ENV->log_putWrite a log record
    DB_ENV->set_lg_bsizeSet log buffer size
    DB_ENV->set_lg_dirSet the environment logging directory
    DB_ENV->set_lg_maxSet log file size
    DB_ENV->set_lg_regionmaxSet logging region size
    log_compareCompare two Log Sequence Numbers
    DB_ENV->log_statReturn log subsystem statistics
    DB_LOGC->closeClose a log cursor
    DB_LOGC->getRetrieve a log record
    DB_LSNLog Sequence Numbers
    log_compareCompare two Log Sequence Numbers
    DB_ENV->log_archiveList log and database files
    DB_ENV->log_cursorCreate a log cursor handle
    DB_ENV->log_fileMap Log Sequence Numbers to log files
    DB_ENV->log_flushFlush log records
    DB_ENV->log_putWrite a log record
    DB_ENV->log_statReturn log subsystem statistics
    DB_ENV->set_lg_bsizeSet log buffer size
    DB_ENV->set_lg_dirSet the environment logging directory
    DB_ENV->set_lg_maxSet log file size
    DB_ENV->set_lg_regionmaxSet logging region size
    DB_LOGC->closeClose a log cursor
    DB_LOGC->getRetrieve a log record

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/log/limits.html b/db/docs/ref/log/limits.html index 3568f75ca..2f0d2d1a3 100644 --- a/db/docs/ref/log/limits.html +++ b/db/docs/ref/log/limits.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Log file limits - + @@ -33,17 +33,17 @@ application is reaching the end of its log filename space, you must do the following:

    1. Archive your databases as if to prepare for catastrophic failure (see -db_archive for more information). -

    2. Dump and reload all your databases (see db_dump and -db_load for more information). -

    3. Remove all of the log files from the database environment. Note: This -is the only situation in which all the log files are removed from an -environment; in all other cases, at least a single log file is -retained. +Database and log file archival +for more information). +

    4. Reset the database's log sequence numbers (see the -r option +to the db_load utility for more information). +

    5. Remove all of the log files from the database environment. (This is the +only situation in which all the log files are removed from an environment; +in all other cases, at least a single log file is retained.)

    6. Restart your application.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/mp/config.html b/db/docs/ref/mp/config.html index 0daa7f19e..cfe11f2ea 100644 --- a/db/docs/ref/mp/config.html +++ b/db/docs/ref/mp/config.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Configuring the memory pool - + @@ -48,6 +48,6 @@ the size of files mapped into the process address space, use the DB_ENV->set_mp_mmapsize method.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/mp/intro.html b/db/docs/ref/mp/intro.html index 2b04bab86..053a49e58 100644 --- a/db/docs/ref/mp/intro.html +++ b/db/docs/ref/mp/intro.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Berkeley DB and the memory pool - + @@ -68,30 +68,34 @@ database systems, and which allows the memory pool to be flushed up to a specified log sequence number (DB_LSN).

  • The entire pool may be discarded using the DB_ENV->remove method. - + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + +
    Memory Pools and Related MethodsDescription
    DB_ENV->set_cachesizeSet the environment cache size
    DB_ENV->set_mp_mmapsizeSet maximum mapped-in database file size
    DB_ENV->memp_registerRegister input/output functions for a file in a memory pool
    DB_ENV->memp_statReturn memory pool statistics
    DB_ENV->memp_syncFlush pages from a memory pool
    DB_ENV->memp_trickleTrickle flush pages from a memory pool
    DB_ENV->memp_fcreateOpen a file in a memory pool
    DB_MPOOLFILE->closeClose a file in a memory pool
    DB_MPOOLFILE->getGet page from a file in a memory pool
    DB_MPOOLFILE->openOpen a file in a memory pool
    DB_MPOOLFILE->putReturn a page to a memory pool
    DB_MPOOLFILE->setSet memory pool page status
    DB_MPOOLFILE->syncFlush pages from a file in a memory pool
    DB_MPOOLFILE->set_clear_lenSet file page bytes to be cleared
    DB_MPOOLFILE->set_fileidSet file unique identifier
    DB_MPOOLFILE->set_ftypeSet file type
    DB_MPOOLFILE->set_lsn_offsetSet file log-sequence-number offset
    DB_MPOOLFILE->set_pgcookieSet file cookie for pgin/pgout
    DB->mpfReturn the database's memory pool handle
    DB_ENV->memp_fcreateOpen a file in a memory pool
    DB_ENV->memp_registerRegister input/output functions for a file in a memory pool
    DB_ENV->memp_set_max_openfdSet the maximum number of open file descriptors
    DB_ENV->memp_set_max_writeSet the maximum number of sequential disk writes
    DB_ENV->memp_statReturn memory pool statistics
    DB_ENV->memp_syncFlush pages from a memory pool
    DB_ENV->memp_trickleTrickle flush pages from a memory pool
    DB_ENV->set_cachesizeSet the environment cache size
    DB_ENV->set_mp_mmapsizeSet maximum mapped-in database file size
    DB_MPOOLFILE->closeClose a file in a memory pool
    DB_MPOOLFILE->getGet page from a file in a memory pool
    DB_MPOOLFILE->openOpen a file in a memory pool
    DB_MPOOLFILE->putReturn a page to a memory pool
    DB_MPOOLFILE->setSet memory pool page status
    DB_MPOOLFILE->set_clear_lenSet file page bytes to be cleared
    DB_MPOOLFILE->set_fileidSet file unique identifier
    DB_MPOOLFILE->set_flagsGeneral memory pool file configuration
    DB_MPOOLFILE->set_ftypeSet file type
    DB_MPOOLFILE->set_lsn_offsetSet file log-sequence-number offset
    DB_MPOOLFILE->set_pgcookieSet file cookie for pgin/pgout
    DB_MPOOLFILE->syncFlush pages from a file in a memory pool

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/pindex.src b/db/docs/ref/pindex.src index 92e992d6c..7295d2951 100644 --- a/db/docs/ref/pindex.src +++ b/db/docs/ref/pindex.src @@ -1,24 +1,13 @@ -__APIREL__/utility/berkeley_db_svc.html__OCT__2 @berkeley_db_svc -__APIREL__/utility/berkeley_db_svc.html__OCT__3 utility to support @RPC client/server -__APIREL__/utility/db_archive.html__OCT__2 @db_archive -__APIREL__/utility/db_archive.html__OCT__3 utility to @archive log files -__APIREL__/utility/db_checkpoint.html__OCT__2 @db_checkpoint -__APIREL__/utility/db_checkpoint.html__OCT__3 utility to take @checkpoints -__APIREL__/utility/db_deadlock.html__OCT__2 @db_deadlock -__APIREL__/utility/db_deadlock.html__OCT__3 utility to detect @deadlocks -__APIREL__/utility/db_dump.html__OCT__2 @db_dump -__APIREL__/utility/db_dump.html__OCT__3 utility to @dump databases as text files -__APIREL__/utility/db_load.html__OCT__2 @db_load -__APIREL__/utility/db_load.html__OCT__3 utility to @load text files into databases -__APIREL__/utility/db_printlog.html__OCT__2 @db_printlog -__APIREL__/utility/db_printlog.html__OCT__3 utility to display @log files as text -__APIREL__/utility/db_recover.html__OCT__2 @db_recover -__APIREL__/utility/db_recover.html__OCT__3 utility to @recover database environments -__APIREL__/utility/db_stat.html__OCT__2 @db_stat -__APIREL__/utility/db_stat.html__OCT__3 utility to display database and environment @statistics -__APIREL__/utility/db_upgrade.html__OCT__2 @db_upgrade -__APIREL__/utility/db_upgrade.html__OCT__3 utility to upgrade @database files -__APIREL__/utility/db_upgrade.html__OCT__4 utility to @upgrade database files -__APIREL__/utility/db_verify.html__OCT__2 @db_verify -__APIREL__/utility/db_verify.html__OCT__3 utility to verify @database files -__APIREL__/utility/db_verify.html__OCT__4 utility to @verify database files +__APIREL__/utility/berkeley_db_svc.html__OCT__2 utility to support @RPC client/server +__APIREL__/utility/db_archive.html__OCT__2 utility to @archive log files +__APIREL__/utility/db_checkpoint.html__OCT__2 utility to take @checkpoints +__APIREL__/utility/db_deadlock.html__OCT__2 utility to detect @deadlocks +__APIREL__/utility/db_dump.html__OCT__2 utility to @dump databases as text files +__APIREL__/utility/db_load.html__OCT__2 utility to @load text files into databases +__APIREL__/utility/db_printlog.html__OCT__2 utility to display @log files as text +__APIREL__/utility/db_recover.html__OCT__2 utility to @recover database environments +__APIREL__/utility/db_stat.html__OCT__2 utility to display database and environment @statistics +__APIREL__/utility/db_upgrade.html__OCT__2 utility to upgrade @database files +__APIREL__/utility/db_upgrade.html__OCT__3 utility to @upgrade database files +__APIREL__/utility/db_verify.html__OCT__2 utility to verify @database files +__APIREL__/utility/db_verify.html__OCT__3 utility to @verify database files diff --git a/db/docs/ref/program/appsignals.html b/db/docs/ref/program/appsignals.html index cc0f9b8e0..378af10c0 100644 --- a/db/docs/ref/program/appsignals.html +++ b/db/docs/ref/program/appsignals.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Signal handling - + @@ -34,6 +34,6 @@ underlying system calls that return failure with errno set to EINTR will be restarted rather than failing.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/program/cache.html b/db/docs/ref/program/cache.html index 862c625a5..fa7d7685f 100644 --- a/db/docs/ref/program/cache.html +++ b/db/docs/ref/program/cache.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Disk drive caches - + @@ -30,6 +30,6 @@ Many times, this means that write-caching on the disk drive must be disabled.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/program/compatible.html b/db/docs/ref/program/compatible.html index c296d7e8d..9537853ce 100644 --- a/db/docs/ref/program/compatible.html +++ b/db/docs/ref/program/compatible.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Compatibility with historic UNIX interfaces - + @@ -28,6 +28,6 @@ information. No utilities are provided to convert UNIX ndbm, or hsearch databases.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/program/copy.html b/db/docs/ref/program/copy.html index ebffa1ce1..4aee3846c 100644 --- a/db/docs/ref/program/copy.html +++ b/db/docs/ref/program/copy.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Copying databases - + @@ -24,16 +24,15 @@ When multiple processes or threads open the same database file in Berkeley DB, it is this bytestring that is used to ensure that the same underlying pages are updated in the shared memory buffer pool, no matter which Berkeley DB handle is used for the operation.

    -

    It is usually a bad idea to physically copy a database to a new name. In -the few cases in which copying is the best solution for your application, -you must guarantee that there are never two different databases with -the same file identification bytestring in the memory pool at the same -time. Copying databases is further complicated by the fact that the -shared memory buffer pool does not discard all cached copies of pages -for a database when the database is logically closed; that is, when -DB->close is called. Nor is there a Berkeley DB interface to -explicitly discard pages from the shared memory buffer pool for any -particular database.

    +

    It is usually a bad idea to physically copy a database to a new name. +In the few cases in which copying is the best solution for your +application, you must guarantee that there are never two different +databases with the same file identification bytestring in the memory +pool at the same time. Copying databases is further complicated because +the shared memory buffer pool does not discard cached database pages +when the database is closed by calling the DB->close method, cached +pages are only discarded when the database is removed by calling the +DB->remove method.

    Before copying a database, you must ensure that all modified pages have been written from the memory pool cache to the backing database file. This is done using the DB->sync or DB->close methods.

    @@ -53,15 +52,13 @@ create a new file that will have a new bytestring is to call the then use the db_load utility to load the dumped output into a new file. This allows you to access both the original and copy of the database at the same time. -

  • If your database is too large to be copied, overwrite the bytestring in -the copied database with a new bytestring. This allows you to access -both the original and copy of the database at the same time. -If there are multiple databases in a single physical file, -the bytestring found in the first page of each database needs to -be overwritten, not just the first page of the physical file. +

  • If your database is too large to be copied, reset the bytestring in the +copied database to a new bytestring. This allows you to access both the +original and copy of the database at the same time. You can reset the +bytestring with the -r flag to the db_load utility.

  • PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/program/environ.html b/db/docs/ref/program/environ.html index 462b6750a..73e7f3685 100644 --- a/db/docs/ref/program/environ.html +++ b/db/docs/ref/program/environ.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Environment variables - + @@ -17,18 +17,18 @@

    Environment variables

    The Berkeley DB library uses the following environment variables:

    -

    -

    DB_HOME
    If the environment variable DB_HOME is set, it is used as part of +
    +
    DB_HOME
    If the environment variable DB_HOME is set, it is used as part of File Naming. Note: For the DB_HOME variable to take effect, either the DB_USE_ENVIRON or DB_USE_ENVIRON_ROOT flags must be specified to DB_ENV->open. -

    TMPDIR, TEMP, TMP, TempFolder
    The TMPDIR, TEMP, TMP, and TempFolder environment variables are all +
    TMPDIR, TEMP, TMP, TempFolder
    The TMPDIR, TEMP, TMP, and TempFolder environment variables are all checked as locations in which to create temporary files. See DB_ENV->set_tmp_dir for more information.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/program/errorret.html b/db/docs/ref/program/errorret.html index f5e8f793a..5189d2e5e 100644 --- a/db/docs/ref/program/errorret.html +++ b/db/docs/ref/program/errorret.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Error returns to applications - + @@ -20,13 +20,13 @@ interfaces, Berkeley DB does not use the global variable errno to return error values. The return values for all Berkeley DB functions are grouped into the following three categories:

    -

    -

    0
    A return value of 0 indicates that the operation was successful. -

    > 0
    A return value that is greater than 0 indicates that there was a system +
    +
    0
    A return value of 0 indicates that the operation was successful. +
    > 0
    A return value that is greater than 0 indicates that there was a system error. The errno value returned by the system is returned by the function; for example, when a Berkeley DB function is unable to allocate memory, the return value from the function will be ENOMEM. -

    < 0
    A return value that is less than 0 indicates a condition that was not +
    < 0
    A return value that is less than 0 indicates a condition that was not a system failure, but was not an unqualified success, either. For example, a routine to retrieve a key/data pair from the database may return DB_NOTFOUND when the key/data pair does not appear in @@ -62,8 +62,9 @@ DB_KEYEMPTY for records that were created as part of a transaction that was later aborted and never re-created.

    DB_KEYEXIST

    The DB_KEYEXIST error return indicates the DB_NOOVERWRITE -option was specified to the DB->put method and the key already exists -in the database.

    +option was specified when inserting a key/data pair into the database and +the key already exists in the database, or the DB_NODUPDATA +option was specified and the key/data pair already exists in the data.

    DB_LOCK_DEADLOCK

    When multiple threads of control are modifying the database, there is @@ -108,6 +109,6 @@ by simply exiting the application when the callback function is called in applications that have no cleanup processing of their own.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/program/faq.html b/db/docs/ref/program/faq.html index 3e644d64f..e58491447 100644 --- a/db/docs/ref/program/faq.html +++ b/db/docs/ref/program/faq.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Programmer notes FAQ - + @@ -38,6 +38,6 @@ contains the wrapper object.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/program/mt.html b/db/docs/ref/program/mt.html index 713fe89aa..80321efc4 100644 --- a/db/docs/ref/program/mt.html +++ b/db/docs/ref/program/mt.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Multithreaded applications - + @@ -73,6 +73,6 @@ programs may have additional requirements. For more information, see file.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/program/namespace.html b/db/docs/ref/program/namespace.html index 26151e180..b3b3db7ed 100644 --- a/db/docs/ref/program/namespace.html +++ b/db/docs/ref/program/namespace.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Name spaces - + @@ -30,19 +30,27 @@ each architecture. If they are not provided by the system, they are typedef'd in the db.h include file. The types that may be typedef'd by db.h include the following: u_int8_t, int16_t, u_int16_t, int32_t, u_int32_t, u_char, u_short, u_int, and u_long.

    -

    The Berkeley DB library declares a number of external routines. All these -routines are prefixed with the strings "db_", "lock_", "log_", "memp_" -or "txn_". All internal routines are prefixed with the strings "__db_", -"__lock_", "__log_", "__memp_", or "__txn_".

    +

    The Berkeley DB library declares a few external routines. All these routines +are prefixed with the strings "db_". All internal Berkeley DB routines are +prefixed with the strings "__XXX_", where "XXX" is the subsystem prefix +(for example, "__db_XXX_" and "__txn_XXX_").

    Filesystem Name Space

    Berkeley DB environments create or use some number of files in environment home directories. These files are named DB_CONFIG, "log.NNNNN" (for example, log.0000000003, where the number of digits following the dot is unspecified), or with the string prefix "__db" (for example, -__db.001). Database files that match these names should not be created -in the environment directory.

    +__db.001). Applications should never create files or databases in +database environment home directories with names beginning with the +characters "log" or "__db".

    +

    In some cases, applications may choose to remove Berkeley DB files as part of +their cleanup procedures, using system utilities instead of Berkeley DB +interfaces (for example, using the UNIX rm utility instead of the +DB_ENV->remove method). This is not a problem, as long as applications +limit themselves to removing only files named "__db.###", where "###" +are the digits 0 through 9. Applications should never remove any files +named with the prefix "__db" or "log", other than "__db.###" files.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/program/ram.html b/db/docs/ref/program/ram.html index 40761f455..d050577b3 100644 --- a/db/docs/ref/program/ram.html +++ b/db/docs/ref/program/ram.html @@ -1,12 +1,12 @@ - - + + -Berkeley DB Reference Guide: RAM-only configurations +Berkeley DB Reference Guide: Memory-only configurations - + @@ -14,22 +14,17 @@
    PrevRefNext

    -

    RAM-only configurations

    -

    Berkeley DB supports RAM-only configurations, however, Berkeley DB does not -guarantee writes will never be attempted to disk.

    -

    You can configure RAM-only databases by not specifying a physical file -name to the DB->open method. Databases created in this way will never -be written to disk unless Berkeley DB runs out of cache space. Running out -of cache space happens when the application attempts to create a new -database page and there is no spare room in the cache, nor is there a -clean page which can simply be evicted from the cache, and a dirty page -must be written from the cache to disk to make room to create the new -page. When Berkeley DB runs out of cache space, it will attempt to create a -temporary backing file to make new room in the cache, which is not what -you want.

    -

    You can create RAM-only database environments (in which you can work -with both RAM-only and disk-backed databases) in two different types of -memory: in heap memory or in system shared memory. To create the +

    Memory-only configurations

    +

    Berkeley DB supports a variety of memory-only configurations, intended for +systems where filesystem space is limited in availability or entirely +replaced by some combination of RAM and Flash. There are three database +environment files that are potentially written to disk: database +environment shared region files, database files and log files. Each of +these file types can be individually configured to be created in memory +rather than on disk.

    +

    First, database environment shared region files. Applications can +create RAM-only database environments in two different types of memory: +in application heap memory or in system shared memory. To create the database environment in heap memory, specify the DB_PRIVATE flag to the DB_ENV->open method. Database environments created in heap memory are only accessible to the threads of a single process, however. @@ -39,15 +34,29 @@ environments created in system memory are accessible to multiple processes. However, database environments created in system shared memory do create a small (roughly 8 byte) file in the file system read by the processes to identify the system shared memory segments to use.

    -

    Finally, if your database environment is intended to be transactionally -protected or recoverable after application or system failure (that is, -if you configure either the locking or transaction subsystems in the -database environment), both the databases and database environment log -files must be written to disk. There is currently no way in the Berkeley DB -database environment to support transactions without writing log files -to disk.

    +

    Second, database files. Applications can create RAM-only databases by +not specifying a physical filename when opening the database using the +DB->open method. Normally, if the database environment cache fills +up Berkeley DB will create temporary backing files for RAM-only databases. +Use the DB_MPOOL_NOFILE flag to the DB_MPOOLFILE->set_flags method to +configure the cache to never create backing files for a database. Use +the DB_MPOOLFILE->set_maxsize method to limit the size of a database so it +cannot dirty the entire cache.

    +

    Third, log files. If a database environment is intended to be +transactionally recoverable after application or system failure (that +is, if it will exhibit the transactional attribute of "durability"), the +databases and the database environment log files must either be written +to the local disk and recovered, or they must be replicated to other +systems. When durability is not desired, or is accomplished through +replication, local database environments can be configured for +transactional behavior without durability, resulting in log files never +being written to disk. To configure a database environment this way, +specify the DB_LOG_INMEMORY flag to the +DB_ENV->set_flags method. To configure an individual database in a +database environment to be transactional but not durable, specify the +DB_TXN_NOT_DURABLE flag to the DB->set_flags method.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/program/runtime.html b/db/docs/ref/program/runtime.html index 2a8dc2b8e..e28fbd5ed 100644 --- a/db/docs/ref/program/runtime.html +++ b/db/docs/ref/program/runtime.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Run-time configuration - + @@ -26,10 +26,13 @@ interfaces. The following interfaces support this functionality:

    db_env_set_func_existsdb_env_set_func_freedb_env_set_func_fsync +db_env_set_func_ftruncatedb_env_set_func_ioinfodb_env_set_func_mallocdb_env_set_func_mapdb_env_set_func_open +db_env_set_func_pread +db_env_set_func_pwritedb_env_set_func_readdb_env_set_func_reallocdb_env_set_func_rename @@ -51,6 +54,6 @@ written using previous versions of the Berkeley DB APIs, and is only useful as an example.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/program/scope.html b/db/docs/ref/program/scope.html index 782bb5ede..5262f3758 100644 --- a/db/docs/ref/program/scope.html +++ b/db/docs/ref/program/scope.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Berkeley DB handles - + @@ -19,8 +19,8 @@

    The Berkeley DB library has a number of object handles. The following table lists those handles, their scope, and whether they are free-threaded (that is, whether multiple threads within a process can share them).

    -

    -

    DB_ENV
    The DB_ENV handle, created by the db_env_create method, refers +
    +
    DB_ENV
    The DB_ENV handle, created by the db_env_create method, refers to a Berkeley DB database environment -- a collection of Berkeley DB subsystems, log files and databases. DB_ENV handles are free-threaded if the DB_THREAD flag is specified to the DB_ENV->open method when @@ -29,7 +29,7 @@ other handle remains open that is using it as a reference (for example, DB or DB_TXN). Once either the DB_ENV->close or DB_ENV->remove methods are called, the handle may not be accessed again, regardless of the method's return. -

    DB_TXN
    The DB_TXN handle, created by the DB_ENV->txn_begin method, refers to +
    DB_TXN
    The DB_TXN handle, created by the DB_ENV->txn_begin method, refers to a single transaction. The handle is not free-threaded. Transactions may span threads, but only serially, that is, the application must serialize access to the DB_TXN handles. In the case of nested @@ -42,15 +42,15 @@ In addition, parent transactions may not issue any Berkeley DB operations while they have active child transactions (child transactions that have not yet been committed or aborted) except for DB_ENV->txn_begin, DB_TXN->abort and DB_TXN->commit.

    -

    DB_LOGC
    The DB_LOGC handle refers to a cursor into the log files. The +
    DB_LOGC
    The DB_LOGC handle refers to a cursor into the log files. The handle is not free-threaded. Once the DB_LOGC->close method is called, the handle may not be accessed again, regardless of the method's return. -

    DB_MPOOLFILE
    The DB_MPOOLFILE handle refers to an open file in the shared +
    DB_MPOOLFILE
    The DB_MPOOLFILE handle refers to an open file in the shared memory buffer pool of the database environment. The handle is not free-threaded. Once the DB_MPOOLFILE->close method is called, the handle may not be accessed again, regardless of the method's return. -

    DB
    The DB handle, created by the db_create method, refers to a +
    DB
    The DB handle, created by the db_create method, refers to a single Berkeley DB database, which may or may not be part of a database environment. DB handles are free-threaded if the DB_THREAD flag is specified to the DB->open method when the @@ -63,7 +63,7 @@ database have not yet been committed or aborted. Once the DB->close, DB->remove, or DB->rename methods are called, the handle may not be accessed again, regardless of the method's return. -

    DBC
    The DBC handle refers to a cursor into a Berkeley DB database. The +
    DBC
    The DBC handle refers to a cursor into a Berkeley DB database. The handle is not free-threaded. Cursors may span threads, but only serially, that is, the application must serialize access to the DBC handles. If the cursor is to be used to perform operations @@ -74,6 +74,6 @@ method's return.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/refs/refs.html b/db/docs/ref/refs/refs.html index 9902f1d2a..a3251af9d 100644 --- a/db/docs/ref/refs/refs.html +++ b/db/docs/ref/refs/refs.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Additional references - + @@ -22,55 +22,56 @@ we recommend the following sources:

    subject to copyrights held by the conference organizers and the authors of the papers. Sleepycat Software makes them available here as a courtesy with the permission of the copyright holders.

    -

    -

    Berkeley DB (HTML, Postscript)
    Michael Olson, Keith Bostic, and Margo Seltzer, Proceedings of the 1999 +
    +
    Berkeley DB +(HTML, Postscript)
    Michael Olson, Keith Bostic, and Margo Seltzer, Proceedings of the 1999 Summer Usenix Technical Conference, Monterey, California, June 1999. This paper describes recent commercial releases of Berkeley DB, its most important features, the history of the software, and Sleepycat's Open Source licensing policies. -

    Challenges in Embedded Database System Administration +
    Challenges in Embedded Database System Administration (HTML)
    Margo Seltzer and Michael Olson, First Workshop on Embedded Systems, Cambridge, Massachusetts, March 1999. This paper describes the challenges that face embedded systems developers, and how Berkeley DB has been designed to address them. -

    LIBTP: Portable Modular Transactions for UNIX +
    LIBTP: Portable Modular Transactions for UNIX (Postscript)
    Margo Seltzer and Michael Olson, USENIX Conference Proceedings, Winter 1992. This paper describes an early prototype of the transactional system for Berkeley DB. -

    A New Hashing Package for UNIX +
    A New Hashing Package for UNIX (Postscript)
    Margo Seltzer and Oz Yigit, USENIX Conference Proceedings, Winter 1991. This paper describes the Extended Linear Hashing techniques used by Berkeley DB.

    Background on Berkeley DB Features

    These papers, although not specific to Berkeley DB, give a good overview of the way different Berkeley DB features were implemented.

    -

    -

    Operating System Support for Database Management
    Michael Stonebraker, Communications of the ACM 24(7), 1981, pp. 412-418. -

    Dynamic Hash Tables
    Per-Ake Larson, Communications of the ACM, April 1988. -

    Linear Hashing: A New Tool for File and Table Addressing
    Witold Litwin, Proceedings of the 6th International +
    +
    Operating System Support for Database Management
    Michael Stonebraker, Communications of the ACM 24(7), 1981, pp. 412-418. +
    Dynamic Hash Tables
    Per-Ake Larson, Communications of the ACM, April 1988. +
    Linear Hashing: A New Tool for File and Table Addressing
    Witold Litwin, Proceedings of the 6th International Conference on Very Large Databases (VLDB), 1980 -

    The Ubiquitous B-tree
    Douglas Comer, ACM Comput. Surv. 11, 2 (June 1979), pp. 121-138. -

    Prefix B-trees
    Bayer and Unterauer, ACM Transactions on Database Systems, Vol. 2, 1 +
    The Ubiquitous B-tree
    Douglas Comer, ACM Comput. Surv. 11, 2 (June 1979), pp. 121-138. +
    Prefix B-trees
    Bayer and Unterauer, ACM Transactions on Database Systems, Vol. 2, 1 (March 1977), pp. 11-26. -

    The Art of Computer Programming Vol. 3: Sorting and Searching
    D.E. Knuth, 1968, pp. 471-480. -

    Document Processing in a Relational Database System
    Michael Stonebraker, Heidi Stettner, Joseph Kalash, Antonin Guttman, +
    The Art of Computer Programming Vol. 3: Sorting and Searching
    D.E. Knuth, 1968, pp. 471-480. +
    Document Processing in a Relational Database System
    Michael Stonebraker, Heidi Stettner, Joseph Kalash, Antonin Guttman, Nadene Lynn, Memorandum No. UCB/ERL M82/32, May 1982.

    Database Systems Theory

    These publications are standard reference works on the design and implementation of database systems. Berkeley DB uses many of the ideas they describe.

    -

    -

    Transaction Processing Concepts and Techniques
    by Jim Gray and Andreas Reuter, Morgan Kaufmann Publishers. +
    +
    Transaction Processing Concepts and Techniques
    by Jim Gray and Andreas Reuter, Morgan Kaufmann Publishers. We recommend chapters 1, 4 (skip 4.6, 4.7, 4.9, 4.10 and 4.11), 7, 9, 10.3, and 10.4. -

    An Introduction to Database Systems, Volume 1
    by C.J. Date, Addison Wesley Longman Publishers. +
    An Introduction to Database Systems, Volume 1
    by C.J. Date, Addison Wesley Longman Publishers. In the 5th Edition, we recommend chapters 1, 2, 3, 16 and 17. -

    Concurrency Control and Recovery in Database Systems
    by Bernstein, Goodman, Hadzilaco. Currently out of print, but available +
    Concurrency Control and Recovery in Database Systems
    by Bernstein, Goodman, Hadzilaco. Currently out of print, but available from http://research.microsoft.com/pubs/ccontrol/.

    PrevRef
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/refs/witold.html b/db/docs/ref/refs/witold.html index 9bd511c37..3dd53a61f 100644 --- a/db/docs/ref/refs/witold.html +++ b/db/docs/ref/refs/witold.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Witold Litwin - + @@ -19,6 +19,6 @@ chase up the mountains of Austria in search of very green wine.


    Ref
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rep/app.html b/db/docs/ref/rep/app.html index 5a652ad59..652178afb 100644 --- a/db/docs/ref/rep/app.html +++ b/db/docs/ref/rep/app.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Building replicated applications - + @@ -22,12 +22,12 @@ applications use the following additional four Berkeley DB methods: DB_ENV->rep_elect, DB_ENV->rep_process_message, DB_ENV->rep_start and DB_ENV->set_rep_transport and may also use the configuration method DB_ENV->set_rep_limit:

    -

    -

    DB_ENV->set_rep_transport
    The DB_ENV->set_rep_transport method configures the replication system's +
    +
    DB_ENV->set_rep_transport
    The DB_ENV->set_rep_transport method configures the replication system's communications infrastructure. -

    DB_ENV->rep_start
    The DB_ENV->rep_start method configures (or reconfigures) an existing database +
    DB_ENV->rep_start
    The DB_ENV->rep_start method configures (or reconfigures) an existing database environment to be a replication master or client. -

    DB_ENV->rep_process_message
    The DB_ENV->rep_process_message method is used to process incoming messages from other +
    DB_ENV->rep_process_message
    The DB_ENV->rep_process_message method is used to process incoming messages from other environments in the replication group. For clients, it is responsible for accepting log records and updating the local databases based on messages from the master. For both the master and the clients, it is @@ -36,10 +36,10 @@ protocol for dealing with lost messages), and permitting new clients to join an active replication group. This method should only be called after the environment has been configured as a replication master or client via DB_ENV->rep_start. -

    DB_ENV->rep_elect
    The DB_ENV->rep_elect method causes the replication group to elect a new +
    DB_ENV->rep_elect
    The DB_ENV->rep_elect method causes the replication group to elect a new master; it is called whenever contact with the master is lost and the application wants the remaining sites to select a new master. -

    DB_ENV->set_rep_limit
    The DB_ENV->set_rep_limit method imposes an upper bound on the amount of data +
    DB_ENV->set_rep_limit
    The DB_ENV->set_rep_limit method imposes an upper bound on the amount of data that will be sent in response to a single call to DB_ENV->rep_process_message. During client recovery, that is, when a replica site is trying to synchronize with the master, clients may ask the master for a large @@ -53,6 +53,11 @@ control and accepting other messages. must be changed and the application's communications infrastructure must be written. The application initialization changes are relatively simple, but the communications infrastructure code can be complex.

    +

    For implementation reasons, all replicated databases must reside in the +data directories set from DB_ENV->set_data_dir or in the default +environment home directory. If your databases reside in the default +environment home directory, they must be in the home directory itself, +not subdirectories below the environment home.

    During application initialization, the application performs three additional tasks: first, it must specify the DB_INIT_REP flag when opening its database environment; second, it must provide Berkeley DB @@ -73,20 +78,29 @@ The result of calling DB_ENV->rep_start< master, or the declaration of the local environment as the master. If a master has not been discovered after a reasonable amount of time, the application should call DB_ENV->rep_elect to call for an election.

    -

    In the case of multiple processes or threads accessing a replicated -environment, any environment handle that modifies databases in the -environment or processes replication messages must call the -DB_ENV->rep_start method. Note that not all processes running in replicated -environments need to call DB_ENV->set_rep_transport or DB_ENV->rep_start. -Read-only processes running in a master environment do not need to be -configured for replication in any way. Processes running in a client -environment are read-only by definition, and so do not need to be -configured for replication either (although, in the case of clients that -may become masters, it is usually simplest to configure for replication -on process startup rather than trying to reconfigure when the client -becomes a master). Obviously, at least one thread of control on each -client must be configured for replication as messages must be passed -between the master and the client.

    +

    Consider the case of multiple processes or multiple environment handles +that modify databases in the replicated environment. All modifications +must be done on the master environment. The first process to join or +create the master environment must call both the DB_ENV->set_rep_transport method +and the DB_ENV->rep_start method. Subsequent replication processes must at +least call the DB_ENV->set_rep_transport method. Those processes may call the +DB_ENV->rep_start method (as long as they use the same master or client +argument). If multiple processes are modifying the master environment +there must be a unified communication infrastructure such that messages +arriving at clients have a single master ID. Additionally the +application must be structured so that all incoming messages are able +to be processed by a single DB_ENV handle.

    +

    Note that not all processes running in replicated environments need to +call DB_ENV->set_rep_transport or DB_ENV->rep_start. Read-only processes +running in a master environment do not need to be configured for +replication in any way. Processes running in a client environment are +read-only by definition, and so do not need to be configured for +replication either (although, in the case of clients that may become +masters, it is usually simplest to configure for replication on process +startup rather than trying to reconfigure when the client becomes a +master). Obviously, at least one thread of control on each client must +be configured for replication as messages must be passed between the +master and the client.

    For implementation reasons, all incoming replication messages must be processed using the same DB_ENV handle. It is not required that a single thread of control process all messages, only that all threads @@ -96,6 +110,6 @@ participating in a replication group. The application should shut down the environment in the usual manner, by calling the DB_ENV->close method.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rep/comm.html b/db/docs/ref/rep/comm.html index 9c5cadd16..78034556f 100644 --- a/db/docs/ref/rep/comm.html +++ b/db/docs/ref/rep/comm.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Building the communications infrastructure - + @@ -51,23 +51,23 @@ deliver any number of messages simultaneously, and from any arbitrary thread or process in the Berkeley DB environment.

    There are a number of informational returns from the DB_ENV->rep_process_message method:

    -

    -

    DB_REP_DUPMASTER
    When DB_ENV->rep_process_message returns DB_REP_DUPMASTER, it means that +
    +
    DB_REP_DUPMASTER
    When DB_ENV->rep_process_message returns DB_REP_DUPMASTER, it means that another database environment in the replication group also believes itself to be the master. The application should complete all active transactions, close all open database handles, reconfigure itself as a client using the DB_ENV->rep_start method, and then call for an election by calling the DB_ENV->rep_elect method. -

    DB_REP_HOLDELECTION
    When DB_ENV->rep_process_message returns DB_REP_HOLDELECTION, it means +
    DB_REP_HOLDELECTION
    When DB_ENV->rep_process_message returns DB_REP_HOLDELECTION, it means that another database environment in the replication group has called for an election. The application should call the DB_ENV->rep_elect method. -

    DB_REP_ISPERM
    When DB_ENV->rep_process_message returns DB_REP_ISPERM, it means a +
    DB_REP_ISPERM
    When DB_ENV->rep_process_message returns DB_REP_ISPERM, it means a permanent record, perhaps a message previously returned as DB_REP_NOTPERM was successfully written to disk. This record may have filled a gap in the log record that allowed additional records to be written. The ret_lsnp contains the maximum LSN of the permanent records written. -

    DB_REP_NEWMASTER
    When DB_ENV->rep_process_message returns DB_REP_NEWMASTER, it means that +
    DB_REP_NEWMASTER
    When DB_ENV->rep_process_message returns DB_REP_NEWMASTER, it means that a new master has been elected. The call will also return the local environment's ID for that master. If the ID of the master has changed, the application may need to reconfigure itself (for example, to redirect @@ -75,11 +75,11 @@ update queries to the new master rather then the old one). If the new master is the local environment, then the application must call the DB_ENV->rep_start method, and reconfigure the supporting Berkeley DB library as a replication master. -

    DB_REP_NEWSITE
    When DB_ENV->rep_process_message returns DB_REP_NEWSITE, it means that +
    DB_REP_NEWSITE
    When DB_ENV->rep_process_message returns DB_REP_NEWSITE, it means that a message from a previously unknown member of the replication group has been received. The application should reconfigure itself as necessary so it is able to send messages to this site. -

    DB_REP_NOTPERM
    When DB_ENV->rep_process_message returns DB_REP_NOTPERM, it means a +
    DB_REP_NOTPERM
    When DB_ENV->rep_process_message returns DB_REP_NOTPERM, it means a message marked as DB_REP_PERMANENT was processed successfully but was not written to disk. This is normally an indication that one or more messages, which should have arrived before this message, have @@ -87,14 +87,14 @@ not yet arrived. This operation will be written to disk when the missing messages arrive. The ret_lsnp argument will contain the LSN of this record. The application should take whatever action is deemed necessary to retain its recoverability characteristics. -

    DB_REP_OUTDATED
    When DB_ENV->rep_process_message returns DB_REP_OUTDATED, it means that -the environment has been partitioned from the master for too long a -time, and the master no longer has the necessary log files to update -the local client. The application should shut down, and the client -should be reinitialized (see Initializing a new site for more information). +
    DB_REP_STARTUPDONE
    When DB_ENV->rep_process_message returns DB_REP_STARTUPDONE, it means that +the client has completed its startup synchronization activities and is +now processing live log messages from the master. Live log messages +are messages that the master is sending due to operations, as opposed +to resending log messages due to a request for log records from the client.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rep/elect.html b/db/docs/ref/rep/elect.html index c7b690afc..5be6fc3cf 100644 --- a/db/docs/ref/rep/elect.html +++ b/db/docs/ref/rep/elect.html @@ -1,17 +1,17 @@ - - + + Berkeley DB Reference Guide: Elections - + -

    Berkeley DB Reference Guide:
    Berkeley DB Replication

    PrevRefNext +PrevRefNext

    Elections

    @@ -30,8 +30,10 @@ period, then the application should call for an election.

    have no master, and the client must have the most recent log records. In the case of clients having equivalent log records, the priority of the database environments participating in the election will determine -the winner. At least ((N/2) + 1) of the members of the replication -group must participate in the election for a winner to be declared.

    +the winner. The application specifies the minimum number of replication +group members that must participate in an election for a winner to be +declared. We recommend at least ((N/2) + 1) members. If fewer than the +simple majority are specified, a warning will be given.

    If an application's policy for what site should win an election can be parameterized in terms the database environment's information (that is, the number of sites, available log records and a relative priority are @@ -66,8 +68,7 @@ client does not win the election, it is likely that it was not given sufficient time to update itself with respect to the current master.

    If a client is unable to find a master or win an election, it means that the network has been partitioned and there are not enough environments -participating in the election for one of the participants to win (or, -there were only two sites in the replication group and one crashed). +participating in the election for one of the participants to win. In this case, the application should repeatedly call DB_ENV->rep_start and DB_ENV->rep_elect, alternating between attempting to discover an existing master, and holding an election to declare a new one. In @@ -106,8 +107,8 @@ and reconfigure itself as a client using the DB_ENV->rep_elect method. -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rep/ex.html b/db/docs/ref/rep/ex.html index d502e1242..caedded06 100644 --- a/db/docs/ref/rep/ex.html +++ b/db/docs/ref/rep/ex.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Ex_repquote: a replication example - + @@ -30,19 +30,19 @@ attempt to build it.

    The synopsis for ex_repquote is as follows:

    ex_repquote [-MC] [-h home] [-m host:port] [-o host:port] [-n sites] [-p priority]

    The options to ex_repquote are as follows:

    -

    -

    -M
    Configure this process as a master. -

    -C
    Configure this process as a client. -

    -h
    Specify a home directory for the database environment; by +
    +
    -M
    Configure this process as a master. +
    -C
    Configure this process as a client. +
    -h
    Specify a home directory for the database environment; by default, the current working directory is used. -

    -m
    Listen on port "port" of host "host" for incoming connections. -

    -o
    Attempt to connect to another member of the replication group which is +
    -m
    Listen on port "port" of host "host" for incoming connections. +
    -o
    Attempt to connect to another member of the replication group which is listening on host "host" at port "port". Members of a replication group should be able to find all other members of a replication group so long as they are in contact with at least one other member of the replication group. -

    -n
    Specify the total number of sites in the replication group. -

    -p
    Set the election priority. See DB_ENV->rep_elect for more +
    -n
    Specify the total number of sites in the replication group. +
    -p
    Set the election priority. See DB_ENV->rep_elect for more information.

    A typical ex_repquote session begins with a command such as the @@ -60,6 +60,6 @@ having particular clients take over as master in the case that the master fails.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rep/ex_comm.html b/db/docs/ref/rep/ex_comm.html index 7214a11c2..11556a22f 100644 --- a/db/docs/ref/rep/ex_comm.html +++ b/db/docs/ref/rep/ex_comm.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Ex_repquote: a TCP/IP based communication infrastructure - + @@ -173,6 +173,6 @@ int *eidp): Accept a connection on a socket and add it to the machtab. int listen_socket_connect

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rep/ex_rq.html b/db/docs/ref/rep/ex_rq.html index 60fb51444..112a4ea4d 100644 --- a/db/docs/ref/rep/ex_rq.html +++ b/db/docs/ref/rep/ex_rq.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Ex_repquote: putting it all together - + @@ -143,7 +143,7 @@ for (ret = 0; ret == 0;) { */ machtab_parm(tab, &n, &pri, &timeout); if ((ret = dbenv->rep_elect(dbenv, - n, pri, timeout, &newm)) != 0) + n, 0, pri, timeout, &newm, 0)) != 0) continue;

    /* @@ -231,6 +231,6 @@ for (ret = 0; ret == 0;) { }


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rep/faq.html b/db/docs/ref/rep/faq.html index f825f3233..1797171ea 100644 --- a/db/docs/ref/rep/faq.html +++ b/db/docs/ref/rep/faq.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Replication FAQ - + @@ -96,15 +96,9 @@ communications process which is responsible for forwarding the message to the appropriate client. Alternatively, a broadcast mechanism will simplify the entire networking infrastructure, as processes will likely no longer have to maintain their own specific network connections.

    -

  • Can I use replication to replicate just the database -environment's log files? -

    Yes. If the DB_REP_LOGSONLY flag is specified to -DB_ENV->rep_start, the client site acts as a repository for logfiles -(see Log file only clients for more -information).


  • PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rep/id.html b/db/docs/ref/rep/id.html index 091e6aea6..f00325b27 100644 --- a/db/docs/ref/rep/id.html +++ b/db/docs/ref/rep/id.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Replication environment IDs - + @@ -31,15 +31,15 @@ identifier. Subsequently, Berkeley DB will label outgoing messages to the

    Negative identifiers are reserved for use by Berkeley DB, and should never be assigned to environments by the application. Two of these reserved identifiers are intended for application use, as follows:

    -

    -

    DB_EID_BROADCAST
    The DB_EID_BROADCAST identifier indicates a message should be +
    +
    DB_EID_BROADCAST
    The DB_EID_BROADCAST identifier indicates a message should be broadcast to all members of a replication group. -

    DB_EID_INVALID
    The DB_EID_INVALID identifier is an invalid environment ID, and +
    DB_EID_INVALID
    The DB_EID_INVALID identifier is an invalid environment ID, and may be used to initialize environment ID variables that are subsequently checked for validity.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rep/intro.html b/db/docs/ref/rep/intro.html index 65f25d410..f3969f48b 100644 --- a/db/docs/ref/rep/intro.html +++ b/db/docs/ref/rep/intro.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Introduction - + @@ -65,18 +65,18 @@ implemented to perform database updates using a different code path than the standard ones. This means operations that manage to crash the replication master due to a software bug will not necessarily also crash replication clients.

    - + - - - - - - + + + + + +
    Replication and Related MethodsDescription
    DB_ENV->set_rep_transportConfigure replication transport
    DB_ENV->rep_electHold a replication election
    DB_ENV->set_rep_limitLimit data sent in response to a single message
    DB_ENV->rep_process_messageProcess a replication message
    DB_ENV->rep_startConfigure an environment for replication
    DB_ENV->rep_statReplication statistics
    DB_ENV->rep_electHold a replication election
    DB_ENV->rep_process_messageProcess a replication message
    DB_ENV->rep_startConfigure an environment for replication
    DB_ENV->rep_statReplication statistics
    DB_ENV->set_rep_limitLimit data sent in response to a single message
    DB_ENV->set_rep_transportConfigure replication transport

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rep/newsite.html b/db/docs/ref/rep/newsite.html index 3a2dc0d06..d1477eb36 100644 --- a/db/docs/ref/rep/newsite.html +++ b/db/docs/ref/rep/newsite.html @@ -1,20 +1,25 @@ - - + + Berkeley DB Reference Guide: Connecting to a new site - + -

    Berkeley DB Reference Guide:
    Berkeley DB Replication

    PrevRefNext +PrevRefNext

    Connecting to a new site

    +

    To add a new site to the replication group all that is needed +is for the client member to join. Berkeley DB will perform an +internal initialization from the master to the client automatically +and will run recovery on the client to bring it up to date +with the master.

    Connecting to a new site in the replication group happens whenever the DB_ENV->rep_process_message method returns DB_REP_NEWSITE. The application should assign the new site a local environment ID number, and all future @@ -37,8 +42,8 @@ If no additional information was provided for Berkeley DB to forward to the existing members of the group, the data field of the rec parameter passed to the DB_ENV->rep_process_message method will be NULL after DB_ENV->rep_process_message returns DB_REP_NEWSITE.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rep/partition.html b/db/docs/ref/rep/partition.html index 326f17845..0b2232630 100644 --- a/db/docs/ref/rep/partition.html +++ b/db/docs/ref/rep/partition.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Network partitions - + @@ -85,6 +85,6 @@ pick a single master, and only hold elections when human intervention has determined the selected master is unable to recover at all.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rep/pri.html b/db/docs/ref/rep/pri.html index 0428611c4..3ddd77cc4 100644 --- a/db/docs/ref/rep/pri.html +++ b/db/docs/ref/rep/pri.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Replication environment priorities - + @@ -34,6 +34,6 @@ the client priority. If both sites have the same number of log records and the same priority, one is selected at random.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rep/trans.html b/db/docs/ref/rep/trans.html index f72f3648c..c78ddb416 100644 --- a/db/docs/ref/rep/trans.html +++ b/db/docs/ref/rep/trans.html @@ -1,17 +1,17 @@ - - + + Berkeley DB Reference Guide: Transactional guarantees - + -

    Berkeley DB Reference Guide:
    Berkeley DB Replication

    PrevRefNext +PrevRefNext

    Transactional guarantees

    @@ -233,8 +233,8 @@ a Global Transaction Manager and performing two-phase commit across multiple Berkeley DB database environments. More information on this topic can be found in the Distributed Transactions chapter.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rpc/client.html b/db/docs/ref/rpc/client.html index f351d558a..b2bbe3c3c 100644 --- a/db/docs/ref/rpc/client.html +++ b/db/docs/ref/rpc/client.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Client program - + @@ -79,6 +79,6 @@ is usually significantly less than when Berkeley DB is embedded within the client's address space, even if the RPC is to a local address.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rpc/faq.html b/db/docs/ref/rpc/faq.html index 58149d0e1..bfc8796ce 100644 --- a/db/docs/ref/rpc/faq.html +++ b/db/docs/ref/rpc/faq.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: RPC FAQ - + -

    Berkeley DB Reference Guide:
    RPC Client/Server

    PrevRefNext +PrevRefNext

    RPC FAQ

    @@ -25,8 +25,8 @@ and the client times out the request before the server has a chance to process and reply. If you get this error, try explicitly setting the client timeout value.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rpc/intro.html b/db/docs/ref/rpc/intro.html index b6d6d862d..cb0fdcfd3 100644 --- a/db/docs/ref/rpc/intro.html +++ b/db/docs/ref/rpc/intro.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: Introduction - + -

    Berkeley DB Reference Guide:
    RPC Client/Server

    PrevRefNext +PrevRefNext

    Introduction

    @@ -72,8 +72,8 @@ server.
  • Run the berkeley_db_svc server program on the system where the database resides. -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/rpc/server.html b/db/docs/ref/rpc/server.html index 58b09901a..86dc5d9f7 100644 --- a/db/docs/ref/rpc/server.html +++ b/db/docs/ref/rpc/server.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Server program - + @@ -50,6 +50,6 @@ machine. This means, of course, that only one environment of a particular name is allowed on the server at any given time.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/sequence/intro.html b/db/docs/ref/sequence/intro.html new file mode 100644 index 000000000..2e61785d7 --- /dev/null +++ b/db/docs/ref/sequence/intro.html @@ -0,0 +1,64 @@ + + + + + + +Berkeley DB Reference Guide: Introduction + + + + + + + +

    Berkeley DB Reference Guide:
    Sequences

    PrevRefNext +
    +

    +

    Introduction

    +

    Sequences provide an arbitrary number of persistent objects that return +an increasing or decreasing sequence of integers. Opening a sequence +handle associates it with a record in a database. The handle can +maintain a cache of values from the database so that a database update +is not needed as the application allocates a value.

    +

    A sequence is stored as a record pair in any type of database. It is +referenced by the key used when the sequence is created. The key must +be compatible with the underlying access method. If the access method +of the database has fixed-length records, the record size must be at +least 64 bytes long.

    +

    Since a sequence handle is opened using a database handle, the use of +transactions with the sequence must follow how the database handle was +opened. In other words, if the database handle was opened within a +transaction, operations on the sequence handle must use transactions. +Of course, if sequences are cached, not all operations will actually +trigger a transaction.

    +

    For the highest concurrency, caching should be used and the +DB_AUTO_COMMIT and DB_TXN_NOSYNC flags should be +specified to the DB_SEQUENCE->get method call. If the allocation of the +sequence value must be part of a transaction, and rolled back if the +transaction aborts, then no caching should be specified and the +transaction handle must be passed to the DB_SEQUENCE->get method.

    + + + + + + + + + + + + + + + + + + +
    Sequences and Related MethodsDescription
    db_sequence_createCreate a sequence handle
    DB_SEQUENCE->closeClose a sequence
    DB_SEQUENCE->getGet the next sequence element(s)
    DB_SEQUENCE->get_dbpReturn a handle for the underlying sequence database
    DB_SEQUENCE->get_cachesizeReturn the cache size of a sequence
    DB_SEQUENCE->get_flagsReturn the flags for a sequence
    DB_SEQUENCE->get_rangeReturn the range for a sequence
    DB_SEQUENCE->get_keyReturn the key for a sequence
    DB_SEQUENCE->init_valueSet the initial value of a sequence
    DB_SEQUENCE->openOpen a sequence
    DB_SEQUENCE->removeRemove a sequence
    DB_SEQUENCE->set_cachesizeSet the cache size of a sequence
    DB_SEQUENCE->set_flagsSet the flags for a sequence
    DB_SEQUENCE->set_rangeSet the range for a sequence
    DB_SEQUENCE->statReturn sequence statistics
    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/tcl/error.html b/db/docs/ref/tcl/error.html index 4c18ad73d..82f14ea65 100644 --- a/db/docs/ref/tcl/error.html +++ b/db/docs/ref/tcl/error.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Tcl error handling - + @@ -66,6 +66,6 @@ more descriptive prefix is desired or where a constant prefix indicating an error is desired.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/tcl/faq.html b/db/docs/ref/tcl/faq.html index ad0a59e1f..39974ddde 100644 --- a/db/docs/ref/tcl/faq.html +++ b/db/docs/ref/tcl/faq.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: Tcl FAQ - + -

    Berkeley DB Reference Guide:
    Tcl API

    PrevRefNext +PrevRefNext

    Tcl FAQ

    @@ -51,8 +51,8 @@ variable should contain sufficient linker flags to find and link against the installed libtcl library. In some circumstances, the tclConfig.sh file built by Tcl does not.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/tcl/intro.html b/db/docs/ref/tcl/intro.html index a895bd6cd..e88c08daf 100644 --- a/db/docs/ref/tcl/intro.html +++ b/db/docs/ref/tcl/intro.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: Loading Berkeley DB with Tcl - + -

    Berkeley DB Reference Guide:
    Tcl API

    PrevRefNext +PrevRefNext

    Loading Berkeley DB with Tcl

    @@ -37,21 +37,21 @@ several steps that must be performed:

    For example:

    # tclsh8.4
    -% lappend auto_path /usr/local/BerkeleyDB.4.2/lib
    -% pkg_mkIndex /usr/local/BerkeleyDB.4.2/lib libdb_tcl-4.2.so
    +% lappend auto_path /usr/local/BerkeleyDB.4.3/lib +% pkg_mkIndex /usr/local/BerkeleyDB.4.3/lib libdb_tcl-4.3.so

    Note that your Tcl and Berkeley DB version numbers may differ from the example, and so your tclsh and library names may be different.

    Loading Berkeley DB with Tcl

    The Berkeley DB package may be loaded into the user's interactive Tcl script (or wish session) via the load command. For example:

    -
    load /usr/local/BerkeleyDB.4.2/lib/libdb_tcl-4.2.so
    +
    load /usr/local/BerkeleyDB.4.3/lib/libdb_tcl-4.3.so

    Note that your Berkeley DB version numbers may differ from the example, and so the library name may be different.

    If you installed your library to run as a Tcl package, Tcl application scripts should use the package command to indicate to the Tcl interpreter that it needs the Berkeley DB package and where to find it. For example:

    -
    lappend auto_path "/usr/local/BerkeleyDB.4.2/lib"
    +
    lappend auto_path "/usr/local/BerkeleyDB.4.3/lib"
     package require Db_tcl

    No matter which way the library gets loaded, it creates a command named berkdb. All the Berkeley DB functionality is accessed via this @@ -60,8 +60,8 @@ A simple test to determine whether everything is loaded and ready is to display the library version, as follows:

    berkdb version -string

    This should return you the Berkeley DB version in a string format.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/tcl/program.html b/db/docs/ref/tcl/program.html index 2c94036aa..8b794af00 100644 --- a/db/docs/ref/tcl/program.html +++ b/db/docs/ref/tcl/program.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Tcl API programming notes - + @@ -26,6 +26,6 @@ supported via the Tcl API. For example, there is no equivalent to the methods.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/tcl/using.html b/db/docs/ref/tcl/using.html index 6698d9aac..94bfae1ee 100644 --- a/db/docs/ref/tcl/using.html +++ b/db/docs/ref/tcl/using.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Using Berkeley DB with Tcl - + @@ -50,6 +50,6 @@ list the correct operations for a command or the correct options.

    Tcl Interface documentation.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/test/faq.html b/db/docs/ref/test/faq.html index 890a64584..0e8ae43dc 100644 --- a/db/docs/ref/test/faq.html +++ b/db/docs/ref/test/faq.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Test suite FAQ - + @@ -24,6 +24,6 @@ run is making forward progress and new lines are being written to the

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/test/run.html b/db/docs/ref/test/run.html index 964e3cd90..43b99fd16 100644 --- a/db/docs/ref/test/run.html +++ b/db/docs/ref/test/run.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: Running the test suite - + -

    Berkeley DB Reference Guide:
    Test Suite

    PrevRefNext +PrevRefNext

    Running the test suite

    @@ -54,8 +54,8 @@ Regardless of where you run the tests, the TESTDIR directory should be on a local filesystem. Using a remote filesystem (for example, an NFS mounted filesystem) will almost certainly cause spurious test failures.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/admin.html b/db/docs/ref/transapp/admin.html index 2bc019447..e64723e5c 100644 --- a/db/docs/ref/transapp/admin.html +++ b/db/docs/ref/transapp/admin.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Environment infrastructure - + @@ -43,6 +43,6 @@ scripting interface because the scripting APIs do not always offer interfaces to the administrative functionality.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/app.html b/db/docs/ref/transapp/app.html index 7896b5be0..6062139e7 100644 --- a/db/docs/ref/transapp/app.html +++ b/db/docs/ref/transapp/app.html @@ -1,12 +1,12 @@ - - + + -Berkeley DB Reference Guide: Application structure +Berkeley DB Reference Guide: Architecting Transactional Data Store applications - + @@ -14,7 +14,7 @@
    PrevRefNext

    -

    Application structure

    +

    Architecting Transactional Data Store applications

    When building transactionally protected applications, there are some special issues that must be considered. The most important one is that if any thread of control exits for any reason while holding Berkeley DB @@ -27,15 +27,14 @@ locks.

  • Clean up any partially completed operations that may have left a database in an inconsistent or corrupted state. -

    Complicating this problem is the fact that the Berkeley DB library itself -cannot determine whether recovery is required; the application itself -must make that decision. A further complication is that -recovery must be single-threaded; that is, one thread of control or -process must perform recovery before any other thread of control or -processes attempts to create or join the Berkeley DB environment.

    +

    The Berkeley DB library cannot determine whether recovery is required; the +application must make that decision. Furthermore, recovery must be +single-threaded; that is, one thread of control or process must perform +recovery before any other thread of control or process attempts to join +the Berkeley DB environment.

    There are two approaches to handling this problem:

    -

    -

    The hard way:
    An application can track its own state carefully enough that it knows +
    +
    The hard way:
    An application can track its own state carefully enough that it knows when recovery needs to be performed. Specifically, the rule to use is that recovery must be performed before using a Berkeley DB environment any time the threads of control previously using the Berkeley DB environment did @@ -54,7 +53,7 @@ aborted, or DB_ENV->close method was DB_ENV handle. In addition, at least one transaction checkpoint must be performed after all existing transactions have been committed or aborted.

    -

    The easy way:
    It greatly simplifies matters that recovery may be performed regardless +
    The easy way:
    It greatly simplifies matters that recovery may be performed regardless of whether recovery strictly needs to be performed; that is, it is not an error to run recovery on a database for which no recovery is necessary. Because of this fact, it is almost invariably simpler to @@ -125,6 +124,6 @@ be as simple and well-tested as possible because there is no recourse if it fails.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/archival.html b/db/docs/ref/transapp/archival.html index 88fbf6e8f..12bb0490d 100644 --- a/db/docs/ref/transapp/archival.html +++ b/db/docs/ref/transapp/archival.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Database and log file archival - + @@ -75,23 +75,16 @@ backup device such as CD-ROM, alternate disk, or tape.

    To create a hot backup of your database that can be used to recover from catastrophic failure, take the following steps:

      -

    1. Run db_archive to identify those log files which are not -in use. These log files are not part of this hot backup and can -be discarded after the hot backup is successful. They can be used -with the previous hot backup to bring the databases forward to -this point.

    2. Archive your databases, as described in the previous step #4. -You do not have to halt ongoing transactions or force a -checkpoint. In the case of a hot backup, the utility you use to copy -the databases must read database pages atomically (as described by -Berkeley DB recoverability). -

    3. When performing a hot backup, you must additionally archive all of the -log files not identified in step #1. -Note that the order of these two operations is required, -and the database files must be archived before the log files. This -means that if the database files and log files are in the same -directory, you cannot simply archive the directory; you must make sure -that the correct order of archival is maintained. +You do not have to halt ongoing transactions or force a checkpoint. As +this is a hot backup, and the databases may be modified during the copy, +the utility you use to copy the databases must read database pages +atomically (as described by Berkeley DB recoverability). +

    4. Archive all of the log files. The order of these two operations +is required, and the database files must be archived before the +log files. This means that if the database files and log files are in +the same directory, you cannot simply archive the directory; you must +make sure that the correct order of archival is maintained.

      To archive your log files, run the db_archive utility using the -l option to identify all the database log files, and copy them to your backup media. If the database log files are stored @@ -99,17 +92,24 @@ in a separate directory from the other database files, it may be simpler to archive the directory itself instead of the individual files (see the DB_ENV->set_lg_dir method for more information).

    -

    Once these steps are completed, your database can be recovered from -catastrophic failure (see Recovery procedures for -more information).

    -

    To update your snapshot so that recovery from catastrophic failure is -possible up to a new point in time, repeat step 2 under the hot backup -instructions -- copying all existing log files to a backup device. This -is applicable to both standard and hot backups; that is, you can update -snapshots made either way. Each time both the database and log files -are copied to backup media, you may discard all previous database -snapshots and saved log files. Archiving additional log files does not -allow you to discard either previous database snapshots or log files.

    +

    To minimize the archival space needed for log files when doing a hot +backup, run db_archive to identify those log files which are not in use. +Log files which are not in use do not need to be included when creating +a hot backup, and you can discard them or move them aside for use with +previous backups (whichever is appropriate), before beginning the hot +backup.

    +

    After completing one of these two sets of steps, the database +environment can be recovered from catastrophic failure (see +Recovery procedures for more information).

    +

    To update either a hot or cold backup so that recovery from catastrophic +failure is possible to a new point in time, repeat step #2 under the +hot backup instructions and archive all of the log files in the +database environment. Each time both the database and log files are +copied to backup media, you may discard all previous database snapshots +and saved log files. Archiving additional log files does not allow you +to discard either previous database snapshots or log files. Generally, +updating a backup must be integrated with the application's log file +removal procedures.

    The time to restore from catastrophic failure is a function of the number of log records that have been written since the snapshot was originally created. Perhaps more importantly, the more separate pieces @@ -155,6 +155,6 @@ log_archlist(DB_ENV *dbenv) }

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/atomicity.html b/db/docs/ref/transapp/atomicity.html index a508d871f..979424bdf 100644 --- a/db/docs/ref/transapp/atomicity.html +++ b/db/docs/ref/transapp/atomicity.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Atomicity - + @@ -58,6 +58,6 @@ items in different orders greatly increases the likelihood of operations being blocked and failing due to deadlocks.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/checkpoint.html b/db/docs/ref/transapp/checkpoint.html index 8ef3697b4..458b55398 100644 --- a/db/docs/ref/transapp/checkpoint.html +++ b/db/docs/ref/transapp/checkpoint.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Checkpoints - + @@ -17,21 +17,23 @@

    Checkpoints

    The second component of the infrastructure is performing checkpoints of -the log files. As transactions commit, change records are written into -the log files, but the actual changes to the database are not -necessarily written to disk. When a checkpoint is performed, the -changes to the database that are part of committed transactions are -written into the backing database file.

    -

    Performing checkpoints is necessary for two reasons. First, you can -remove the Berkeley DB log files from your system only after a checkpoint. -Second, the frequency of your checkpoints is inversely proportional to -the amount of time it takes to run database recovery after a system or -application failure.

    -

    Once the database pages are written, log files can be archived and removed -from the system because they will never be needed for anything other than -catastrophic failure. In addition, recovery after system or application -failure has to redo or undo changes only since the last checkpoint since -changes before the checkpoint have all been flushed to the filesystem.

    +the log files. Performing checkpoints is necessary for two reasons.

    +

    First, you may be able to remove Berkeley DB log files from your database +environment after a checkpoint. Change records are written into the log +files when databases are modified, but the actual changes to the +database are not necessarily written to disk. When a checkpoint is +performed, changes to the database are written into the backing database +file. Once the database pages are written, log files can be archived +and removed from the database environment because they will never be +needed for anything other than catastrophic failure. (Log files which +are involved in active transactions may not be removed, and there must +always be at least one log file in the database environment.)

    +

    The second reason to perform checkpoints is because checkpoint frequency +is inversely proportional to the amount of time it takes to run database +recovery after a system or application failure. This is because +recovery after failure has to redo or undo changes only since the last +checkpoint, as changes before the checkpoint have all been flushed to +the databases.

    Berkeley DB provides a separate utility, db_checkpoint, which can be used to perform checkpoints. Alternatively, applications can write their own checkpoint utility using the underlying DB_ENV->txn_checkpoint @@ -118,6 +120,6 @@ perform a checkpoint is a common tuning parameter for Berkeley DB applications.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/cursor.html b/db/docs/ref/transapp/cursor.html index 0a72b55a2..48c0606fa 100644 --- a/db/docs/ref/transapp/cursor.html +++ b/db/docs/ref/transapp/cursor.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Transactional cursors - + @@ -23,9 +23,9 @@ remember is that a cursor must be closed before the enclosing transaction is committed or aborted.

    The following code fragment uses a cursor to store a new key in the cats database with four associated data items. The key is a name. The data -items are a company name, an address, and a list of the breeds of cat -owned. Each of the data entries is stored as a duplicate data item. -In this example, transactions are necessary to ensure that either all or none +items are a company name and a list of the breeds of cat owned. Each +of the data entries is stored as a duplicate data item. In this +example, transactions are necessary to ensure that either all or none of the data items appear in case of system or application failure.

    int
     main(int argc, char *argv)
    @@ -164,6 +164,6 @@ retry:	/* Begin the transaction. */
     }

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/data_open.html b/db/docs/ref/transapp/data_open.html index 0f930e616..cdd1a201f 100644 --- a/db/docs/ref/transapp/data_open.html +++ b/db/docs/ref/transapp/data_open.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Opening the databases - + @@ -130,13 +130,14 @@ well-known file might include an update of the list in the same transaction in which the database is created. Or, an application might create both a primary and secondary database in a single transaction.

    DB handles that will later be used for transactionally protected -operations must be opened within a transaction. Specifying a -transaction handle to operations using handles not opened within a -transaction will return an error. Similarly, not specifying a -transaction handle to operations using handles that were opened within -a transaction will also return an error.

    +database operations must be opened within a transaction. Specifying a +transaction handle to database operations using DB handles not +opened within a transaction will return an error. Similarly, not +specifying a transaction handle to database operations that will modify +the database, using handles that were opened within a transaction, will +also return an error.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/deadlock.html b/db/docs/ref/transapp/deadlock.html index 6167999aa..3fb213c81 100644 --- a/db/docs/ref/transapp/deadlock.html +++ b/db/docs/ref/transapp/deadlock.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Deadlock detection - + @@ -105,6 +105,6 @@ deadlocked transactions will be forced to abort when the deadlock is detected is a common tuning parameter for Berkeley DB applications.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/env_open.html b/db/docs/ref/transapp/env_open.html index 6aa958e43..8e502e9a0 100644 --- a/db/docs/ref/transapp/env_open.html +++ b/db/docs/ref/transapp/env_open.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Opening the environment - + @@ -171,6 +171,6 @@ Txn Region: 5. 0 Locks granted after waiting.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/faq.html b/db/docs/ref/transapp/faq.html index 6996e6e4a..7aafc851d 100644 --- a/db/docs/ref/transapp/faq.html +++ b/db/docs/ref/transapp/faq.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Transaction FAQ - + @@ -73,23 +73,25 @@ into another? cannot be simply moved into different database environments. To move a database into a different environment, dump and reload the database before moving it. If the database is too large to dump and reload, the -database may be prepared in place by setting the first eight bytes of -each database page in the file to 0.

    +database may be prepared in place using the -l argument to the +db_load utility.

  • I'm seeing the error "log_flush: LSN past current end-of-log", what does that mean?

    The most common cause of this error is that a system administrator has removed all of the log files from a database environment. You should shut down your database environment as gracefully as possible, first flushing the database environment cache to disk, if that's possible. -Then, dump and reload your databases. If your databases are too large -to dump and reload, the database may be repaired in place by setting -the first eight bytes of each database page in the file to 0, but if -you do that, you must verify your databases before using them again. -(It is possible for the databases to be corrupted when this happens, -and the longer the application runs, the worse it can get.)

    +Then, dump and reload your databases. If the database is too large to +dump and reload, the database may be reset in place using the +-l argument to the db_load +utility. However, if you reset the database in place, you should verify +your databases before using them again. (It is possible for the +databases to be corrupted by running after all of the log files have +been removed, and the longer the application runs, the worse it can +get.)


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/filesys.html b/db/docs/ref/transapp/filesys.html index 7f91bc74e..785949974 100644 --- a/db/docs/ref/transapp/filesys.html +++ b/db/docs/ref/transapp/filesys.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Recovery and filesystem operations - + @@ -61,6 +61,6 @@ recovery be performed from the filesystem operations forward.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/hotfail.html b/db/docs/ref/transapp/hotfail.html index 65c4c5b06..fba3f4da8 100644 --- a/db/docs/ref/transapp/hotfail.html +++ b/db/docs/ref/transapp/hotfail.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Hot failover - + @@ -78,6 +78,6 @@ Steps 2 through 5 must be performed at least once in order to ensure a consistent database environment snapshot.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/inc.html b/db/docs/ref/transapp/inc.html index 1b3a5574b..ca1b0e623 100644 --- a/db/docs/ref/transapp/inc.html +++ b/db/docs/ref/transapp/inc.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Isolation - + @@ -165,6 +165,6 @@ deadlock if we first obtain a read lock and subsequently a write lock, than if we obtain the write lock initially.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/intro.html b/db/docs/ref/transapp/intro.html index 80462c422..0d73ab408 100644 --- a/db/docs/ref/transapp/intro.html +++ b/db/docs/ref/transapp/intro.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: Berkeley DB Transactional Data Store applications - + -

    Berkeley DB Reference Guide:
    Berkeley DB Transactional Data Store Applications

    PrevRefNext +PrevRefNext

    Berkeley DB Transactional Data Store applications

    @@ -35,8 +35,8 @@ to extract code blocks for your own applications. Fragments of the program will be presented throughout this chapter, and the complete text of the example program for IEEE/ANSI Std 1003.1 (POSIX) standard systems is included in the Berkeley DB distribution.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/logfile.html b/db/docs/ref/transapp/logfile.html index b27e359c9..e6817d1d2 100644 --- a/db/docs/ref/transapp/logfile.html +++ b/db/docs/ref/transapp/logfile.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Log file removal - + @@ -53,6 +53,6 @@ opportunity to copy the log files to backup media.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/nested.html b/db/docs/ref/transapp/nested.html index 49eda8dbf..5e9010fb5 100644 --- a/db/docs/ref/transapp/nested.html +++ b/db/docs/ref/transapp/nested.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Nested transactions - + @@ -60,6 +60,6 @@ transactions that are not yet resolved when the parent prepares are also prepared.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/put.html b/db/docs/ref/transapp/put.html index 9a5b7bd41..91dc84973 100644 --- a/db/docs/ref/transapp/put.html +++ b/db/docs/ref/transapp/put.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Recoverability and deadlock handling - + @@ -198,6 +198,6 @@ mainline code often results in the simplest and cleanest application code.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/read.html b/db/docs/ref/transapp/read.html index 354358dad..146d3c14a 100644 --- a/db/docs/ref/transapp/read.html +++ b/db/docs/ref/transapp/read.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Degrees of isolation - + @@ -22,7 +22,7 @@ for the life of the transaction, every time a thread of control reads a data item, it will be unchanged from its previous value (assuming, of course, the thread of control does not itself modify the item). Berkeley DB enforces repeatable reads whenever database reads are wrapped in -transactions.

    +transactions. This is also know as degree 3 isolation.

    Most applications do not need to enclose reads in transactions, and when possible, transactionally protected reads should be avoided as they can cause performance problems. For example, a transactionally protected @@ -39,6 +39,18 @@ that it will not have changed (for example, an operation modifying a data item based on its existing value).

    + + +

    A transaction may only require cursor stability, that is +only be guaranteed that cursors see committed data that does +not change so long as it is addressed by the cursor, but may +change before the reading transaction completes. This is +also called degree 2 isolation. Berkeley DB provides +this level of isolation when a transaction is started with +the DB_DEGREE_2 flag. This flag may also be specified +when opening a cursor within a fully isolated transaction.

    + +

    Berkeley DB optionally supports reading uncommitted data; that is, read operations may request data which has been modified but not yet committed by another transaction. This is done by first specifying the @@ -51,6 +63,6 @@ data; the disadvantage is that read operations may return data that will disappear should the transaction holding the write lock abort.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/reclimit.html b/db/docs/ref/transapp/reclimit.html index 8b7587619..5ebb63259 100644 --- a/db/docs/ref/transapp/reclimit.html +++ b/db/docs/ref/transapp/reclimit.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Berkeley DB recoverability - + @@ -145,6 +145,6 @@ incorrect data to the disk). However, configuring the database for checksums will ensure that any such corruption is detected.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/recovery.html b/db/docs/ref/transapp/recovery.html index 512e76dd1..74b304b2f 100644 --- a/db/docs/ref/transapp/recovery.html +++ b/db/docs/ref/transapp/recovery.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Recovery procedures - + @@ -25,7 +25,7 @@ from scratch. Although these applications may still need transaction protection for other reasons, recovery usually consists of removing the Berkeley DB environment home directory and all files it contains, and then restarting the application. -Such an application may use the DB_TXN_NOT_DURABLE flag to avoid +Such an application may use the DB_TXN_NOT_DURABLE flag to avoid writing log records.

  • It is necessary to recover information after system or application failure. In this case, recovery processing must be performed on any @@ -46,11 +46,11 @@ on the source for the database and log files you are using to recover.

    If up-to-the-minute database and log files are accessible on a stable filesystem, normal recovery is usually sufficient. Run the db_recover utility or call the DB_ENV->open method specifying -the DB_RECOVER flag. Note this case never includes recovery -using archival snapshots of the database environment. For example, you -cannot archive databases and log files, restore the backup and then run -normal recovery -- you must always run catastrophic recovery when using -archived files.

    +the DB_RECOVER flag. However, the normal recovery case +never includes recovery using hot backups of the database +environment. For example, you cannot perform a hot backup of databases +and log files, restore the backup and then run normal recovery -- you +must always run catastrophic recovery when using hot backups.

    If the database or log files have been destroyed or corrupted, or normal recovery fails, catastrophic recovery is required. For example, catastrophic failure includes the case where the disk drive on which @@ -92,6 +92,6 @@ pathnames.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/term.html b/db/docs/ref/transapp/term.html index 4f0e83422..b1243ed5f 100644 --- a/db/docs/ref/transapp/term.html +++ b/db/docs/ref/transapp/term.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Terminology - + @@ -17,41 +17,41 @@

    Terminology

    Here are some definitions that will be helpful in understanding transactions:

    -

    -

    Thread of control
    Berkeley DB is indifferent to the type or style of threads being used by the +
    +
    Thread of control
    Berkeley DB is indifferent to the type or style of threads being used by the application; or, for that matter, if threads are being used at all -- because Berkeley DB supports multiprocess access. In the Berkeley DB documentation, any time we refer to a thread of control, it can be read as a true thread (one of many in an application's address space) or a process. -

    Free-threaded
    A Berkeley DB handle that can be used by multiple threads simultaneously +
    Free-threaded
    A Berkeley DB handle that can be used by multiple threads simultaneously without any application-level synchronization is called free-threaded. -

    Transaction
    A transaction is a one or more operations on one or more +
    Transaction
    A transaction is a one or more operations on one or more databases that should be treated as a single unit of work. For example, changes to a set of databases, in which either all of the changes must be applied to the database(s) or none of them should. Applications specify when each transaction starts, what database operations are included in it, and when it ends. -

    Transaction abort/commit
    Every transaction ends by committing or aborting. +
    Transaction abort/commit
    Every transaction ends by committing or aborting. If a transaction commits, Berkeley DB guarantees that any database changes included in the transaction will never be lost, even after system or application failure. If a transaction aborts, or is uncommitted when the system or application fails, then the changes involved will never appear in the database. -

    System or application failure
    System or application failure is the phrase we use to +
    System or application failure
    System or application failure is the phrase we use to describe something bad happening near your data. It can be an application dumping core, being interrupted by a signal, the disk filling up, or the entire system crashing. In any case, for whatever reason, the application can no longer make forward progress, and its databases are left in an unknown state. -

    Recovery
    Recovery is what makes the database consistent after a system +
    Recovery
    Recovery is what makes the database consistent after a system or application failure. The recovery process includes review of log files and databases to ensure that the changes from each committed transaction appear in the database, and that no changes from an unfinished (or aborted) transaction do. Whenever system or application failure occurs, applications must usually run recovery. -

    Deadlock
    Deadlock, in its simplest form, happens when one thread of +
    Deadlock
    Deadlock, in its simplest form, happens when one thread of control owns resource A, but needs resource B; while another thread of control owns resource B, but needs resource A. Neither thread of control can make progress, and so one has to give up and release all @@ -60,6 +60,6 @@ forward progress.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/throughput.html b/db/docs/ref/transapp/throughput.html index 03261c6af..67d8fb7fc 100644 --- a/db/docs/ref/transapp/throughput.html +++ b/db/docs/ref/transapp/throughput.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Transaction throughput - + @@ -120,6 +120,6 @@ program for IEEE/ANSI Std 1003.1 (POSIX) standard systems is included in the distribution.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/tune.html b/db/docs/ref/transapp/tune.html index 34a4b36f8..594f79a46 100644 --- a/db/docs/ref/transapp/tune.html +++ b/db/docs/ref/transapp/tune.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Transaction tuning - + @@ -22,19 +22,19 @@ of Berkeley DB transactional applications. First, you should review tuning issues for access method applications are applicable to transactional applications as well. The following are additional tuning issues for Berkeley DB transactional applications:

    -

    -

    access method
    Highly concurrent applications should use the Queue access method, where +
    +
    access method
    Highly concurrent applications should use the Queue access method, where possible, as it provides finer-granularity of locking than the other access methods. Otherwise, applications usually see better concurrency when using the Btree access method than when using either the Hash or Recno access methods. -

    record numbers
    Using record numbers outside of the Queue access method will often slow +
    record numbers
    Using record numbers outside of the Queue access method will often slow down concurrent applications as they limit the degree of concurrency available in the database. Using the Recno access method, or the Btree access method with retrieval by record number configured can slow applications down. -

    Btree database size
    When using the Btree access method, applications supporting concurrent +
    Btree database size
    When using the Btree access method, applications supporting concurrent access may see excessive numbers of deadlocks in small databases. There are two different approaches to resolving this problem. First, as the Btree access method uses page-level locking, decreasing the database @@ -42,46 +42,53 @@ page size can result in fewer lock conflicts. Second, in the case of databases that are cyclically growing and shrinking, turning off reverse splits can leave the database with enough pages that there will be fewer lock conflicts. -

    transactionally protected read operations
    Most applications do not need repeatable reads. Performing all read +
    transactionally protected read operations
    Most applications do not need repeatable reads. Performing all read operations outside of transactions can often significantly increase application throughput. In addition, limiting the lifetime of non-transactional cursors will reduce the length of times locks are held, thereby improving concurrency. -

    DB_DIRECT_DB, DB_DIRECT_LOG
    Consider using the DB_DIRECT_DB and DB_DIRECT_LOG flags. +
    DB_DIRECT_DB, DB_DIRECT_LOG
    Consider using the DB_DIRECT_DB and DB_DIRECT_LOG flags. On some systems, avoiding caching in the operating system can improve write throughput and allow the creation of larger Berkeley DB caches. -

    DB_DIRTY_READ
    Consider using the DB_DIRTY_READ flag for transactions, cursors -or individual read operations. This flag allows read operations to +
    DB_DIRTY_READ, DB_DEGREE_2
    Consider decreasing the level of isolation of transaction using the +DB_DIRTY_READ or DB_DEGREE_2 flags for transactions or cursors +or the DB_DIRTY_READ flag on individual read operations. +Degree 2 isolation will release read +locks on cursors as soon as the data page is nolonger referenced. +This will tend to block write operations for shorter periods for +applications that do not need to have repeatable reads for +cursor operations. +The dirty read flag allows read operations to potentially return data which has been modified but not yet committed, and can significantly increase application throughput in applications that do not require data be guaranteed to be permanent in the database. -

    DB_RMW
    Consider using the DB_RMW flag to immediate acquire write locks +
    DB_RMW
    Consider using the DB_RMW flag to immediate acquire write locks when reading data items that will subsequently be modified. Although this flag may increase contention (because write locks are held longer than they would otherwise be), it may decrease the number of deadlocks that occur. -

    DB_TXN_WRITE_NOSYNC, DB_TXN_NOSYNC
    By default, transactional commit in Berkeley DB implies durability, that is, +
    DB_TXN_WRITE_NOSYNC, DB_TXN_NOSYNC
    By default, transactional commit in Berkeley DB implies durability, that is, all committed operations will be present in the database after recovery from any application or system failure. For applications not requiring that level of certainty, specifying the DB_TXN_NOSYNC flag will often provide a significant performance improvement. In this case, the database will still be fully recoverable, but some number of committed transactions might be lost after application or system failure. -

    access databases in order
    When modifying multiple databases in a single transaction, always access +
    access databases in order
    When modifying multiple databases in a single transaction, always access physical files and databases within physical files, in the same order where possible. In addition, avoid returning to a physical file or database, that is, avoid accessing a database, moving on to another database and then returning to the first database. This can significantly reduce the chance of deadlock between threads of control. -

    large key/data items
    Transactional protections in Berkeley DB are guaranteed by before and after +
    large key/data items
    Transactional protections in Berkeley DB are guaranteed by before and after physical image logging. This means applications modifying large key/data items also write large log records, and, in the case of the default transaction commit, threads of control must wait until those log records have been flushed to disk. Applications supporting concurrent access should try and keep key/data items small wherever possible. -

    mutex selection
    During configuration, Berkeley DB selects a mutex implementation for the +
    mutex selection
    During configuration, Berkeley DB selects a mutex implementation for the architecture. Berkeley DB normally prefers blocking-mutex implementations over non-blocking ones. For example, Berkeley DB will select POSIX pthread mutex interfaces rather than assembly-code test-and-set spin mutexes because @@ -102,24 +109,24 @@ tuning Berkeley DB for large multiprocessor systems, it may be useful to tune mutex alignment using the --with-mutexalign configuration argument.

    -

    --enable-posixmutexes
    By default, the Berkeley DB library will only select the POSIX pthread mutex +
    --enable-posixmutexes
    By default, the Berkeley DB library will only select the POSIX pthread mutex implementation if it supports mutexes shared between multiple processes. If your application does not share its database environment between processes and your system's POSIX mutex support was not selected because it did not support inter-process mutexes, you may be able to increase performance and transactional throughput by configuring with the --enable-posixmutexes argument. -

    log buffer size
    Berkeley DB internally maintains a buffer of log writes. The buffer is +
    log buffer size
    Berkeley DB internally maintains a buffer of log writes. The buffer is written to disk at transaction commit, by default, or, whenever it is filled. If it is consistently being filled before transaction commit, it will be written multiple times per transaction, costing application performance. In these cases, increasing the size of the log buffer can increase application throughput. -

    log file location
    If the database environment's log files are on the same disk as the +
    log file location
    If the database environment's log files are on the same disk as the databases, the disk arms will have to seek back-and-forth between the two. Placing the log files and the databases on different disk arms can often increase application throughput. -

    trickle write
    In some applications, the cache is sufficiently active and dirty that +
    trickle write
    In some applications, the cache is sufficiently active and dirty that readers frequently need to write a dirty page in order to have space in which to read a new page from the backing database file. You can use the db_stat utility (or the statistics returned by the @@ -130,6 +137,6 @@ the overall throughput of the application.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/transapp/why.html b/db/docs/ref/transapp/why.html index ecdf60fe6..a7c29da80 100644 --- a/db/docs/ref/transapp/why.html +++ b/db/docs/ref/transapp/why.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Why transactions? - + @@ -18,23 +18,23 @@

    Perhaps the first question to answer is "Why transactions?" There are a number of reasons to include transactional support in your applications. The most common ones are the following:

    -

    -

    Recoverability
    Applications often need to ensure that no matter how the system or +
    +
    Recoverability
    Applications often need to ensure that no matter how the system or application fails, previously saved data is available the next time the application runs. This is often called Durability. -

    Atomicity
    Applications may need to make multiple changes to one or more databases, +
    Atomicity
    Applications may need to make multiple changes to one or more databases, but ensure that either all of the changes happen, or none of them happens. Transactions guarantee that a group of changes are atomic; that is, if the application or system fails, either all of the changes to the databases will appear when the application next runs, or none of them. -

    Isolation
    Applications may need to make changes in isolation, that is, ensure that +
    Isolation
    Applications may need to make changes in isolation, that is, ensure that only a single thread of control is modifying a key/data pair at a time. Transactions ensure each thread of control sees all records as if all other transactions either completed before or after its transaction.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/txn/config.html b/db/docs/ref/txn/config.html index af33e1af1..c7d5a918e 100644 --- a/db/docs/ref/txn/config.html +++ b/db/docs/ref/txn/config.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Configuring transactions - + @@ -36,6 +36,6 @@ committed transactions may be undone during recovery instead of being redone.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/txn/intro.html b/db/docs/ref/txn/intro.html index 0c3e99935..0fc822560 100644 --- a/db/docs/ref/txn/intro.html +++ b/db/docs/ref/txn/intro.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Berkeley DB and transactions - + @@ -73,24 +73,25 @@ transaction subsystem. It is the programmatic interface used by the

    The transaction system is closed by a call to DB_ENV->close.

    Finally, the entire transaction system may be removed using the DB_ENV->remove method.

    - + - - - - - - - - - - - - + + + + + + + + + + + + +
    Transaction Subsystem and Related MethodsDescription
    DB_ENV->set_tx_maxSet maximum number of transactions
    DB_ENV->set_tx_timestampSet recovery timestamp
    DB_ENV->txn_checkpointCheckpoint the transaction subsystem
    DB_ENV->txn_recoverDistributed transaction recovery
    DB_ENV->txn_statReturn transaction subsystem statistics
    DB_ENV->txn_beginBegin a transaction
    DB_TXN->abortAbort a transaction
    DB_TXN->commitCommit a transaction
    DB_TXN->discardDiscard a prepared but not resolved transaction handle
    DB_TXN->idReturn a transaction's ID
    DB_TXN->preparePrepare a transaction for commit
    DB_TXN->set_timeoutSet transaction timeout
    DB_ENV->set_timeoutSet lock and transaction timeout
    DB_ENV->set_tx_maxSet maximum number of transactions
    DB_ENV->set_tx_timestampSet recovery timestamp
    DB_ENV->txn_beginBegin a transaction
    DB_ENV->txn_checkpointCheckpoint the transaction subsystem
    DB_ENV->txn_recoverDistributed transaction recovery
    DB_ENV->txn_statReturn transaction subsystem statistics
    DB_TXN->abortAbort a transaction
    DB_TXN->commitCommit a transaction
    DB_TXN->discardDiscard a prepared but not resolved transaction handle
    DB_TXN->idReturn a transaction's ID
    DB_TXN->preparePrepare a transaction for commit
    DB_TXN->set_timeoutSet transaction timeout

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/txn/limits.html b/db/docs/ref/txn/limits.html index a72ad4a0b..e48e63963 100644 --- a/db/docs/ref/txn/limits.html +++ b/db/docs/ref/txn/limits.html @@ -1,18 +1,18 @@ - - + + Berkeley DB Reference Guide: Transaction limits - + -

    Berkeley DB Reference Guide:
    Transaction Subsystem

    PrevRefNext +PrevRefNext

    Transaction limits

    @@ -49,8 +49,8 @@ the deadlock detector cannot detect the problem. In this case, there is no true deadlock, but because the transaction on which a transaction is waiting is in the same thread of control, no forward progress can be made.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.2.0/convert.html b/db/docs/ref/upgrade.2.0/convert.html index 0c55bb3da..706a8bd15 100644 --- a/db/docs/ref/upgrade.2.0/convert.html +++ b/db/docs/ref/upgrade.2.0/convert.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 2.0: converting applications - + @@ -70,6 +70,6 @@ additional functionality supplied by Berkeley DB version 2, as it is likely to result in enhanced application performance.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.2.0/disk.html b/db/docs/ref/upgrade.2.0/disk.html index b3e16695e..e0a09e0c3 100644 --- a/db/docs/ref/upgrade.2.0/disk.html +++ b/db/docs/ref/upgrade.2.0/disk.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 2.0: upgrade requirements - + @@ -23,6 +23,6 @@ environments did not exist prior to the 2.0 release, there is no question of upgrading existing database environments.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.2.0/intro.html b/db/docs/ref/upgrade.2.0/intro.html index 491565eae..836c11318 100644 --- a/db/docs/ref/upgrade.2.0/intro.html +++ b/db/docs/ref/upgrade.2.0/intro.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 2.0: introduction - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -28,6 +27,6 @@ version 2 library. The underlying databases must be converted, however, as the Berkeley DB version 2 library has a different underlying database format.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.2.0/system.html b/db/docs/ref/upgrade.2.0/system.html index 28660c58f..b634edfdd 100644 --- a/db/docs/ref/upgrade.2.0/system.html +++ b/db/docs/ref/upgrade.2.0/system.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 2.0: system integration - + @@ -80,6 +80,6 @@ since you have removed that from the library as well.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.2.0/toc.html b/db/docs/ref/upgrade.2.0/toc.html index e6b475fa1..bc79d5f82 100644 --- a/db/docs/ref/upgrade.2.0/toc.html +++ b/db/docs/ref/upgrade.2.0/toc.html @@ -1,14 +1,15 @@ - - + + Berkeley DB Reference Guide: Upgrading Berkeley DB 1.XX applications to Berkeley DB 2.0 - + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    Ref @@ -23,6 +24,6 @@

    Ref
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/close.html b/db/docs/ref/upgrade.3.0/close.html index 71b74bc4b..7a0b0f6e6 100644 --- a/db/docs/ref/upgrade.3.0/close.html +++ b/db/docs/ref/upgrade.3.0/close.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: DB->sync and DB->close - + @@ -30,6 +30,6 @@ database. Alternatively, the caller can ignore any error return of DB_INCOMPLETE.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/cxx.html b/db/docs/ref/upgrade.3.0/cxx.html index 9850ec94e..adf0cec5f 100644 --- a/db/docs/ref/upgrade.3.0/cxx.html +++ b/db/docs/ref/upgrade.3.0/cxx.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: additional C++ changes - + @@ -27,6 +27,6 @@ and Java APIs much closer in terms of functionality and usage. Please refer to the pages for upgrading C applications for further details.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/db.html b/db/docs/ref/upgrade.3.0/db.html index ffbdc0b97..5dbdc27d0 100644 --- a/db/docs/ref/upgrade.3.0/db.html +++ b/db/docs/ref/upgrade.3.0/db.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: the DB structure - + @@ -44,6 +44,6 @@ applications and the methods that should now be used to get or set them.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/db_cxx.html b/db/docs/ref/upgrade.3.0/db_cxx.html index 81e757dbc..c7693a11d 100644 --- a/db/docs/ref/upgrade.3.0/db_cxx.html +++ b/db/docs/ref/upgrade.3.0/db_cxx.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: the Db class for C++ and Java - + @@ -43,6 +43,6 @@ table.open("lookup.db", null, Db.DB_BTREE, Db.DB_CREATE, 0644);

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/dbenv.html b/db/docs/ref/upgrade.3.0/dbenv.html index 6ba4de5ef..031b0cf55 100644 --- a/db/docs/ref/upgrade.3.0/dbenv.html +++ b/db/docs/ref/upgrade.3.0/dbenv.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: the DB_ENV structure - + @@ -64,6 +64,6 @@ no longer be used by any application.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/dbenv_cxx.html b/db/docs/ref/upgrade.3.0/dbenv_cxx.html index dffe11908..b89b768d7 100644 --- a/db/docs/ref/upgrade.3.0/dbenv_cxx.html +++ b/db/docs/ref/upgrade.3.0/dbenv_cxx.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: the DbEnv class for C++ and Java - + @@ -68,6 +68,6 @@ DbTxnMgr, DbMpool, DbLog, DbTxnMgr. If you used any of these managers, all their methods are now found directly in the DbEnv class.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/dbinfo.html b/db/docs/ref/upgrade.3.0/dbinfo.html index c381b83d4..734670ae8 100644 --- a/db/docs/ref/upgrade.3.0/dbinfo.html +++ b/db/docs/ref/upgrade.3.0/dbinfo.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: the DBINFO structure - + @@ -68,6 +68,6 @@ record pad character. They should simply be discarded from the application.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/disk.html b/db/docs/ref/upgrade.3.0/disk.html index 127326dd2..ac2659a51 100644 --- a/db/docs/ref/upgrade.3.0/disk.html +++ b/db/docs/ref/upgrade.3.0/disk.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: upgrade requirements - + @@ -26,6 +26,6 @@ error.

    installations.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/eacces.html b/db/docs/ref/upgrade.3.0/eacces.html index f6417e9d9..f083de109 100644 --- a/db/docs/ref/upgrade.3.0/eacces.html +++ b/db/docs/ref/upgrade.3.0/eacces.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: EACCES - + @@ -24,6 +24,6 @@ error return from lock_put or lock_vec should have the test and any error handling removed.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/eagain.html b/db/docs/ref/upgrade.3.0/eagain.html index e2fa93e37..27856f6fb 100644 --- a/db/docs/ref/upgrade.3.0/eagain.html +++ b/db/docs/ref/upgrade.3.0/eagain.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: EAGAIN - + @@ -30,6 +30,6 @@ string EAGAIN in that file, there is a comment that describes how to make the change.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/envopen.html b/db/docs/ref/upgrade.3.0/envopen.html index b0befd650..e41781213 100644 --- a/db/docs/ref/upgrade.3.0/envopen.html +++ b/db/docs/ref/upgrade.3.0/envopen.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: environment open/close/unlink - + @@ -151,6 +151,6 @@ XXX_unlink is now a flag value that is set by bitwise inclusively OR'ing DB_ENV->remove flag argument.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/func.html b/db/docs/ref/upgrade.3.0/func.html index 40f7fd847..2b94bf5e7 100644 --- a/db/docs/ref/upgrade.3.0/func.html +++ b/db/docs/ref/upgrade.3.0/func.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: function arguments - + @@ -65,6 +65,6 @@ they declare, and then compile. You will see a warning message from your compiler in each case that needs to be upgraded.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/intro.html b/db/docs/ref/upgrade.3.0/intro.html index 7bc747313..3e0c44c14 100644 --- a/db/docs/ref/upgrade.3.0/intro.html +++ b/db/docs/ref/upgrade.3.0/intro.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 3.0: introduction - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -22,6 +21,6 @@ This information does not describe how to upgrade Berkeley DB 1.85 release applications.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/java.html b/db/docs/ref/upgrade.3.0/java.html index 8b34dcce1..f910d6389 100644 --- a/db/docs/ref/upgrade.3.0/java.html +++ b/db/docs/ref/upgrade.3.0/java.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Release 3.0: additional Java changes - + @@ -24,16 +24,12 @@ DbException will catch these also, so code is not required to change. The catch clause for these new exceptions should appear before the catch clause for DbException.

    You will need to add a catch clause for java.io.FileNotFoundException, -since that can be thrown by the -Db.open -and -DbEnv.open -s.

    +since that can be thrown by Db.open and DbEnv.open.

    There are a number of smaller changes to the API that bring the C, C++ and Java APIs much closer in terms of functionality and usage. Please refer to the pages for upgrading C applications for further details.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/join.html b/db/docs/ref/upgrade.3.0/join.html index 8592d542f..083db66bd 100644 --- a/db/docs/ref/upgrade.3.0/join.html +++ b/db/docs/ref/upgrade.3.0/join.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: DB->join - + @@ -24,6 +24,6 @@ interfaces.

    For each of these, the order of the last two arguments should be swapped.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/jump_set.html b/db/docs/ref/upgrade.3.0/jump_set.html index a5f7392f6..164e20d40 100644 --- a/db/docs/ref/upgrade.3.0/jump_set.html +++ b/db/docs/ref/upgrade.3.0/jump_set.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: db_jump_set - + @@ -44,6 +44,6 @@ applications and the methods that should now be used instead.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/lock_detect.html b/db/docs/ref/upgrade.3.0/lock_detect.html index b61e26133..1cf2d93f1 100644 --- a/db/docs/ref/upgrade.3.0/lock_detect.html +++ b/db/docs/ref/upgrade.3.0/lock_detect.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: lock_detect - + @@ -20,6 +20,6 @@ For each one, a NULL argument should be appended to the current arguments.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/lock_notheld.html b/db/docs/ref/upgrade.3.0/lock_notheld.html index eff12096f..89bf4985b 100644 --- a/db/docs/ref/upgrade.3.0/lock_notheld.html +++ b/db/docs/ref/upgrade.3.0/lock_notheld.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: DB_LOCK_NOTHELD - + @@ -23,6 +23,6 @@ occurrences of DB_LOCK_NOTHELD. For each of these, the test and any error processing should be removed.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/lock_put.html b/db/docs/ref/upgrade.3.0/lock_put.html index 761c99ecc..8cd1cc6a2 100644 --- a/db/docs/ref/upgrade.3.0/lock_put.html +++ b/db/docs/ref/upgrade.3.0/lock_put.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: lock_put - + @@ -21,6 +21,6 @@ For each one, instead of passing a DB_LOCK variable as the last argument to the function, the address of the DB_LOCK variable should be passed.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/lock_stat.html b/db/docs/ref/upgrade.3.0/lock_stat.html index 9fc3b78a4..5657a4b5a 100644 --- a/db/docs/ref/upgrade.3.0/lock_stat.html +++ b/db/docs/ref/upgrade.3.0/lock_stat.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: lock_stat - + @@ -20,6 +20,6 @@ have been removed, and this information is no longer available.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/log_register.html b/db/docs/ref/upgrade.3.0/log_register.html index e66068ca6..41183cd07 100644 --- a/db/docs/ref/upgrade.3.0/log_register.html +++ b/db/docs/ref/upgrade.3.0/log_register.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: log_register - + @@ -21,6 +21,6 @@ each of these, the DBTYPE argument (it is the fourth argument) should be removed.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/log_stat.html b/db/docs/ref/upgrade.3.0/log_stat.html index ea0856601..c7e896c71 100644 --- a/db/docs/ref/upgrade.3.0/log_stat.html +++ b/db/docs/ref/upgrade.3.0/log_stat.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: log_stat - + @@ -19,6 +19,6 @@ has been removed, and this information is no longer available.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/memp_stat.html b/db/docs/ref/upgrade.3.0/memp_stat.html index d4c9ba9db..2d91dd7db 100644 --- a/db/docs/ref/upgrade.3.0/memp_stat.html +++ b/db/docs/ref/upgrade.3.0/memp_stat.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: memp_stat - + @@ -22,6 +22,6 @@ has been replaced with two new fields, st_gbytes and st_bytes.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/open.html b/db/docs/ref/upgrade.3.0/open.html index e57888e36..09db0be91 100644 --- a/db/docs/ref/upgrade.3.0/open.html +++ b/db/docs/ref/upgrade.3.0/open.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: database open/close - + @@ -61,6 +61,6 @@ on the DB handle. That change is discus this chapter.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/rmw.html b/db/docs/ref/upgrade.3.0/rmw.html index ab7e32aa3..5a6ad7619 100644 --- a/db/docs/ref/upgrade.3.0/rmw.html +++ b/db/docs/ref/upgrade.3.0/rmw.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: DB_RMW - + @@ -27,6 +27,6 @@ each of these, any that are arguments to the DB_WRITECURSOR flag instead.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/stat.html b/db/docs/ref/upgrade.3.0/stat.html index 98c915b55..b5d397818 100644 --- a/db/docs/ref/upgrade.3.0/stat.html +++ b/db/docs/ref/upgrade.3.0/stat.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: DB->stat - + @@ -20,6 +20,6 @@ and Recno databases has been removed, and this information is no longer available.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/toc.html b/db/docs/ref/upgrade.3.0/toc.html index 96d55df38..d87696bbf 100644 --- a/db/docs/ref/upgrade.3.0/toc.html +++ b/db/docs/ref/upgrade.3.0/toc.html @@ -1,14 +1,15 @@ - - + + Berkeley DB Reference Guide: Upgrading Berkeley DB 2.X.X applications to Berkeley DB 3.0 - + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    Ref @@ -50,6 +51,6 @@

    Ref
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/txn_begin.html b/db/docs/ref/upgrade.3.0/txn_begin.html index 56935358a..a81356bae 100644 --- a/db/docs/ref/upgrade.3.0/txn_begin.html +++ b/db/docs/ref/upgrade.3.0/txn_begin.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: txn_begin - + @@ -21,6 +21,6 @@ For each one, an argument of 0 should be appended to the current arguments.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/txn_commit.html b/db/docs/ref/upgrade.3.0/txn_commit.html index 409524981..4d93fd980 100644 --- a/db/docs/ref/upgrade.3.0/txn_commit.html +++ b/db/docs/ref/upgrade.3.0/txn_commit.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: txn_commit - + @@ -21,6 +21,6 @@ For each one, an argument of 0 should be appended to the current arguments.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/txn_stat.html b/db/docs/ref/upgrade.3.0/txn_stat.html index 88bb7b49c..e4d335034 100644 --- a/db/docs/ref/upgrade.3.0/txn_stat.html +++ b/db/docs/ref/upgrade.3.0/txn_stat.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: txn_stat - + @@ -19,6 +19,6 @@ has been removed, and this information is no longer available.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/value_set.html b/db/docs/ref/upgrade.3.0/value_set.html index 0336434c8..f9390f6cb 100644 --- a/db/docs/ref/upgrade.3.0/value_set.html +++ b/db/docs/ref/upgrade.3.0/value_set.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: db_value_set - + @@ -37,6 +37,6 @@ information.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.0/xa.html b/db/docs/ref/upgrade.3.0/xa.html index 4529e4044..2d4c26d3e 100644 --- a/db/docs/ref/upgrade.3.0/xa.html +++ b/db/docs/ref/upgrade.3.0/xa.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.0: db_xa_open - + @@ -29,6 +29,6 @@ calls to the Db::xa_open method should be replaced with the the DB::open method.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/btstat.html b/db/docs/ref/upgrade.3.1/btstat.html index d419b3674..963b39bba 100644 --- a/db/docs/ref/upgrade.3.1/btstat.html +++ b/db/docs/ref/upgrade.3.1/btstat.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: DB->stat - + @@ -46,6 +46,6 @@ of the qs_nrecs field, and the field should be changed to be qs_nkeys.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/config.html b/db/docs/ref/upgrade.3.1/config.html index 440c74b80..8ff93aa15 100644 --- a/db/docs/ref/upgrade.3.1/config.html +++ b/db/docs/ref/upgrade.3.1/config.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: DB_ENV->open, DB_ENV->remove - + @@ -31,6 +31,6 @@ argument, the strings values in that argument are replaced with calls to

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/disk.html b/db/docs/ref/upgrade.3.1/disk.html index 986acaba7..9af245022 100644 --- a/db/docs/ref/upgrade.3.1/disk.html +++ b/db/docs/ref/upgrade.3.1/disk.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: upgrade requirements - + @@ -30,6 +30,6 @@ databases are upgraded, the DB->open m installations.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/dup.html b/db/docs/ref/upgrade.3.1/dup.html index 724465224..984a94c60 100644 --- a/db/docs/ref/upgrade.3.1/dup.html +++ b/db/docs/ref/upgrade.3.1/dup.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: identical duplicate data items - + @@ -27,6 +27,6 @@ release. See Duplicate data items for more information.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/env.html b/db/docs/ref/upgrade.3.1/env.html index c74764191..d3a253e60 100644 --- a/db/docs/ref/upgrade.3.1/env.html +++ b/db/docs/ref/upgrade.3.1/env.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: environment configuration - + @@ -49,6 +49,6 @@ instead.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/intro.html b/db/docs/ref/upgrade.3.1/intro.html index f41a03300..1139fff4c 100644 --- a/db/docs/ref/upgrade.3.1/intro.html +++ b/db/docs/ref/upgrade.3.1/intro.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 3.1: introduction - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -22,6 +21,6 @@ This information does not describe how to upgrade Berkeley DB 1.85 release applications.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/log_register.html b/db/docs/ref/upgrade.3.1/log_register.html index dea09de1c..5b33cf1c1 100644 --- a/db/docs/ref/upgrade.3.1/log_register.html +++ b/db/docs/ref/upgrade.3.1/log_register.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: log_register - + @@ -24,6 +24,6 @@ be a reference to the DB structure being unregistered.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/logalloc.html b/db/docs/ref/upgrade.3.1/logalloc.html index 1444a522d..1d054b8cb 100644 --- a/db/docs/ref/upgrade.3.1/logalloc.html +++ b/db/docs/ref/upgrade.3.1/logalloc.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: log file pre-allocation - + @@ -23,6 +23,6 @@ this feature back on, search for the flag DB_OSO_LOG in the source file Sleepycat Software for assistance.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/memp_register.html b/db/docs/ref/upgrade.3.1/memp_register.html index 565efacbd..f5a68508b 100644 --- a/db/docs/ref/upgrade.3.1/memp_register.html +++ b/db/docs/ref/upgrade.3.1/memp_register.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: memp_register - + @@ -26,6 +26,6 @@ applications, and may be entirely ignored by the pgin and pgout functions themselves.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/put.html b/db/docs/ref/upgrade.3.1/put.html index 28509a665..9b8dacb34 100644 --- a/db/docs/ref/upgrade.3.1/put.html +++ b/db/docs/ref/upgrade.3.1/put.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: DB->put - + @@ -60,6 +60,6 @@ recno = *(db_recno_t *)key->data; printf("new record number is %lu\n", (u_long)recno);

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/set_feedback.html b/db/docs/ref/upgrade.3.1/set_feedback.html index 9abffdc57..141b8dc44 100644 --- a/db/docs/ref/upgrade.3.1/set_feedback.html +++ b/db/docs/ref/upgrade.3.1/set_feedback.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: DB_ENV->set_feedback, DB->set_feedback - + @@ -23,6 +23,6 @@ or throw an exception as appropriate when an error occurs.

    possible error on return.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/set_paniccall.html b/db/docs/ref/upgrade.3.1/set_paniccall.html index bd05e58b2..b94346942 100644 --- a/db/docs/ref/upgrade.3.1/set_paniccall.html +++ b/db/docs/ref/upgrade.3.1/set_paniccall.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: DB_ENV->set_paniccall, DB->set_paniccall - + @@ -23,6 +23,6 @@ or throw an exception as appropriate when an error occurs.

    possible error on return.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/set_tx_recover.html b/db/docs/ref/upgrade.3.1/set_tx_recover.html index d7d1ab21d..5186581b8 100644 --- a/db/docs/ref/upgrade.3.1/set_tx_recover.html +++ b/db/docs/ref/upgrade.3.1/set_tx_recover.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: DB_ENV->set_tx_recover - + @@ -32,6 +32,6 @@ function as follows:


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/sysmem.html b/db/docs/ref/upgrade.3.1/sysmem.html index de89a81c1..b8b20a196 100644 --- a/db/docs/ref/upgrade.3.1/sysmem.html +++ b/db/docs/ref/upgrade.3.1/sysmem.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: DB_SYSTEM_MEM - + @@ -21,6 +21,6 @@ specification of a base system memory segment ID, using the example, one returned by the UNIX ftok(3) function.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/tcl.html b/db/docs/ref/upgrade.3.1/tcl.html index 852652f36..c9259b5dd 100644 --- a/db/docs/ref/upgrade.3.1/tcl.html +++ b/db/docs/ref/upgrade.3.1/tcl.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: Tcl API - + @@ -27,6 +27,6 @@ record number are "0x", the record number is expected to be in hexadecimal form.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/tmp.html b/db/docs/ref/upgrade.3.1/tmp.html index 9f144e555..5961b0098 100644 --- a/db/docs/ref/upgrade.3.1/tmp.html +++ b/db/docs/ref/upgrade.3.1/tmp.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: DB_TMP_DIR - + @@ -30,6 +30,6 @@ protection modes for the system registry directory are different from those on the directory previously used by Berkeley DB.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/toc.html b/db/docs/ref/upgrade.3.1/toc.html index e3ec409e3..5884eb20e 100644 --- a/db/docs/ref/upgrade.3.1/toc.html +++ b/db/docs/ref/upgrade.3.1/toc.html @@ -1,14 +1,15 @@ - - + + Berkeley DB Reference Guide: Upgrading Berkeley DB 3.0.X applications to Berkeley DB 3.1 - + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    Ref @@ -36,6 +37,6 @@

    Ref
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.1/txn_check.html b/db/docs/ref/upgrade.3.1/txn_check.html index 035235b04..7d0ac906b 100644 --- a/db/docs/ref/upgrade.3.1/txn_check.html +++ b/db/docs/ref/upgrade.3.1/txn_check.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.1: txn_checkpoint - + @@ -21,6 +21,6 @@ txn_checkpoint. For each one, an argument of 0 should be appended to the current arguments.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.2/callback.html b/db/docs/ref/upgrade.3.2/callback.html index 14c02b852..0d0d879ba 100644 --- a/db/docs/ref/upgrade.3.2/callback.html +++ b/db/docs/ref/upgrade.3.2/callback.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.2: DB callback functions, app_private field - + @@ -35,6 +35,6 @@ Applications using this field will have to convert to using one of the replacement fields.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.2/db_dump.html b/db/docs/ref/upgrade.3.2/db_dump.html index 660bc9dd1..aefe04a62 100644 --- a/db/docs/ref/upgrade.3.2/db_dump.html +++ b/db/docs/ref/upgrade.3.2/db_dump.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.2: db_dump - + @@ -25,6 +25,6 @@ scripts post-processing the db_dump out under these conditions may require modification.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.2/disk.html b/db/docs/ref/upgrade.3.2/disk.html index 193e45b2c..828188fa3 100644 --- a/db/docs/ref/upgrade.3.2/disk.html +++ b/db/docs/ref/upgrade.3.2/disk.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.2: upgrade requirements - + @@ -24,6 +24,6 @@ the DB->open method will return a .


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.2/handle.html b/db/docs/ref/upgrade.3.2/handle.html index 9dd9de9be..7abd7f1cc 100644 --- a/db/docs/ref/upgrade.3.2/handle.html +++ b/db/docs/ref/upgrade.3.2/handle.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Release 3.2: Java and C++ object reuse - + @@ -15,17 +15,14 @@

    Release 3.2: Java and C++ object reuse

    -

    In previous releases of Berkeley DB, Java -DbEnv - and -Db -objects, and C++ DbEnv and Db objects could be -reused after they were closed, by calling open on them again. This is -no longer permitted, and these objects no longer allow any operations -after a close. Applications reusing these objects should be modified -to create new objects instead.

    +

    In previous releases of Berkeley DB, Java DbEnv and Db objects, and C++ +DbEnv and Db objects could be reused after they +were closed, by calling open on them again. This is no longer +permitted, and these objects no longer allow any operations after a +close. Applications reusing these objects should be modified to create +new objects instead.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.2/incomplete.html b/db/docs/ref/upgrade.3.2/incomplete.html index 5ec3832d2..23268ccab 100644 --- a/db/docs/ref/upgrade.3.2/incomplete.html +++ b/db/docs/ref/upgrade.3.2/incomplete.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Release 3.2: DB_INCOMPLETE - + @@ -27,19 +27,13 @@ code of DB_INCOMPLETE.

    an exception: Db::close, Db::sync, DbEnv::memp_sync, DbEnv::txn_checkpoint, DbMpoolFile::memp_fsync.

    The following Java methods are now declared "public int" rather than -"public void", and will return Db.DB_INCOMPLETE rather than -throw an exception: -Db.close -, -Db.sync -, -DbEnv.checkpoint -.

    +"public void", and will return Db.DB_INCOMPLETE rather than throw an +exception: Db.close, Db.sync, and DbEnv.checkpoint.

    It is likely that the only change required by any application will be those currently checking for a DB_INCOMPLETE return that has been encapsulated in an exception.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.2/intro.html b/db/docs/ref/upgrade.3.2/intro.html index c38d70859..2ccfab292 100644 --- a/db/docs/ref/upgrade.3.2/intro.html +++ b/db/docs/ref/upgrade.3.2/intro.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 3.2: introduction - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -22,6 +21,6 @@ This information does not describe how to upgrade Berkeley DB 1.85 release applications.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.2/mutexlock.html b/db/docs/ref/upgrade.3.2/mutexlock.html index b0ac59894..2f45164f7 100644 --- a/db/docs/ref/upgrade.3.2/mutexlock.html +++ b/db/docs/ref/upgrade.3.2/mutexlock.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.2: DB_ENV->set_mutexlocks - + @@ -24,6 +24,6 @@ per-database environment basis. Applications using the old function should be updated to use the new one.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.2/notfound.html b/db/docs/ref/upgrade.3.2/notfound.html index 472dad9e9..655116c55 100644 --- a/db/docs/ref/upgrade.3.2/notfound.html +++ b/db/docs/ref/upgrade.3.2/notfound.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Release 3.2: Java java.io.FileNotFoundException - + @@ -15,17 +15,12 @@

    Release 3.2: Java java.io.FileNotFoundException

    -

    The Java -DbEnv.remove -, -Db.remove - and -Db.rename -methods now throw java.io.FileNotFoundException -in the case where the named file does not exist. Applications should -be modified to catch this exception where appropriate.

    +

    The Java DbEnv.remove, Db.remove and Db.rename methods now throw +java.io.FileNotFoundException in the case where the named file does not +exist. Applications should be modified to catch this exception where +appropriate.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.2/renumber.html b/db/docs/ref/upgrade.3.2/renumber.html index 947b7bb3c..ef20da4df 100644 --- a/db/docs/ref/upgrade.3.2/renumber.html +++ b/db/docs/ref/upgrade.3.2/renumber.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.2: Logically renumbering records - + @@ -35,6 +35,6 @@ evaluated to ensure that the new semantics do not cause application failure.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.2/set_flags.html b/db/docs/ref/upgrade.3.2/set_flags.html index a221add63..9561d9cec 100644 --- a/db/docs/ref/upgrade.3.2/set_flags.html +++ b/db/docs/ref/upgrade.3.2/set_flags.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.2: DB_ENV->set_flags - + @@ -31,6 +31,6 @@ appropriate place for them. Applications specifying either the DB_ENV->set_flags method.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.2/toc.html b/db/docs/ref/upgrade.3.2/toc.html index 4061b87a3..0396e24fe 100644 --- a/db/docs/ref/upgrade.3.2/toc.html +++ b/db/docs/ref/upgrade.3.2/toc.html @@ -1,14 +1,15 @@ - - + + Berkeley DB Reference Guide: Upgrading Berkeley DB 3.1.X applications to Berkeley DB 3.2 - + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    Ref @@ -30,6 +31,6 @@

    Ref
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.2/tx_recover.html b/db/docs/ref/upgrade.3.2/tx_recover.html index 6d1c2dee0..137835919 100644 --- a/db/docs/ref/upgrade.3.2/tx_recover.html +++ b/db/docs/ref/upgrade.3.2/tx_recover.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.2: DB_ENV->set_tx_recover - + @@ -28,6 +28,6 @@ application's callback function may be removed.

    enclosing the operation successfully committed.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.3/alloc.html b/db/docs/ref/upgrade.3.3/alloc.html index 679d235c6..00664eda2 100644 --- a/db/docs/ref/upgrade.3.3/alloc.html +++ b/db/docs/ref/upgrade.3.3/alloc.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Release 3.3: DB->set_malloc, DB->set_realloc - + @@ -22,34 +22,34 @@ Berkeley DB library to use when allocating memory to be owned by the application and when freeing memory that was originally allocated by the application.

    The new methods affect or replace the following historic methods:

    -

    -

    DB->set_malloc
    The DB->set_malloc method has been replaced in its entirety. +
    +
    DB->set_malloc
    The DB->set_malloc method has been replaced in its entirety. Applications using this method should replace the call with a call to DB->set_alloc. -

    DB->set_realloc
    The DB->set_realloc method has been replaced in its entirety. +
    DB->set_realloc
    The DB->set_realloc method has been replaced in its entirety. Applications using this method should replace the call with a call to DB->set_alloc. -

    DB->stat
    The historic db_malloc argument to the DB->stat method has +
    DB->stat
    The historic db_malloc argument to the DB->stat method has been replaced. Applications using this method should do as follows: if the argument is NULL, it should simply be removed. If non-NULL, it should be replaced with a call to DB->set_alloc. -

    lock_stat
    The historic db_malloc argument to the lock_stat function has +
    lock_stat
    The historic db_malloc argument to the lock_stat function has been replaced. Applications using this function should do as follows: if the argument is NULL, it should simply be removed. If non-NULL, it should be replaced with a call to DB_ENV->set_alloc. -

    log_archive
    The historic db_malloc argument to the log_archive function has +
    log_archive
    The historic db_malloc argument to the log_archive function has been replaced. Applications using this function should do as follows: if the argument is NULL, it should simply be removed. If non-NULL, it should be replaced with a call to DB_ENV->set_alloc. -

    log_stat
    The historic db_malloc argument to the log_stat function has +
    log_stat
    The historic db_malloc argument to the log_stat function has been replaced. Applications using this function should do as follows: if the argument is NULL, it should simply be removed. If non-NULL, it should be replaced with a call to DB_ENV->set_alloc. -

    memp_stat
    The historic db_malloc argument to the memp_stat function has +
    memp_stat
    The historic db_malloc argument to the memp_stat function has been replaced. Applications using this function should do as follows: if the argument is NULL, it should simply be removed. If non-NULL, it should be replaced with a call to DB_ENV->set_alloc. -

    txn_stat
    The historic db_malloc argument to the txn_stat function has +
    txn_stat
    The historic db_malloc argument to the txn_stat function has been replaced. Applications using this function should do as follows: if the argument is NULL, it should simply be removed. If non-NULL, it should be replaced with a call to DB_ENV->set_alloc. @@ -61,6 +61,6 @@ the environment first, and subsequently call the DB->set_malloc and DB->set_realloc methods; that use is no longer supported.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.3/bigfile.html b/db/docs/ref/upgrade.3.3/bigfile.html index d4d0fe4d2..221ffad0a 100644 --- a/db/docs/ref/upgrade.3.3/bigfile.html +++ b/db/docs/ref/upgrade.3.3/bigfile.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.3: --disable-bigfile - + @@ -24,6 +24,6 @@ version 2.50. For that reason, Berkeley DB configuration no longer supports used instead.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.3/conflict.html b/db/docs/ref/upgrade.3.3/conflict.html index 74b12396b..8ea579af6 100644 --- a/db/docs/ref/upgrade.3.3/conflict.html +++ b/db/docs/ref/upgrade.3.3/conflict.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.3: DB_LOCK_CONFLICT - + @@ -20,6 +20,6 @@ Applications specifying the DB_LOCK_CONFLICT flag should simply replace it with a flags argument of 0.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.3/disk.html b/db/docs/ref/upgrade.3.3/disk.html index 08fb29936..c0e4cf7b5 100644 --- a/db/docs/ref/upgrade.3.3/disk.html +++ b/db/docs/ref/upgrade.3.3/disk.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.3: upgrade requirements - + @@ -20,6 +20,6 @@ Upgrading Berkeley DB installations.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.3/getswap.html b/db/docs/ref/upgrade.3.3/getswap.html index ebba0ae11..b6b01568f 100644 --- a/db/docs/ref/upgrade.3.3/getswap.html +++ b/db/docs/ref/upgrade.3.3/getswap.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.3: DB->get_byteswapped - + @@ -24,6 +24,6 @@ argument is used as a memory location in which to store the requested information.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.3/gettype.html b/db/docs/ref/upgrade.3.3/gettype.html index 589300ffb..2c54a26b7 100644 --- a/db/docs/ref/upgrade.3.3/gettype.html +++ b/db/docs/ref/upgrade.3.3/gettype.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.3: DB->get_type - + @@ -23,6 +23,6 @@ type DBTYPE * to the method. The additional argument is used as a memory location in which to store the requested information.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.3/intro.html b/db/docs/ref/upgrade.3.3/intro.html index c71738917..7d2b8cbe5 100644 --- a/db/docs/ref/upgrade.3.3/intro.html +++ b/db/docs/ref/upgrade.3.3/intro.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 3.3: introduction - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -22,6 +21,6 @@ This information does not describe how to upgrade Berkeley DB 1.85 release applications.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.3/memp_fget.html b/db/docs/ref/upgrade.3.3/memp_fget.html index 0ca1622a8..83a857290 100644 --- a/db/docs/ref/upgrade.3.3/memp_fget.html +++ b/db/docs/ref/upgrade.3.3/memp_fget.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.3: memp_fget, EIO - + @@ -32,6 +32,6 @@ transaction when a recoverable system error occurs in order to recover from the error.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.3/rpc.html b/db/docs/ref/upgrade.3.3/rpc.html index 6e3a1b7eb..ab8f09840 100644 --- a/db/docs/ref/upgrade.3.3/rpc.html +++ b/db/docs/ref/upgrade.3.3/rpc.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Release 3.3: DB_ENV->set_server - + @@ -24,6 +24,6 @@ and specifying a NULL for the added argument, second in the argument list.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.3/shared.html b/db/docs/ref/upgrade.3.3/shared.html index 662598f80..96373f2a7 100644 --- a/db/docs/ref/upgrade.3.3/shared.html +++ b/db/docs/ref/upgrade.3.3/shared.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.3: --enable-dynamic, --enable-shared - + @@ -26,6 +26,6 @@ both static and shared libraries by default, the useful options are Libtool's --disable-shared and --disable-static options.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.3/toc.html b/db/docs/ref/upgrade.3.3/toc.html index 6329c4837..9883f6b01 100644 --- a/db/docs/ref/upgrade.3.3/toc.html +++ b/db/docs/ref/upgrade.3.3/toc.html @@ -1,14 +1,15 @@ - - + + Berkeley DB Reference Guide: Upgrading Berkeley DB 3.2.X applications to Berkeley DB 3.3 - + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    Ref @@ -30,6 +31,6 @@

    Ref
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.3.3/txn_prepare.html b/db/docs/ref/upgrade.3.3/txn_prepare.html index fa6bfe4e7..2e57f79bf 100644 --- a/db/docs/ref/upgrade.3.3/txn_prepare.html +++ b/db/docs/ref/upgrade.3.3/txn_prepare.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 3.3: txn_prepare - + @@ -22,6 +22,6 @@ commit using Berkeley DB as a local resource manager), see information.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/asr.html b/db/docs/ref/upgrade.4.0/asr.html index 2e230f151..ee9f086f3 100644 --- a/db/docs/ref/upgrade.4.0/asr.html +++ b/db/docs/ref/upgrade.4.0/asr.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.0: application-specific recovery - + @@ -35,6 +35,6 @@ recommend that you contact Sleepycat support and ask us to review those routines for you.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/cxx.html b/db/docs/ref/upgrade.4.0/cxx.html index 3ca038d8e..1554058b0 100644 --- a/db/docs/ref/upgrade.4.0/cxx.html +++ b/db/docs/ref/upgrade.4.0/cxx.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.0: C++ ostream objects - + @@ -44,6 +44,6 @@ void foo(Db db) { }

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/deadlock.html b/db/docs/ref/upgrade.4.0/deadlock.html index 8df9c1c5d..e36e7505b 100644 --- a/db/docs/ref/upgrade.4.0/deadlock.html +++ b/db/docs/ref/upgrade.4.0/deadlock.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.0: db_deadlock - + @@ -21,6 +21,6 @@ option by using the -t option with an argument of .100000.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/disk.html b/db/docs/ref/upgrade.4.0/disk.html index 5ab14f49c..38e707a14 100644 --- a/db/docs/ref/upgrade.4.0/disk.html +++ b/db/docs/ref/upgrade.4.0/disk.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.0: upgrade requirements - + @@ -21,6 +21,6 @@ formats changed in the Berkeley DB 4.0 release.

    Upgrading Berkeley DB installations.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/env.html b/db/docs/ref/upgrade.4.0/env.html index c887aba3b..f1da7255b 100644 --- a/db/docs/ref/upgrade.4.0/env.html +++ b/db/docs/ref/upgrade.4.0/env.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.0: db_env_set_XXX - + @@ -75,6 +75,6 @@ their calls, replacing the historic call with a call to usage of the historic interface.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/intro.html b/db/docs/ref/upgrade.4.0/intro.html index 434f65b7c..87f5fc2e9 100644 --- a/db/docs/ref/upgrade.4.0/intro.html +++ b/db/docs/ref/upgrade.4.0/intro.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 4.0: introduction - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -22,6 +21,6 @@ This information does not describe how to upgrade Berkeley DB 1.85 release applications.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/java.html b/db/docs/ref/upgrade.4.0/java.html index 45bf27d84..8dbbbcdc8 100644 --- a/db/docs/ref/upgrade.4.0/java.html +++ b/db/docs/ref/upgrade.4.0/java.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.0: Java CLASSPATH environment variable - + @@ -20,7 +20,7 @@ release, the CLASSPATH environment variable must change to include at least the db.jar file. It can optionally include the dbexamples.jar file if you want to run the examples. For example, on UNIX:

    -
    export CLASSPATH="/usr/local/BerkeleyDB.4.2/lib/db.jar:/usr/local/BerkeleyDB.4.2/lib/dbexamples.jar"
    +
    export CLASSPATH="/usr/local/BerkeleyDB.4.3/lib/db.jar:/usr/local/BerkeleyDB.4.3/lib/dbexamples.jar"

    For example, on Windows:

    set CLASSPATH="D:\db\build_win32\Release\db.jar;D:\db\build_win32\Release\dbexamples.jar"

    For more information on Java configuration, please see @@ -28,6 +28,6 @@ example, on UNIX:

    Building for Win32.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/lock.html b/db/docs/ref/upgrade.4.0/lock.html index 26b431fc1..bdf5f0f3d 100644 --- a/db/docs/ref/upgrade.4.0/lock.html +++ b/db/docs/ref/upgrade.4.0/lock.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.0: lock_XXX - + @@ -41,6 +41,6 @@ to use the enclosing DB_ENV handle's me first argument to the existing call is the correct handle to use).


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/lock_id_free.html b/db/docs/ref/upgrade.4.0/lock_id_free.html index f792d72fa..a6e43b7e9 100644 --- a/db/docs/ref/upgrade.4.0/lock_id_free.html +++ b/db/docs/ref/upgrade.4.0/lock_id_free.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.0: DB_ENV->lock_id_free - + @@ -21,6 +21,6 @@ locker IDs may want to update their applications to free the locker ID when it is no longer needed.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/log.html b/db/docs/ref/upgrade.4.0/log.html index 596b5cda9..4cdb20124 100644 --- a/db/docs/ref/upgrade.4.0/log.html +++ b/db/docs/ref/upgrade.4.0/log.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.0: log_XXX - + @@ -51,6 +51,6 @@ applications should add a final argument of 0 to any calls made to DB_ENV->log_stat.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/mp.html b/db/docs/ref/upgrade.4.0/mp.html index 093f3e6e5..c242ac950 100644 --- a/db/docs/ref/upgrade.4.0/mp.html +++ b/db/docs/ref/upgrade.4.0/mp.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.0: memp_XXX - + @@ -61,6 +61,6 @@ interfaces are identical; the one exception is the

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/rpc.html b/db/docs/ref/upgrade.4.0/rpc.html index 0f27cc0ca..52507a106 100644 --- a/db/docs/ref/upgrade.4.0/rpc.html +++ b/db/docs/ref/upgrade.4.0/rpc.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Release 4.0: DB_ENV->set_server - + @@ -22,6 +22,6 @@ name, and specifying a NULL for the added argument, second in the argument list.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/set_lk_max.html b/db/docs/ref/upgrade.4.0/set_lk_max.html index 961b407b9..2829534c6 100644 --- a/db/docs/ref/upgrade.4.0/set_lk_max.html +++ b/db/docs/ref/upgrade.4.0/set_lk_max.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.0: DB_ENV->set_lk_max - + @@ -22,6 +22,6 @@ method continues to be available, but is no longer documented and is expected to be removed in a future release.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/toc.html b/db/docs/ref/upgrade.4.0/toc.html index 93e53eb21..31a3ababa 100644 --- a/db/docs/ref/upgrade.4.0/toc.html +++ b/db/docs/ref/upgrade.4.0/toc.html @@ -1,14 +1,15 @@ - - + + Berkeley DB Reference Guide: Upgrading Berkeley DB 3.3.X applications to Berkeley DB 4.0 - + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    Ref @@ -33,6 +34,6 @@

    Ref
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.0/txn.html b/db/docs/ref/upgrade.4.0/txn.html index a22b6559e..93675318b 100644 --- a/db/docs/ref/upgrade.4.0/txn.html +++ b/db/docs/ref/upgrade.4.0/txn.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.0: txn_XXX - + @@ -42,6 +42,6 @@ unchanged, applications should add a final argument of 0 to any calls made to DB_ENV->txn_stat.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/app_dispatch.html b/db/docs/ref/upgrade.4.1/app_dispatch.html index 5644f7be7..b538e8bff 100644 --- a/db/docs/ref/upgrade.4.1/app_dispatch.html +++ b/db/docs/ref/upgrade.4.1/app_dispatch.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.1: Application-specific logging and recovery - + @@ -27,6 +27,6 @@ removed interfaces should be updated to call recovery" and the DB_ENV->set_app_dispatch documentation.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/checkpoint.html b/db/docs/ref/upgrade.4.1/checkpoint.html index cbd89b9d8..1bdf7d6e3 100644 --- a/db/docs/ref/upgrade.4.1/checkpoint.html +++ b/db/docs/ref/upgrade.4.1/checkpoint.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.1: DB_CHECKPOINT, DB_CURLSN - + @@ -25,6 +25,6 @@ used this flag, please contact Sleepycat Software support for help in upgrading.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/cxx.html b/db/docs/ref/upgrade.4.1/cxx.html index 9efc6655d..aea5efa76 100644 --- a/db/docs/ref/upgrade.4.1/cxx.html +++ b/db/docs/ref/upgrade.4.1/cxx.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.1: C++ exceptions - + @@ -43,6 +43,6 @@ errors while closing can be handled by the application.

    }

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/disk.html b/db/docs/ref/upgrade.4.1/disk.html index 9ef311f4c..272b85253 100644 --- a/db/docs/ref/upgrade.4.1/disk.html +++ b/db/docs/ref/upgrade.4.1/disk.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.1: upgrade requirements - + @@ -26,6 +26,6 @@ usable with earlier Berkeley DB releases.

    Upgrading Berkeley DB installations.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/excl.html b/db/docs/ref/upgrade.4.1/excl.html index ebdda2c9b..8cfb71eaf 100644 --- a/db/docs/ref/upgrade.4.1/excl.html +++ b/db/docs/ref/upgrade.4.1/excl.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.1: DB_EXCL - + @@ -21,6 +21,6 @@ the DB_EXCL flag to check for the subdatabases.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/fop.html b/db/docs/ref/upgrade.4.1/fop.html index c5c85b842..ea0ca1202 100644 --- a/db/docs/ref/upgrade.4.1/fop.html +++ b/db/docs/ref/upgrade.4.1/fop.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Release 4.1: DB->associate, DB->open, DB->remove, DB->rename - + @@ -123,6 +123,6 @@ transaction handle to operations using handles that were opened within a transaction will also return an error.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/hash_nelem.html b/db/docs/ref/upgrade.4.1/hash_nelem.html index b84bf4806..9d0e6de24 100644 --- a/db/docs/ref/upgrade.4.1/hash_nelem.html +++ b/db/docs/ref/upgrade.4.1/hash_nelem.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.1: DB->stat.hash_nelem - + @@ -20,6 +20,6 @@ databases has been removed from the 4.1 release, this information is no longer available to applications.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/incomplete.html b/db/docs/ref/upgrade.4.1/incomplete.html index bccac9e19..2f0da9386 100644 --- a/db/docs/ref/upgrade.4.1/incomplete.html +++ b/db/docs/ref/upgrade.4.1/incomplete.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Release 4.1: DB_INCOMPLETE - + @@ -21,13 +21,10 @@ to check for this error return, as the underlying Berkeley DB interfaces that could historically fail to checkpoint or flush the cache and return this error can no longer fail for that reason. Applications should remove all uses of DB_INCOMPLETE.

    -

    Additionally, the -DbEnv.checkpoint -and -Db.sync -methods have been changed from returning int to returning void.

    +

    Additionally, the DbEnv.checkpoint and Db.sync methods have been changed +from returning int to returning void.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/intro.html b/db/docs/ref/upgrade.4.1/intro.html index 521afa080..7d7d9c23f 100644 --- a/db/docs/ref/upgrade.4.1/intro.html +++ b/db/docs/ref/upgrade.4.1/intro.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 4.1: introduction - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -22,6 +21,6 @@ This information does not describe how to upgrade Berkeley DB 1.85 release applications.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/java.html b/db/docs/ref/upgrade.4.1/java.html index 6cba3606b..58a61ea19 100644 --- a/db/docs/ref/upgrade.4.1/java.html +++ b/db/docs/ref/upgrade.4.1/java.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: Release 4.1: Java exceptions - + @@ -15,21 +15,14 @@

    Release 4.1: Java exceptions

    -

    The Java -DbEnv - constructor is now -marked with "throws DbException". This means applications must -construct -DbEnv -objects in a context where -DbException -throwables are -handled (either in a try/catch block or in a method that propagates the -exception up the stack). Note that previous versions of the Berkeley DB Java -API could throw this exception from the constructor but it was not -marked.

    +

    The Java DbEnv constructor is now marked with "throws DbException". +This means applications must construct DbEnv objects in a context where +DbException throwables are handled (either in a try/catch block or in a +method that propagates the exception up the stack). Note that previous +versions of the Berkeley DB Java API could throw this exception from the +constructor but it was not marked.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/log_register.html b/db/docs/ref/upgrade.4.1/log_register.html index 94c6b4646..cd8d885e2 100644 --- a/db/docs/ref/upgrade.4.1/log_register.html +++ b/db/docs/ref/upgrade.4.1/log_register.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.1: DB_ENV->log_register - + @@ -22,6 +22,6 @@ these interfaces, please contact Sleepycat Software support for help in upgrading.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/log_stat.html b/db/docs/ref/upgrade.4.1/log_stat.html index e4f43e0de..e65d859bd 100644 --- a/db/docs/ref/upgrade.4.1/log_stat.html +++ b/db/docs/ref/upgrade.4.1/log_stat.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.1: st_flushcommit - + @@ -21,6 +21,6 @@ application using the "st_flushcommits" statistic should remove it, or replace it with the "st_count" statistic.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/memp_sync.html b/db/docs/ref/upgrade.4.1/memp_sync.html index 1008d24ed..17b48e384 100644 --- a/db/docs/ref/upgrade.4.1/memp_sync.html +++ b/db/docs/ref/upgrade.4.1/memp_sync.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.1: DB_ENV->memp_sync - + @@ -26,6 +26,6 @@ this information. If your application used this information, please contact Sleepycat Software support for help in upgrading.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.1/toc.html b/db/docs/ref/upgrade.4.1/toc.html index 3d477bced..b50b25f21 100644 --- a/db/docs/ref/upgrade.4.1/toc.html +++ b/db/docs/ref/upgrade.4.1/toc.html @@ -1,14 +1,15 @@ - - + + Berkeley DB Reference Guide: Upgrading Berkeley DB 4.0.X applications to Berkeley DB 4.1 - + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    Ref @@ -32,6 +33,6 @@

    Ref
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/cksum.html b/db/docs/ref/upgrade.4.2/cksum.html index 1451277be..db6d455e5 100644 --- a/db/docs/ref/upgrade.4.2/cksum.html +++ b/db/docs/ref/upgrade.4.2/cksum.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 4.2: DB_CHKSUM_SHA1 - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -25,6 +24,6 @@ Applications using the DB_CHKSUM_SHA1 flag should change that use to DB_CHKSUM; no other change is required.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/client.html b/db/docs/ref/upgrade.4.2/client.html index 8f295c3c9..274e7ed81 100644 --- a/db/docs/ref/upgrade.4.2/client.html +++ b/db/docs/ref/upgrade.4.2/client.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 4.2: DB_CLIENT - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -23,6 +22,6 @@ flag should change that use to

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/del.html b/db/docs/ref/upgrade.4.2/del.html index d48973311..c3f10415d 100644 --- a/db/docs/ref/upgrade.4.2/del.html +++ b/db/docs/ref/upgrade.4.2/del.html @@ -1,37 +1,31 @@ - - + + Berkeley DB Reference Guide: Release 4.2: DB->del - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext

    Release 4.2: DB->del

    -

    In previous releases, the C++ Db::del and Java -Db.delete - methods threw exceptions -encapsulating the -DB_KEYEMPTY error in some cases when called on Queue and Recno -databases. Unfortunately, this was undocumented behavior.

    +

    In previous releases, the C++ Db::del and Java Db.delete +methods threw exceptions encapsulating the DB_KEYEMPTY error in +some cases when called on Queue and Recno databases. Unfortunately, +this was undocumented behavior.

    For consistency with the other Berkeley DB methods that handle DB_KEYEMPTY, this is no longer the case. Applications calling -the Db::del or -Db.delete -methods on Queue or Recno -databases, and handling the DB_KEYEMPTY exception specially, -should be modified to check for a return value of DB_KEYEMPTY -instead.

    +the Db::del or Db.delete methods on Queue or Recno databases, +and handling the DB_KEYEMPTY exception specially, should be +modified to check for a return value of DB_KEYEMPTY instead.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/disk.html b/db/docs/ref/upgrade.4.2/disk.html index 294cf4a66..7eb6f868c 100644 --- a/db/docs/ref/upgrade.4.2/disk.html +++ b/db/docs/ref/upgrade.4.2/disk.html @@ -1,17 +1,17 @@ - - + + Berkeley DB Reference Guide: Release 4.2: upgrade requirements - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext +PrevRefNext

    Release 4.2: upgrade requirements

    @@ -19,8 +19,8 @@ formats changed in the Berkeley DB 4.2 release.

    For further information on upgrading Berkeley DB installations, see Upgrading Berkeley DB installations.

    -

    PrevRefNext +

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/intro.html b/db/docs/ref/upgrade.4.2/intro.html index 21b538105..1653dc8fb 100644 --- a/db/docs/ref/upgrade.4.2/intro.html +++ b/db/docs/ref/upgrade.4.2/intro.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 4.2: introduction - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -22,6 +21,6 @@ This information does not describe how to upgrade Berkeley DB 1.85 release applications.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/java.html b/db/docs/ref/upgrade.4.2/java.html index 38a6a83fc..623545630 100644 --- a/db/docs/ref/upgrade.4.2/java.html +++ b/db/docs/ref/upgrade.4.2/java.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 4.2: Java - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -50,14 +49,11 @@ deploy to a version 1.1 or 1.0 Java environment, it may be possible to do so by not including the classes in the com.sleepycat.bdb package in the Java build process (however, that workaround has not been tested by Sleepycat Software).

    -

    A few inconsistent methods have been cleaned up (for example, -Db.close - now returns void; previously, -it returned an int -which was always zero). The synchronized attributed has been toggled -on some methods -- this is an attempt to prevent multithreaded -applications from calling close or similar methods concurrently from -multiple threads.

    +

    A few inconsistent methods have been cleaned up (for example, Db.close +now returns void; previously, it returned an int which was always zero). +The synchronized attributed has been toggled on some methods -- this is +an attempt to prevent multithreaded applications from calling close or +similar methods concurrently from multiple threads.

    The Berkeley DB API has up until now been consistent across all language APIs. Although consistency has is benefits, it made our Java API look strange to Java programmers. Many methods have been renamed in this release of the @@ -95,6 +91,6 @@ collections style access layer (com.sleepycat.bdb) and the now relocated XA system (com.sleepycat.xa).


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/lockng.html b/db/docs/ref/upgrade.4.2/lockng.html index ab78113f5..de2beaa61 100644 --- a/db/docs/ref/upgrade.4.2/lockng.html +++ b/db/docs/ref/upgrade.4.2/lockng.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 4.2: DB_LOCK_NOTGRANTED - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -46,6 +45,6 @@ can configure database operation methods to return done.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/nosync.html b/db/docs/ref/upgrade.4.2/nosync.html index f4cc53206..28433441b 100644 --- a/db/docs/ref/upgrade.4.2/nosync.html +++ b/db/docs/ref/upgrade.4.2/nosync.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 4.2: Client replication environments - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -32,6 +31,6 @@ will increase their performance. Regardless of the setting of the transaction prepare.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/priority.html b/db/docs/ref/upgrade.4.2/priority.html index 261c35b81..a68c4e9b1 100644 --- a/db/docs/ref/upgrade.4.2/priority.html +++ b/db/docs/ref/upgrade.4.2/priority.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 4.2: DB->set_cache_priority - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -26,6 +25,6 @@ arguments and behaves identically to the old call, except that a DB database handle.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/queue.html b/db/docs/ref/upgrade.4.2/queue.html index 4ee29e6bc..62b262ec0 100644 --- a/db/docs/ref/upgrade.4.2/queue.html +++ b/db/docs/ref/upgrade.4.2/queue.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 4.2: Queue access method - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -31,6 +30,6 @@ where extent files were configured along with either encryption or checksums.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/repinit.html b/db/docs/ref/upgrade.4.2/repinit.html index 8a857a8a4..5f5b4eb1d 100644 --- a/db/docs/ref/upgrade.4.2/repinit.html +++ b/db/docs/ref/upgrade.4.2/repinit.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 4.2: Replication - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -41,6 +40,6 @@ number (LSN) associated with those return values. The new argument is DB_REP_NOTPERM. See Transactional guarantees for more information.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/tcl.html b/db/docs/ref/upgrade.4.2/tcl.html index df24f7cd2..e3ebbd93d 100644 --- a/db/docs/ref/upgrade.4.2/tcl.html +++ b/db/docs/ref/upgrade.4.2/tcl.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Release 4.2: Tcl API - + @@ -19,6 +19,6 @@ or later.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/toc.html b/db/docs/ref/upgrade.4.2/toc.html index 33ecb67b0..225ce61f1 100644 --- a/db/docs/ref/upgrade.4.2/toc.html +++ b/db/docs/ref/upgrade.4.2/toc.html @@ -1,14 +1,15 @@ - - + + Berkeley DB Reference Guide: Upgrading Berkeley DB 4.1.X applications to Berkeley DB 4.2 - + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    Ref @@ -32,6 +33,6 @@

    Ref
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.2/verify.html b/db/docs/ref/upgrade.4.2/verify.html index b516b2682..ae6412231 100644 --- a/db/docs/ref/upgrade.4.2/verify.html +++ b/db/docs/ref/upgrade.4.2/verify.html @@ -1,15 +1,14 @@ - - + + Berkeley DB Reference Guide: Release 4.2: DB->verify - + -

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext @@ -29,6 +28,6 @@ updated to make no further use of any kind of the DB->verify returns.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade.4.3/cput.html b/db/docs/ref/upgrade.4.3/cput.html new file mode 100644 index 000000000..dcc412235 --- /dev/null +++ b/db/docs/ref/upgrade.4.3/cput.html @@ -0,0 +1,26 @@ + + + + + + +Berkeley DB Reference Guide: Release 4.3: DBcursor->c_put + + + + + + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext +
    +

    +

    Release 4.3: DBcursor->c_put

    +

    The 4.3 release disallows the DB_CURRENT flag to the DBcursor->c_put method +after the current item referenced by the cursor has been deleted. Applications +using this sequence of operations should be changed to do the put without first +deleting the item.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/upgrade.4.3/disk.html b/db/docs/ref/upgrade.4.3/disk.html new file mode 100644 index 000000000..7935b1808 --- /dev/null +++ b/db/docs/ref/upgrade.4.3/disk.html @@ -0,0 +1,26 @@ + + + + + + +Berkeley DB Reference Guide: Release 4.3: upgrade requirements + + + + + + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext +
    +

    +

    Release 4.3: upgrade requirements

    +

    The log file format changed in the Berkeley DB 4.3 release. No database +formats changed in the Berkeley DB 4.3 release.

    +

    For further information on upgrading Berkeley DB installations, see +Upgrading Berkeley DB installations.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/upgrade.4.3/enomem.html b/db/docs/ref/upgrade.4.3/enomem.html new file mode 100644 index 000000000..a7cc776d0 --- /dev/null +++ b/db/docs/ref/upgrade.4.3/enomem.html @@ -0,0 +1,43 @@ + + + + + + +Berkeley DB Reference Guide: Release 4.3: ENOMEM and DbMemoryException + + + + + + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext +
    +

    +

    Release 4.3: ENOMEM and DbMemoryException

    +

    In versions of Berkeley DB before 4.3, the error ENOMEM was used to +indicate that the buffer in a DBT configured with +DB_DBT_USERMEM was too small to hold a key or data item being +retrieved. The 4.3 release adds a new error, DB_BUFFER_SMALL, +that is returned in this case.

    +

    The reason for the change is that the use of ENOMEM was +ambiguous: calls such as DB->get or DBcursor->c_get could return +ENOMEM either if a DBT was too small or if some resource +was exhausted.

    +

    The result is that starting with the 4.3 release, C applications should +always treat ENOMEM as a fatal error. Code that checked for +the ENOMEM return and allocated a new buffer should be changed +to check for DB_BUFFER_SMALL.

    +

    In C++ applications configured for exceptions, a +DbMemoryException will continue to be thrown in both cases, +and applications should check the errno in the exception to determine +which error occurred.

    +

    In Java applications, a DbMemoryException will be thrown +when a Dbt is too small to hold a return value, and an +OutOfMemoryError will be thrown in all cases of resource +exhaustion.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/upgrade.4.3/err.html b/db/docs/ref/upgrade.4.3/err.html new file mode 100644 index 000000000..6fc668d1b --- /dev/null +++ b/db/docs/ref/upgrade.4.3/err.html @@ -0,0 +1,33 @@ + + + + + + +Berkeley DB Reference Guide: Release 4.3: DB_ENV->set_errcall, DB->set_errcall + + + + + + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext +
    +

    +

    Release 4.3: DB_ENV->set_errcall, DB->set_errcall

    +

    The signature of the error callback passed to the +DB_ENV->set_errcall and DB->set_errcall methods has changed in +the 4.3 release. For example, if you previously had a function such as +this:

    +
    void handle_db_error(const char *prefix, char *message);
    +

    it should be changed to this:

    +
    void handle_db_error(const DB_ENV *dbenv,
    +    const char *prefix, const char *message);
    +

    This change adds the DB_ENV handle to provide database +environment context for the callback function, and incidentally makes +it clear the message parameter cannot be changed by the callback.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/upgrade.4.3/fileopen.html b/db/docs/ref/upgrade.4.3/fileopen.html new file mode 100644 index 000000000..a4d1b0b45 --- /dev/null +++ b/db/docs/ref/upgrade.4.3/fileopen.html @@ -0,0 +1,24 @@ + + + + + + +Berkeley DB Reference Guide: Release 4.3: DB_FILEOPEN + + + + + + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext +
    +

    +

    Release 4.3: DB_FILEOPEN

    +

    The 4.3 release removes the DB_FILEOPEN error return. Any application +check for the DB_FILEOPEN error should be removed.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/upgrade.4.3/intro.html b/db/docs/ref/upgrade.4.3/intro.html new file mode 100644 index 000000000..2980c70df --- /dev/null +++ b/db/docs/ref/upgrade.4.3/intro.html @@ -0,0 +1,26 @@ + + + + + + +Berkeley DB Reference Guide: Release 4.3: introduction + + + + + + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext +
    +

    +

    Release 4.3: introduction

    +

    The following pages describe how to upgrade applications coded against +the Berkeley DB 4.2 release interfaces to the Berkeley DB 4.3 release interfaces. +This information does not describe how to upgrade Berkeley DB 1.85 release +applications.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/upgrade.4.3/java.html b/db/docs/ref/upgrade.4.3/java.html new file mode 100644 index 000000000..9a6b51501 --- /dev/null +++ b/db/docs/ref/upgrade.4.3/java.html @@ -0,0 +1,63 @@ + + + + + + +Berkeley DB Reference Guide: Release 4.3: Java + + + + + + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext +
    +

    +

    Release 4.3: Java

    +

    The Berkeley DB Java API has changed significantly in the 4.3 release, in ways +incompatible with previous releases. This has been done to provide a +consistent Java-like API for Berkeley DB as well as to make the Berkeley DB Java API +match the API in Berkeley DB Java Edition, to ease application-porting between +the two libraries.

    +

    Here is a summary of the major changes:

    +
      +

    1. The low-level wrapper around the C API has been moved into a package +called com.sleepycat.db.internal. +

    2. There is a new public API in the package com.sleepycat.db. +

    3. All flags and error numbers have been eliminated from the public API. +All configuration is done through method calls on configuration objects. +

    4. All classes and methods are named to Java standards, matching Berkeley DB Java +Edition. For example: +

        +
      • Db -> Database +
      • Dbc -> Cursor +
      • Dbt -> DatabaseEntry +
      • DbEnv -> Environment +
      • DbTxn -> Transaction +
      • Db.cursor -> Database.openCursor +
      • Dbc.get(..., DbConstants.DB_CURRENT) -> Cursor.getCurrent(...) +
      +

    5. The statistics classes have "getter" methods for all fields. +

    6. In transactional applications, the Java API infers whether to +auto-commit operations: if an update is performed on a transactional +database without supplying a transaction, it is implicitly +auto-committed. +

    7. The com.sleepycat.bdb.* packages have been reorganized so that the binding +classes can be used with the base API in the com.sleepycat.db package. The +bind and collection classes are now essentially the same in Berkeley DB and Berkeley DB +Java Edition. The former com.sleepycat.bdb.bind.* packages are now the +com.sleepycat.bind.* packages. The former com.sleepycat.bdb, +com.sleepycat.bdb.collections, and com.sleepycat.bdb.factory packages are now +combined in the new com.sleepycat.collections package. +

    8. A layer of the former collections API has been removed to simplify the API and +to remove the redundant implementation of secondary indices. The former +DataStore, DataIndex, and ForeignKeyIndex classes have been removed. Instead +of wrapping a Database in a DataStore or DataIndex, the Database object is now +passed directly to the constructor of a StoredMap, StoredList, etc. +
    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/upgrade.4.3/log.html b/db/docs/ref/upgrade.4.3/log.html new file mode 100644 index 000000000..84312efa9 --- /dev/null +++ b/db/docs/ref/upgrade.4.3/log.html @@ -0,0 +1,33 @@ + + + + + + +Berkeley DB Reference Guide: Release 4.3: Logging + + + + + + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext +
    +

    +

    Release 4.3: Logging

    +

    In previous releases, the DB_ENV->set_flags method flag +DB_TXN_NOT_DURABLE specified that transactions for the entire database +environment were not durable. However, it was not possible to set this +flag in environments that were part of replication groups, and physical +log files were still created. The 4.3 release adds support for true +in-memory logging for both replication and non-replicated sites.

    +

    Existing applications setting the DB_TXN_NOT_DURABLE flag for database +environments should be upgraded to set the DB_LOG_INMEMORY flag +instead.

    +

    In previous releases, log buffer sizes were restricted to be less than +or equal to the log file size; this restriction is no longer required.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/upgrade.4.3/repl.html b/db/docs/ref/upgrade.4.3/repl.html new file mode 100644 index 000000000..706c001f6 --- /dev/null +++ b/db/docs/ref/upgrade.4.3/repl.html @@ -0,0 +1,40 @@ + + + + + + +Berkeley DB Reference Guide: Release 4.3: Replication + + + + + + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext +
    +

    +

    Release 4.3: Replication

    +

    The 4.3 release removes support for logs-only replication clients. Use +of the DB_REP_LOGSONLY flag to the DB_ENV->rep_start should be replaced +with the DB_REP_CLIENT flag.

    +

    The 4.3 release adds two new arguments to the DB_ENV->rep_elect method, +nvotes and flags. The nvotes argument sets the +required number of replication group members that must participate in +an election in order for a master to be declared. For backward +compatibility, set the nvotes argument to 0. The flags argument +is currently unused and should be set to 0. See DB_ENV->rep_elect method or +"Replication Elections" for more information.

    +

    In the 4.3 release it is no longer necessary to do a database +environment hot backup to initialize a replication client. All that is +needed now is for the client to join the replication group. Berkeley DB will +perform an internal backup from the master to the client automatically +and will run recovery on the client to bring it up to date with the +master. For this reason, the DB_REP_OUTDATED error return from the +DB_ENV->rep_process_message method is no longer needed, and applications should remove +any checking done for that error return.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/upgrade.4.3/rtc.html b/db/docs/ref/upgrade.4.3/rtc.html new file mode 100644 index 000000000..1acf1aa17 --- /dev/null +++ b/db/docs/ref/upgrade.4.3/rtc.html @@ -0,0 +1,25 @@ + + + + + + +Berkeley DB Reference Guide: Release 4.3: Run-time configuration + + + + + + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext +
    +

    +

    Release 4.3: Run-time configuration

    +

    The signatures of the db_env_set_func_ftruncate and +db_env_set_func_seek functions have been simplified to take a byte +offset in one parameter rather than a page size and a page number.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/upgrade.4.3/stat.html b/db/docs/ref/upgrade.4.3/stat.html new file mode 100644 index 000000000..315456a79 --- /dev/null +++ b/db/docs/ref/upgrade.4.3/stat.html @@ -0,0 +1,26 @@ + + + + + + +Berkeley DB Reference Guide: Release 4.3: DB_ENV->stat + + + + + + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext +
    +

    +

    Release 4.3: DB_ENV->stat

    +

    The 4.3 release adds transactional support to the DB->stat method.

    +

    Application writers can simply add a NULL txnid argument to the +DB->stat method calls in their application to leave the application's +behavior unchanged.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/upgrade.4.3/toc.html b/db/docs/ref/upgrade.4.3/toc.html new file mode 100644 index 000000000..70e638a72 --- /dev/null +++ b/db/docs/ref/upgrade.4.3/toc.html @@ -0,0 +1,37 @@ + + + + + + +Berkeley DB Reference Guide: Upgrading Berkeley DB 4.2.X applications to Berkeley DB 4.3 + + + + + + + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    Ref +
    +

    +

    Upgrading Berkeley DB 4.2.X applications to Berkeley DB 4.3

    +
      +
    1. Release 4.3: introduction +
    2. Release 4.3: Java +
    3. DB_ENV->set_errcall, DB->set_errcall +
    4. DBcursor->c_put +
    5. Release 4.3: DB->stat +
    6. Release 4.3: DB_ENV->set_verbose +
    7. Release 4.3: Logging +
    8. Release 4.3: DB_FILEOPEN +
    9. Release 4.3: ENOMEM and DbMemoryException +
    10. Release 4.3: Replication +
    11. Release 4.3: Run-time configuration +
    12. Release 4.3: upgrade requirements +
    +

    Ref +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/upgrade.4.3/verb.html b/db/docs/ref/upgrade.4.3/verb.html new file mode 100644 index 000000000..57f555233 --- /dev/null +++ b/db/docs/ref/upgrade.4.3/verb.html @@ -0,0 +1,33 @@ + + + + + + +Berkeley DB Reference Guide: Release 4.3: DB_ENV->set_verbose + + + + + + +

    Berkeley DB Reference Guide:
    Upgrading Berkeley DB Applications

    PrevRefNext +
    +

    +

    Release 4.3: DB_ENV->set_verbose

    +

    The 4.3 release removes support for the DB_ENV->set_verbose method flag +DB_VERB_CHKPOINT. Application writers should simply remove any use of +this flag from their applications.

    +

    The 4.3 release redirects output configured by the DB_ENV->set_verbose method +from the error output channels (see the DB_ENV->set_errfile and +DB_ENV->set_errcall methods for more information) to the new +DB_ENV->set_msgcall and DB_ENV->set_msgfile message output +channels. This change means the error output channels are now only used +for errors, and not for debugging and performance tuning messages as +well as errors. Application writers using DB_ENV->set_verbose +should confirm that output is handled appropriately.

    +

    PrevRefNext +
    +

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. + + diff --git a/db/docs/ref/upgrade/process.html b/db/docs/ref/upgrade/process.html index c5e1bb6b7..86fb50357 100644 --- a/db/docs/ref/upgrade/process.html +++ b/db/docs/ref/upgrade/process.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Upgrading Berkeley DB installations - + @@ -146,6 +146,6 @@ and then re-add all of the clients to the replication group using the standard replication procedures for new sites.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/upgrade/version.html b/db/docs/ref/upgrade/version.html index 3185c2021..7288a05de 100644 --- a/db/docs/ref/upgrade/version.html +++ b/db/docs/ref/upgrade/version.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Library version information - + @@ -42,6 +42,6 @@ information, the db_version function encapsulating the version information, suitable for display to a user.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/xa/build.html b/db/docs/ref/xa/build.html index 12499ff82..ebdece38d 100644 --- a/db/docs/ref/xa/build.html +++ b/db/docs/ref/xa/build.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Building a Global Transaction Manager - + @@ -163,20 +163,20 @@ committing state. For each environment, the GTM should issue a can determine the fate of each transaction. The correct behavior is defined depending on the state of the global transaction according to the table below.

    -

    -

    preparing
    if all participating environments return the transaction in the prepared +
    +
    preparing
    if all participating environments return the transaction in the prepared but not yet committed/aborted state, then the GTM should commit the transaction. If any participating environment fails to return it, then the GTM should issue an abort to all environments that did return it. -

    committing
    the GTM should send a commit to any environment that returned this +
    committing
    the GTM should send a commit to any environment that returned this transaction in its list of prepared but not yet committed/aborted transactions. -

    aborting
    the GTM should send an abort to any environment that returned this +
    aborting
    the GTM should send an abort to any environment that returned this transaction in its list of prepared but not yet committed/aborted transactions.

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/xa/faq.html b/db/docs/ref/xa/faq.html index 614f2256c..7def07238 100644 --- a/db/docs/ref/xa/faq.html +++ b/db/docs/ref/xa/faq.html @@ -1,12 +1,12 @@ - - + + Berkeley DB Reference Guide: XA FAQ - + @@ -61,6 +61,6 @@ should occur independently of XA operation.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/xa/intro.html b/db/docs/ref/xa/intro.html index 338c13a56..c1938b0d5 100644 --- a/db/docs/ref/xa/intro.html +++ b/db/docs/ref/xa/intro.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Introduction - + @@ -48,6 +48,6 @@ transactions, the logs may be copied for backup purposes and the backup will be consistent across the multiple environments.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/xa/xa_config.html b/db/docs/ref/xa/xa_config.html index 4e2368181..ec850fb8c 100644 --- a/db/docs/ref/xa/xa_config.html +++ b/db/docs/ref/xa/xa_config.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: Configuring Berkeley DB with the Tuxedo System - + @@ -75,6 +75,6 @@ resource manager.

    using XA.


    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. diff --git a/db/docs/ref/xa/xa_intro.html b/db/docs/ref/xa/xa_intro.html index 60f526420..b8375b0ea 100644 --- a/db/docs/ref/xa/xa_intro.html +++ b/db/docs/ref/xa/xa_intro.html @@ -1,12 +1,12 @@ - + Berkeley DB Reference Guide: XA Introduction - + @@ -57,6 +57,6 @@ X/Open Document Number: XO/CAE/91/300. by Andrade, Carges, Dwyer and Felts (Addison Wesley Longman).

    PrevRefNext
    -

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

    Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved. -- cgit v1.2.3