Kresten Krab Thorup
f4feca27e5
Use ebloom by default
...
This commit changes the default bloom filter to
be basho’s bloom, which is significantly more
stable w.r.t. performance. The code can still
read the old bloom filters; new files are written
with the new filters.
The default is controlled in src/hanoidb.hrl
using the USE_EBLOOM macro.
2014-11-28 16:15:20 +01:00
Kresten Krab Thorup
a1bbadfb34
Update travis to include 17
2014-11-26 14:00:22 +01:00
Kresten Krab Thorup
810d183770
Fix crash in recovery code
2014-11-26 13:59:36 +01:00
Kresten Krab Thorup
1715c29364
Remove some lock contention when fsync’ing
2014-11-26 13:57:47 +01:00
Kresten Krab Thorup
0fa8ab4a02
Fix up the ensure_started code
2014-11-26 13:21:53 +01:00
Kresten Krab Thorup
752f9f5b62
Fix min/max level for recovery
...
Previous commit f0d24894c5
introduced a bug in recovery code.
2014-11-26 12:51:01 +01:00
Kresten Krab Thorup
71c4243701
Don’t open exclusive when re-opening a merge file
2014-11-26 12:44:50 +01:00
Kresten Krab Thorup
3b6b0ce197
Support sys messages in hanoidb_merger processes
2014-11-26 11:52:53 +01:00
Kresten Krab Thorup
f0d24894c5
Make the top_level
parameter configurable.
2014-11-21 00:41:40 +01:00
Kresten Krab Thorup
4ba712512d
Add travis build status button
2014-11-20 23:11:51 +01:00
Kresten Krab Thorup
70936cd51f
Make tests run again
...
We had a bad regression with #31 due to the
tests not being run automatically.
2014-11-20 23:08:14 +01:00
Kresten Krab Thorup
74c9bf6154
Swap arguments. Fixes issue #31
2014-11-20 22:42:14 +01:00
Kresten Krab Thorup
ea88b32d4e
Merge pull request #30 from brigadier/patch-2
...
add plain_fsm app in the 'applications' section of .app.src
2014-11-20 12:49:53 +01:00
Evgeny M.
7595560572
add plain_fsm app in the 'applications' section of .app.src
...
plain_fsm must be started prior to hanoidb
2014-11-20 14:01:13 +03:00
Kresten Krab Thorup
bac8a8620f
Leave the tests out as per @essen’s comments
...
resolves issue #29
2014-11-19 00:07:33 +01:00
Kresten Krab Thorup
d0620f241f
Make default “all” target really do all.
...
This fixes issue #29
2014-11-18 22:04:28 +01:00
Kresten Krab Thorup
2b95bfcf49
Merge branch 'master' of github.com:krestenkrab/hanoidb
2014-11-17 11:03:23 +01:00
Kresten Krab Thorup
5acd8cbc7a
Add travis build file
2014-11-17 10:57:25 +01:00
Kresten Krab Thorup
3b776a7bf1
Merge pull request #28 from brigadier/patch-1
...
Update Makefile
2014-11-14 19:34:22 +01:00
Evgeny M.
59c6d47bf7
Update Makefile
...
update makefile to make it compatible with erlang.mk
2014-11-14 20:47:38 +03:00
Kresten Krab Thorup
697683240d
Make ebloom / scalable bloom a compile-time option
...
bloom (from basho) uses a NIF implementation which
may be faster and use less memory; test before use.
The “old” bloom, a.k.a. “scalable bloom”
is pure erlang, which also has nice properties.
Note! Switching to ebloom changes the file format
so the default is still to use ‘scalable bloom’.
2014-10-21 15:03:53 +01:00
Kresten Krab Thorup
813863c9c3
Merge pull request #27 from eryx67/master
...
fix memory leak
2014-08-11 12:36:58 +02:00
eryx67
b97de217ed
fix memory leak
2014-08-11 16:17:17 +06:00
Kresten Krab Thorup
e58d2577a0
Update dependency for snappy 1.0 -> 1.1
2014-04-03 00:00:33 +02:00
Kresten Krab Thorup
6bde50dd73
Trying to build the build representation fails.
...
More specifically
encode(decode(encode(...)))
fails for dense (small) bloom filter sizes.
2014-04-02 23:57:23 +02:00
Kresten Krab Thorup
ce3a7049f2
Fix plain bug
2014-04-02 22:39:43 +02:00
Kresten Krab Thorup
e37623a84c
Fix argument order for plain_fsm:handle_system_msg
...
plain_fsm documentation was wrong https://github.com/uwiger/plain_fsm/pull/4 , so now it should be able to send sys messages
to hanoi.
2014-02-14 08:25:26 -05:00
Kresten Krab Thorup
e3689c3d87
Merge pull request #18 from eriksoe/bloom-sparse-representation
...
Bloom filter: make "don't set if already set" logic more fine-grained.
2012-09-27 04:53:44 -07:00
Erik Søe Sørensen
e1fddd6633
Bloom filter: make "don't set if already set" logic more fine-grained.
...
This results in a minor "bloom add" performance gain of ~10%.
2012-09-27 13:17:32 +02:00
Kresten Krab Thorup
35de7a3300
Enable lz4 compression
2012-09-26 16:05:51 +02:00
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