Commit graph

342 commits

Author SHA1 Message Date
Kresten Krab Thorup
923dbe3852 Fix typing for bit array representation
For now we keep the bit array representation code
around in case someone has bloom filters
persisted that use this representation. Going
forward we should remove this from the code.
2012-09-26 15:27:56 +02:00
Kresten Krab Thorup
c439b510f9 Merge branch 'master' of github.com:krestenkrab/hanoidb 2012-09-26 15:12:19 +02:00
Kresten Krab Thorup
0449e442f7 Remove most dialyzer warnings
This is a large change set, which adds type specs
needed for dialyzer to be happy.  We likely
need even more type specs as we move forward.
2012-09-26 15:11:55 +02:00
Kresten Krab Thorup
5ee9ff4a42 Merge pull request #17 from eriksoe/bloom-sparse-representation
Bloom sparse representation
2012-09-25 10:59:37 -07:00
Erik Søe Sørensen
ed65b5a468 Bloom filter: replace array with faster custom representation. 2012-09-25 17:12:10 +02:00
Erik Søe Sørensen
1c6e0df15c Bloom filter: Handle hibernate situation in dense_bitmap. 2012-09-25 15:17:24 +02:00
Erik Søe Sørensen
12148a7af9 Bloom filter: Add faster, ETS-based build representation for dense bitmaps. 2012-09-25 15:05:43 +02:00
Erik Søe Sørensen
d727be2fa7 Bloom filter: remove double-testing introduced in dispatch. 2012-09-25 14:51:45 +02:00
Erik Søe Sørensen
a475b5f5be Bloom filter: Introduce dispatch for handling multiple representations. 2012-09-25 14:28:31 +02:00
Erik Søe Sørensen
5e69a0ca04 Bloom filter: Prepare for having other representations. 2012-09-25 14:15:59 +02:00
Kresten Krab Thorup
4592bc000b Merge pull request #14 from eriksoe/bloom-performance-fix
Bloom filter: Have only one level when using large sparse array.
2012-09-25 04:52:31 -07:00
Erik Søe Sørensen
f978f5652c Bloom filter: Have only one level when using large sparse array. 2012-09-25 12:59:28 +02:00
Kresten Krab Thorup
adab9556db Update contributors 2012-09-25 11:31:27 +02:00
Kresten Krab Thorup
5733075cda Make tests compile with Triq again 2012-09-25 11:31:13 +02:00
Joseph Wayne Norton
4023ecf013 Add spawn_opt option for open and open_link.
Typically used to specify non-default, garbage collection options.
2012-09-25 15:15:37 +09:00
Joseph Wayne Norton
1bbea4b87d Fix case clause error.
This is a fix for commit dce62a8 originally targeted for
https://github.com/krestenkrab/hanoidb/issues/12 where an old file
descriptor is used when storing 2i (transact data) causes the tx log
to roll.
2012-09-25 12:15:54 +09:00
Kresten Krab Thorup
b254a5e345 Remove some compiler warnings
Add type information to the nursery structure
2012-09-24 17:50:08 +02:00
Kresten Krab Thorup
9006ef037f Merge branch 'dev' of git://github.com/norton/hanoidb 2012-09-24 17:43:53 +02:00
Kresten Krab Thorup
857b410fdd Remove bloom from Makefile
Fixes https://github.com/krestenkrab/hanoidb/issues/11
2012-09-24 17:39:50 +02:00
Kresten Krab Thorup
dce62a88a9 Fix invalid error
This fixes https://github.com/krestenkrab/hanoidb/issues/12
where an old file descriptor is used when storing
2i (transact data) causes the tx log to roll.
2012-09-24 17:36:23 +02:00
Joseph Wayne Norton
0be218452a Add open/3, open_link/1-3, and fix some dialyzer warnings 2012-09-24 23:25:42 +09:00
Joseph Wayne Norton
d143637f98 Disable triq and proper depends 2012-09-19 09:34:04 +09:00
Kresten Krab Thorup
1e88c05dbe add contributors section 2012-09-12 12:16:29 +02:00
Kresten Krab Thorup
f34f2c5ec2 Merge pull request #10 from yamt/fixes
Fixes issue with long running range fold 
introduced in f324972cdd
2012-09-12 03:00:24 -07:00
YAMAMOTO Takashi
fb74df8a0b log self() instead of 'self' atom 2012-09-12 12:53:26 +09:00
YAMAMOTO Takashi
8026dcbdd4 fix FoldingPIDs/NextList confusion which makes snapshot_range stuck
the bug was introduced by commit f324972cdd.
2012-09-12 12:49:48 +09:00
Kresten Krab Thorup
72db206905 Fix missing case in lookup_node
Doing range fold on an empty store triggered
this edge case.
2012-09-10 00:23:33 +02:00
Kresten Krab Thorup
19c37eb0a1 Merge branch 'master' of github.com:basho-labs/hanoidb 2012-09-10 00:08:21 +02:00
Kresten Krab Thorup
eab04ff91f Fix 2i/transact w/new expiry code
The new expiry code changed per-entry time stamp
from being the write-time to be the expiry-time.
This change in semantics was not reflected in the
code pertaining to hanoidb:transact, and so all
entries written with 2i would be immediately
expired.
2012-09-10 00:07:38 +02:00
Gregory Burd
504f43ddaf Merge pull request #8 from krestenkrab/master
Fix merge strategy predictable
2012-07-31 13:47:26 -07:00
Kresten Krab Thorup
ef64425af3 Only keep merged < level-size at last level
The previous fix introduced the issue, that we 
might observe a level that never gets merged,
and thus some values may never be evicted.
2012-07-31 21:10:51 +02:00
Kresten Krab Thorup
166a127a43 Fix predictable strategy
In the case where a merge results in an output
file that fits in the current level, we will
normally just leave it here; but with if said
level already has a C-file, then we will not
see enough merge steps to actually finish merging
in time.
2012-07-31 15:24:58 +02:00
Gregory Burd
e59c3d7add Avoid name collisions and do some other minor cleanup. 2012-07-24 16:39:28 -04:00
Gregory Burd
edf083e156 Bump the version 2012-07-24 10:43:04 -04:00
Gregory Burd
f324972cdd Cleanup compiler warnings and remove (for now) the predictable strategy as it has some issues to be worked out. 2012-07-24 10:42:53 -04:00
Gregory Burd
67f8f2afbc Consoladate two 99.9% identical functions into one. 2012-07-24 10:41:37 -04:00
Gregory Burd
38307c657e Ignore some more 2012-07-24 10:40:35 -04:00
Gregory Burd
052e545eea Formatting 2012-07-19 11:47:36 -04:00
Gregory Burd
5b7a0e159c Fix type-o 2012-07-19 11:47:18 -04:00
Gregory Burd
b92e9cb814 Prevent overly aggresive merges and use a specific compression method. 2012-07-18 12:42:14 -04:00
Gregory Burd
1c82b632b7 This will live in the basho_bench repo in a hanoidb branch. 2012-07-18 12:41:25 -04:00
Gregory Burd
3ae16aafa2 Add a basho_bench driver example config. 2012-07-18 07:53:31 -04:00
Gregory Burd
d46fd077ed Eliminate more compiler warnings. 2012-07-17 18:38:59 -04:00
Gregory Burd
8a53ed0cd5 Always write a bloom filter, even when empty, just to avoid over complicating
things. Reuse the incremental merge trigger when closing the nursery file.
2012-07-17 17:00:52 -04:00
Gregory Burd
9d145ecdb1 Minor changes. 2012-07-17 16:57:45 -04:00
Gregory Burd
4e9ddbe65c Minor change 2012-07-17 16:54:51 -04:00
Gregory Burd
ce8982c79c Finished the cleanup and integration of an erlang bloom implementation. 2012-07-12 16:54:15 -04:00
Gregory Burd
95082bd4d3 Formatting 2012-07-12 13:17:04 -04:00
Gregory Burd
0f3c649f80 Some naming changes and more specific types in read/write path. 2012-06-25 14:27:42 +05:30
Gregory Burd
3140f9f281 Cleanup 2012-06-25 11:55:07 +05:30