2002-08-28  Tom Yu  <tlyu@mit.edu>

	* btree/bt_split.c (bt_psplit): Correctly account for
	sizeof(indx_t) when computing space used in a page by an item.
	[patch from www.sleepycat.com]
	[pullup from trunk]

2002-08-26  Tom Yu  <tlyu@mit.edu>

	* Makefile.in (LIBMINOR): Bump due to addition of bt_rseq().

	* hash/hash_debug.c: Remove inclusion of compat.h, as we don't
	have it in our build system.

	* btree/extern.h: Add missing prototypes/renames for
	__bt_dmpage().  Add renames for bt_rseq() support functions.

	* btree/bt_seq.c (bt_rseq): New function; like __bt_seq() but does
	recursive descent rather than using the prev/next pointers.  This
	will catch some pages that might be missed if the database is
	inconsistent.  Added support functions for bt_rseq() as well.

	* btree/bt_page.c (__bt_free): Set B_METADIRTY when updating free
	list.
	(__bt_new): Set B_METADIRTY when updating free list.
	[patch from www.sleepycat.com]

	* btree/bt_debug.c (__bt_dump): Bound loop by number of pages
	actually in file to avoid getting a nigh-infinite number of
	all-zeroes pages.
	(__bt_dmpage): Print a newline after dumping the meta page.
	(__bt_dpage): Add DB* parameter; use this to get pagesize in order
	to limit dumping of page contents, in case NEXTINDEX(h) happens to
	be bogus.
	(__bt_stat): Bound loop by number of pages actually in file so as
	to stop counting pages after the actual end of file.

	* btree/bt_close.c (__bt_sync): Apply a Kerbnet fix from long ago;
	don't return prematurely when B_METADIRTY is set but B_MODIFIED is
	clear.

	[pullups from trunk]

2000-05-01  Nalin Dahyabhai  <nalin@redhat.com>

	* hash/dbm.c (kdb2_dbm_open): Don't overflow buffer "path".

1999-08-15  Tom Yu  <tlyu@mit.edu>

	* README.NOT.SLEEPYCAT.DB: New file; pointer to README to
	hopefully unconfuse people.

	* README: Add notice to the effect that this is not Berkeley or
	Sleepycat DB.

	* README.db2: Renamed from README.

Fri Feb 13 14:37:47 1998  Tom Yu  <tlyu@mit.edu>

	* recno/extern.h: Additional renaming.

	* hash/extern.h: Additional renaming.

	* hash/hash_page.c (page_to_oaddr): 
	(is_bitmap_pgno): Declare static to avoid leaking symbols.

	* hash/search.h: Additional renaming.

	* hash/hash_log2.c (__log2): Rename explicitly.

	* mpool/mpool.h: Additional renaming.

	* btree/extern.h: Additional renaming.

	* hash/hash.c (__kdb2_hash_open): Rename to avoid potential
 	collision with NetBSD libc.

	* hash/dbm.c: Rename lots of functions to avoid colliding with
	native dbm implementations.

	* db/db.c (kdb2_dbopen): Rename to avoid colliding with NetBSD
	libc.

Wed Jan 21 10:17:34 1998  Ezra Peisach  <epeisach@mit.edu>

	* btree/bt_open.c: Added O_BINARY for __CYGWIN32__.
	* clib/mkstemp.c: Added O_BINARY for __CYGWIN32__.
	* db/db.c: Added O_BINARY for __CYGWIN32__.
	* hash/dbm.c: Added O_BINARY for __CYGWIN32__.
	* hash/hash.c: Added O_BINARY for __CYGWIN32__.
	* hash/hsearch.c: Added O_BINARY for __CYGWIN32__.
	* include/db-int.h: Added O_BINARY for __CYGWIN32__.
	* recno/rec_open.c: Added O_BINARY for __CYGWIN32__.
	* test/dbtest.c: Added O_BINARY for __CYGWIN32__.
	* test/SEQ_TEST/t.c: Added O_BINARY for __CYGWIN32__.
	* test/btree.tests/main.c: Added O_BINARY for __CYGWIN32__.
	* test/hash1.tests/driver2.c: Added O_BINARY for __CYGWIN32__.
	* test/hash1.tests/tcreat3.c: Added O_BINARY for __CYGWIN32__.
	* test/hash1.tests/tdel.c: Added O_BINARY for __CYGWIN32__.
	* test/hash1.tests/thash4.c: Added O_BINARY for __CYGWIN32__.
	* test/hash1.tests/tread2.c: Added O_BINARY for __CYGWIN32__.
	* test/hash1.tests/tseq.c: Added O_BINARY for __CYGWIN32__.
	* test/hash1.tests/tverify.c: Added O_BINARY for __CYGWIN32__.
	* test/hash2.tests/bigtest.c: Added O_BINARY for __CYGWIN32__.
	* test/hash2.tests/passtest.c: Added O_BINARY for __CYGWIN32__.
	Changes originally by Jeremy Allison (jra@cygnus.com)

Thu Jan 15 11:34:13 1998  Ezra Peisach  <epeisach@mit.edu>

	* hash/hash_bigkey.c (collect_key, collect_data): Cast malloc
	return value to correct types. (raeburn@cygnus.com)

	* obj/Makefile.in (check): Set srcdir in environment.
	(raeburn@cygnus.com)

	* configure.in (AC_COMPILE_TYPE): replacment for AC_CHECK_TYPE
	that uses AC_TRY_COMPILE instead of AC_EGREP_CPP.  For now, only
	use it for the int32 types (where AC_CHECK_TYPE gets the wrong
	result on __CYGWIN32__) and plan that AC_CHECK_TYPE itself gets
	repaired. (Fix by eichin@cygnus.com)


Sun Dec 21 18:33:14 1997  Tom Yu  <tlyu@mit.edu>

	* hash/dbm.c: Rename the errno member of HTAB.

	* hash/hash.h: Rename the errno member of HTAB to local_errno to
	avoid a collision with a glibc macro.

	* hash/hash.c: Rename the errno member of HTAB to local_errno to
	avoid a collision with a glibc macro.

Mon Nov 11 17:01:29 1996  Mark Eichin  <eichin@cygnus.com>

	* db2: overflow_page fixes, __P redef
	* db2 tests: better alternate dictionary support

	Tue Oct  8 22:55:01 1996  Mark W. Eichin  <eichin@cygnus.com>

	* hash/hash.h (DEF_BUCKET_SIZE, DEF_SEGSIZE): now derived from
 	DEF_BUCKET_SHIFT and DEF_SEGSIZE_SHIFT respectively, for
	consistency.

	Tue Oct  8 22:43:26 1996  Mark W. Eichin  <eichin@cygnus.com>

	* hash/hash_page.c (__add_ovflpage, __add_bigpage): overflow_page
 	can return a 0 indicating a failure -- callers must check it
	instead of corrupting the database.
	(overflow_page): document apparent error return.

	Fri Aug 30 20:05:57 1996  Ken Raeburn  <raeburn@cygnus.com>

	* test/dictionary: New file, list of garbage words.
	* test/run.test (main): Use it if no other dictionary can be
	found.  Set dictsize with size of dictionary.
	(test12, test20): Skip if dictionary is too small.

Wed Aug 28 17:25:10 1996  Tom Yu  <tlyu@mit.edu>

	* configure.in: Add check for SIZEOF_INT.

	* include/db.h: Check SIZEOF_INT rather than UINT_MAX; it's broken
		under Ultrix.

Thu Aug 22 23:13:32 1996  Ezra Peisach  <epeisach@mit.edu>

	* Makefile.in: Add dummy rule for Makefiles.

Wed Jul 31 03:35:47 1996  Tom Yu  <tlyu@mit.edu>

	* obj/Makefile.in: Add -Dfoo=my_foo when compiling replacement
		functions (so that the redefinitions in db-int.h take
		effect).

Mon Jul 29 23:24:22 1996  Tom Yu  <tlyu@mit.edu>

	* hash/hash.c, hash/hash_func.c, hash/hash_page.c: Add "static" to
 		some function defn's that need them; they were prototyped
 		as static but not defined as static.

Fri Jul 26 00:41:45 1996  Theodore Y. Ts'o  <tytso@mit.edu>

	* Makefile.in (install): Add a blank install target to keep the
		top-level "make install" happy.

Tue Jul 23 16:08:43 1996  Ezra Peisach  <epeisach@mit.edu>

	* hash/dbm.c: Copy elements from the datum to an internal
	DBT. Handles case of differences in size of size fields.

Fri Jun 21 00:07:57 1996  Marc Horowitz  <marc@mit.edu>

	* hash/dbm.c (delete, store): dbm_rdonly() doesn't exist on some
 	systems.  In addition, the handle is really a DB handle, so it
 	would break if it did exist.  Remove calls to it.

Wed Apr 10 21:39:54 1996  Marc Horowitz  <marc@mit.edu>

	* hash/hash_page.c (__addel): It is possible to damage a page if a
 	bigpair is added and there's not enough room.  Check to make sure
	there's enough room before adding anything.

	* hash/hash.c (hdestroy, cursor_delete): there were still a few
 	things in the hashp which weren't being freed, causing a small
 	memory leak.

Sun Apr  7 01:40:54 1996  Marc Horowitz  <marc@mit.edu>

	* clib/mk{,s}temp.c: renamed to accurately reflect the function
        being provided (ultrix 4.2 has one, but not the other).

	* [way too many files to list here]: rename pgno_t to db_pgno_t,
        since this symbol is defined in <sys/types> on at least one OS to
        a non-compatible type (irix 5.2 defines it as long; db wants it to
        be u_int32_t).

	* hash/dbm.c, include/db-ndbm.h: use and reference the compat
        ndbm.h file

	* btree/bt_open.c, hash/hash.c, hash/hash_page.c,
        include/db-int.h, include/db.h: build fixes - use configure to set
        db internal cpp symbols for endianness stuff, move __P definition
        from db-int.h to db.h.

	* configure.in, acconfig.h, Makefile.in, obj/configure.in,
        obj/acconfig.in, obj/Makefile.in: rearrange the configure inputs
        to deal properly with configure at the top level, and with a
        multiarchitecture build using VPATH

Sat Apr  6 16:43:26 1996  Marc Horowitz  <marc@mit.edu>

	* obj/Makefile.in: random cleanup

	* btree/*.c db/db.c hash/*.c mpool/mpool.c recno/*.c
        test/SEQ_TEST/t.c test/dbtest.c test/*/*.c: use "db-int.h" instead
        of "db.h".

	* include/db.h, include/db-int.h: rototilled to be portable and
        sensible, using configure whenever possible.

	* btree/*.c db/db.c hash/*.c mpool/mpool.c recno/*.c
        test/SEQ_TEST/t.c test/dbtest.c test/*/*.c: use "db.h" instead of
        <db.h>.

	* hash/hash.h, btree/btree.h, mpool/mpool.c: #include "mpool.h"
        instead of <mpool.h>.

	* test/hash1.tests/thash4.c: remove unused and nonportable
        <sys/timeb.h>

	* test/hash2.tests/bigtest.c: replace <malloc.h> with <stdlib.h>

	* clib/memmove.c: remove <sys/cdefs.h>

	* mpool/mpool.c, mpool/mpool.h, hash/hash.h, include/db-queue.h:
        include "db-queue.h" instead of <sys/queue.h>, since it's not part
        of any OS standard.

	* obj/*: first attempt at autoconfiscation

	* test/hash1.tests/driver2.c (main), test/hash1.tests/tseq.c
        (main): replace berkeley memoryisms with ansi ones.

	* btree/bt_open.c (tmp): use sprintf instead of snprintf().
	conditionalize signal stuff on SIG_BLOCK instead of using special
	magic in a header file.

