]> git.ozlabs.org Git - ccan/commit
tdb2: hash chaining
authorRusty Russell <rusty@rustcorp.com.au>
Wed, 1 Dec 2010 13:13:37 +0000 (23:43 +1030)
committerRusty Russell <rusty@rustcorp.com.au>
Wed, 1 Dec 2010 13:13:37 +0000 (23:43 +1030)
commit2523e67f154c3f8614a2ddca2cd0170d321a27d4
tree5ab7bc275035b4330b8d349eeaab70d68adaafc9
parent539f1af037858b905c50c560f2a608555d8457ff
tdb2: hash chaining

If we get enough hash collisions, we can run out of hash bits; this almost
certainly is caused by a deliberate attempt to break the tdb (hash bombing).

Implement chained records for this case; they're slow but will keep the
rest of the database functioning.
ccan/tdb2/check.c
ccan/tdb2/hash.c
ccan/tdb2/private.h
ccan/tdb2/summary.c
ccan/tdb2/tdb2.h
ccan/tdb2/test/run-25-hashoverload.c [new file with mode: 0644]
ccan/tdb2/test/run-traverse.c
ccan/tdb2/tools/speed.c