History log of /src/lib/libc/db/hash/hash_page.c |
Revision | | Date | Author | Comments |
1.29 |
| 24-Sep-2016 |
christos | When writing out pages in the "other endian" format, make a copy instead of trashing the in-memory one.
|
1.28 |
| 18-Nov-2015 |
christos | branches: 1.28.2; Introduce a HASH_BSIZE macro to return the blocksize; in the 64K case this returns 0xffff to avoid overflow. This is used where sizes are stored.
|
1.27 |
| 18-Nov-2015 |
christos | If MAX_BSIZE == hashp->BSIZE (65536) then it does not fit in a short, and we end up storing 0... This means that every entry needs a page. We store MAX_BSIZE - 1 here, but it would be better to always store (avail - 1) here so that we don't waste a byte and be consistent.
|
1.26 |
| 01-Dec-2013 |
christos | branches: 1.26.4; - centralize opening of regular and temp files to avoid code duplication - don't cast malloc - use malloc sizeof(*var) instead of sizeof(type)
|
1.25 |
| 13-Mar-2012 |
christos | branches: 1.25.2; PR/45989: Martin Husemann: lint invocation does include -w only on i386
- turn lint -w for all the platforms after fixing the lint warnings. - add _DIAGASSERTS() for casts that would assign values to types that would not fit. - change types, add casts - change into ansii prototypes - turn on _DIAGNOSTIC for libc (during current, to be eliminated for release builds)
approved by core@
|
1.24 |
| 17-Apr-2011 |
christos | branches: 1.24.4; Correct check for snprintf() overflow via Maksymilian Arciemowicz from FreeBSD. (the bt one was ok, but set errno and make it the same for consistency). [to be pulled up]
|
1.23 |
| 11-Sep-2008 |
joerg | branches: 1.23.4; 1.23.6; 1.23.10; 1.23.14; Consistently include "nbtool_config.h" when cross-compiling.
|
1.22 |
| 10-Sep-2008 |
joerg | In preparation for providing a db fallback in libnbcompat, remove sccsid and conditionals around __RCSID. lint understands __RCSID enough to ignore it, undefining LIBC_SCCS is superseded by MKSTRIPIDENT. No functional changes.
|
1.21 |
| 26-Aug-2008 |
joerg | Convert db from UCB types to POSIX types. Prefer uint8_t for u_char as it is mostly about the wire format.
Patched libc.so is bit-identical.
OK matt@
|
1.20 |
| 03-Feb-2007 |
christos | branches: 1.20.12; cleanup: - remove __P - remove unneeded casts - add _DIAGASSERT - add more diagnostics for integer overflow - fix size_t/int confusion - make debugging and statistics code compile
|
1.19 |
| 03-Nov-2006 |
christos | branches: 1.19.2; use FD_CLOEXEC instead of 1.
|
1.18 |
| 26-Mar-2006 |
rtr | make __hash_open obey TMPDIR
resolves pr32565 and pr32454
|
1.17 |
| 24-Jan-2006 |
christos | simplify assertion.
|
1.16 |
| 07-Aug-2003 |
agc | Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22280, verified by myself.
|
1.15 |
| 29-Jul-1999 |
mycroft | Only squeeze a short key/value pair onto a page with other complete key/value pairs, not onto a page containing the end of a big pair.
|
1.14 |
| 29-Jul-1999 |
mycroft | Return a useful errno value in the overflow case. Also, print a message to stderr in one more case.
|
1.13 |
| 09-Dec-1998 |
christos | delint
|
1.12 |
| 14-Oct-1998 |
kleink | Need "namespace.h".
|
1.11 |
| 26-Jul-1998 |
mycroft | Reinitialize the mkstemp() template each time it's used.
|
1.10 |
| 30-Jun-1998 |
thorpej | Use pread(2) and pwrite(2) where appropriate.
|
1.9 |
| 13-Jul-1997 |
christos | Fix RCSID's Fix gcc warnings.
|
1.8 |
| 03-May-1996 |
cgd | merge DB 1.85 changes
|
1.7 |
| 27-Feb-1995 |
cgd | add unintrusive Ids
|
1.6 |
| 18-Aug-1994 |
cgd | branches: 1.6.2; 1.6.4; clean up import
|
1.5 |
| 17-Sep-1993 |
cgd | get rid of extraneous include of machine/endian.h now that it's included by sys/types.h
|
1.4 |
| 09-Sep-1993 |
cgd | upgrade new DB code to version 1.7
|
1.3 |
| 26-Aug-1993 |
jtc | Declare rcsid strings so they are stored in text segment.
|
1.2 |
| 01-Aug-1993 |
mycroft | Add RCS identifiers.
|
1.1 |
| 14-Jun-1993 |
cgd | branches: 1.1.1; update db code to v1.6 from vangogh, and put it in "db" rather than "DB"
|
1.1.1.2 |
| 03-May-1996 |
cgd | Import of Berkeley DB version 1.85
|
1.1.1.1 |
| 17-Aug-1994 |
cgd | update to db 1.79
|
1.6.4.1 |
| 02-May-1995 |
jtc | #include "namespace.h"
|
1.6.2.2 |
| 18-Aug-1994 |
cgd | clean up import
|
1.6.2.1 |
| 18-Aug-1994 |
cgd | file hash_page.c was added on branch netbsd-1-0 on 1994-08-18 00:41:09 +0000
|
1.19.2.1 |
| 08-May-2011 |
bouyer | Pull up following revision(s) (requested by christos in ticket #1428): lib/libc/db/hash/hash_page.c: revision 1.24 lib/libc/db/btree/bt_open.c: revision 1.25 Correct check for snprintf() overflow via Maksymilian Arciemowicz from FreeBSD. (the bt one was ok, but set errno and make it the same for consistency). [to be pulled up]
|
1.20.12.2 |
| 24-Sep-2008 |
wrstuden | Merge in changes between wrstuden-revivesa-base-2 and wrstuden-revivesa-base-3.
|
1.20.12.1 |
| 18-Sep-2008 |
wrstuden | Sync with wrstuden-revivesa-base-2.
|
1.23.14.1 |
| 19-May-2011 |
bouyer | Pull up following revision(s) (requested by christos in ticket #1602): lib/libc/db/hash/hash_page.c: revision 1.24 lib/libc/db/btree/bt_open.c: revision 1.25 Correct check for snprintf() overflow via Maksymilian Arciemowicz from FreeBSD. (the bt one was ok, but set errno and make it the same for consistency). [to be pulled up]
|
1.23.10.1 |
| 19-May-2011 |
bouyer | Pull up following revision(s) (requested by christos in ticket #1602): lib/libc/db/hash/hash_page.c: revision 1.24 lib/libc/db/btree/bt_open.c: revision 1.25 Correct check for snprintf() overflow via Maksymilian Arciemowicz from FreeBSD. (the bt one was ok, but set errno and make it the same for consistency). [to be pulled up]
|
1.23.6.2 |
| 11-Sep-2008 |
joerg | Consistently include "nbtool_config.h" when cross-compiling.
|
1.23.6.1 |
| 11-Sep-2008 |
joerg | file hash_page.c was added on branch christos-time_t on 2008-09-11 12:58:01 +0000
|
1.23.4.1 |
| 19-May-2011 |
bouyer | Pull up following revision(s) (requested by christos in ticket #1602): lib/libc/db/hash/hash_page.c: revision 1.24 lib/libc/db/btree/bt_open.c: revision 1.25 Correct check for snprintf() overflow via Maksymilian Arciemowicz from FreeBSD. (the bt one was ok, but set errno and make it the same for consistency). [to be pulled up]
|
1.24.4.2 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.24.4.1 |
| 17-Apr-2012 |
yamt | sync with head
|
1.25.2.1 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.26.4.1 |
| 22-Nov-2015 |
bouyer | Pull up following revision(s) (requested by christos in ticket #1046): lib/libc/db/hash/hash_page.c: revision 1.27 lib/libc/db/hash/hash_page.c: revision 1.28 lib/libc/db/hash/hash.h: revision 1.16 lib/libc/db/hash/hash.c: revision 1.36 lib/libc/db/hash/hash.c: revision 1.37 lib/libc/db/hash/hash.c: revision 1.38 lib/libc/db/hash/hash_bigkey.c: revision 1.25 Account for the -1 hack to fit 0x10000 in a short in hash_page.c Introduce a HASH_BSIZE macro to return the blocksize; in the 64K case this returns 0xffff to avoid overflow. This is used where sizes are stored. If MAX_BSIZE == hashp->BSIZE (65536) then it does not fit in a short, and we end up storing 0... This means that every entry needs a page. We store MAX_BSIZE - 1 here, but it would be better to always store (avail - 1) here so that we don't waste a byte and be consistent. PR/50441: Manuel Bouyer: hash seq enumeration skips keys on big data. XXX: pullup-7
|
1.28.2.1 |
| 04-Nov-2016 |
pgoyette | Sync with HEAD
|