Kresten Krab Thorup
aa0fa64928
Merge branch 'statem-test' of https://github.com/jlouis/fractal_btree
2012-01-07 01:19:29 +01:00
Jesper Louis Andersen
fcff982050
Utilize the new lookup of existing keys in PropEr.
...
This patch implements another possible command: Lookup of keys that
already exist in the tree somewhere. We use a dict as the test tool:
the postcondition verifies that the value obtained from the fractal
btree matches the one we put in the dict earlier.
2012-01-07 01:02:09 +01:00
Jesper Louis Andersen
fd87d7963a
Improve driver cleanup, implement lookup of existing keys.
...
If we decide to stop the driver, we should not reply back before we
have a clean state with all BTrees closed.
Also, implement lookup of existing keys in the tree.
2012-01-07 01:00:31 +01:00
Jesper Louis Andersen
372a05619c
Improve the test stale btree removal.
...
Also delete the "simple" Btree in between test runs so we have a clean
slate of what is happening.
2012-01-07 00:58:57 +01:00
Kresten Krab Thorup
0f64e199b5
Minor read me updates
2012-01-07 00:29:06 +01:00
Kresten Krab Thorup
c53db4ba20
Don't start sasl in tree_test
2012-01-07 00:28:46 +01:00
Kresten Krab Thorup
3d0c36c3bc
Add option to evict tombstones in merge
2012-01-07 00:28:26 +01:00
Kresten Krab Thorup
5b4a4551a9
Reduce verbosity
2012-01-07 00:27:20 +01:00
Kresten Krab Thorup
120609f8ac
Delete X files so levels can reopen cleanly
2012-01-07 00:26:44 +01:00
Kresten Krab Thorup
61f0aa26d2
Merge branch 'level_mainloop_simplification' of git://github.com/eriksoe/fractal_btree
2012-01-06 23:48:40 +01:00
Kresten Krab Thorup
f31a771bc3
Merge jlouis/fractal_btree statem-test
2012-01-06 23:23:39 +01:00
Jesper Louis Andersen
01d0007168
Split tests to where they belong. Add simple statem test.
...
; Split the writer tests to the writer parts. This is not entirely
correct since they both read and write, but oh, well.
; Provide a simple statem test which opens trees and puts values.
2012-01-06 22:58:07 +01:00
Jesper Louis Andersen
de8d09231e
Preliminary cleanup of test cases.
...
This is not the "right" way to do it since it should be internalized,
but for a start it will do until we fix it.
2012-01-06 22:55:07 +01:00
Kresten Krab Thorup
3e5a315b18
Erik's ebloom has the fix
...
Switch back to basho/ebloom when his pull req
is accepted.
2012-01-06 22:53:26 +01:00
Kresten Krab Thorup
b6fe048a6f
A performance comparison w/InnoDB
...
Bottom line is that we're currently roughly
at-par with InnoDB; our gets are a bit slower
but we're using 50MB RAM, when InnoDB uses 1G.
2012-01-06 22:30:12 +01:00
Jesper Louis Andersen
0674ae3332
Introduce proper as a dependency.
2012-01-06 21:22:41 +01:00
Jesper Louis Andersen
fcf7af36ca
Provide a Makefile for running dialyzer.
...
While here, also dump another slew of goodies in the makefile.
2012-01-06 21:22:23 +01:00
Erik Søe Sørensen
091df9392e
levelpresence.sh: Add dynamicer mode.
2012-01-06 13:56:52 +01:00
Erik Søe Sørensen
dac9b31266
Merge branch 'master' of github.com:eriksoe/fractal_btree
...
Conflicts:
src/fractal_btree_level.erl
2012-01-06 13:56:32 +01:00
Kresten Krab Thorup
4e8602043f
Implement range_fold
2012-01-06 02:06:25 +01:00
Kresten Krab Thorup
9a624f963e
Rename read_leaf_node -> next_leaf_node
2012-01-06 02:06:00 +01:00
Kresten Krab Thorup
b21e253324
Store child-refs as {Pos,Size} so we can pread
...
This allows us to use file:pread to read a
child-node, rather than two separate reads
(one for node block size, and then one for
the node block itself).
Also, encode the level# in node header, so that
scanning leafs doesn't need to decode the
node contents for inner nodes.
2012-01-06 00:29:05 +01:00
Kresten Krab Thorup
2f985d8576
Fix indentation
2012-01-06 00:02:29 +01:00
Kresten Krab Thorup
e12544d0be
A bit more README / background info
2012-01-06 00:02:00 +01:00
Erik Søe Sørensen
90ae581213
level: Calculate the size of the merged file correctly - again.
2012-01-05 21:09:36 +01:00
Erik Søe Sørensen
be91e047ff
Merge branch 'master' of github.com:krestenkrab/fractal_btree
2012-01-05 18:32:28 +01:00
Kresten Krab Thorup
85a75ed298
fix conflict
2012-01-05 18:11:37 +01:00
Kresten Krab Thorup
cff74ac93a
Use proc_lib for spawning
2012-01-05 18:09:00 +01:00
Kresten Krab Thorup
6c0766a433
Allow merger to be local
2012-01-05 18:08:19 +01:00
Kresten Krab Thorup
51f1c13650
Assert nursery file is gone after inject
2012-01-05 18:07:20 +01:00
Erik Søe Sørensen
c43d5464d6
Merge branch 'master' of github.com:krestenkrab/fractal_btree
2012-01-05 17:50:50 +01:00
Erik Søe Sørensen
43f9855633
levelpresence.sh: Show line numbers.
2012-01-05 17:50:33 +01:00
Erik Søe Sørensen
aca809aa90
level: Handle failure of merger process. Remove EXIT messages from inbox.
2012-01-05 17:50:18 +01:00
Kresten Krab Thorup
22e59b0fcc
Make btree_writer:close use infinity
2012-01-05 17:37:15 +01:00
Erik Søe Sørensen
0ff2a2528e
Merge branch 'master' of github.com:krestenkrab/fractal_btree
2012-01-05 17:31:30 +01:00
Kresten Krab Thorup
8c6d832f27
Merge pull request #1 from eriksoe/level_mainloop_simplification
...
Level mainloop simplification
2012-01-05 08:31:10 -08:00
Erik Søe Sørensen
fa4f1e1f49
Merge branch 'master' of github.com:krestenkrab/fractal_btree
2012-01-05 17:25:23 +01:00
Erik Søe Sørensen
155a0e5b19
Add level progress visualization script.
2012-01-05 17:24:58 +01:00
Kresten Krab Thorup
cf54868d1b
Implement new merge algorithm
...
Which does not spawn individual processes,
but rather does a "sequential merge"
2012-01-05 17:07:49 +01:00
Kresten Krab Thorup
00e2fba43a
Correct count for merge
2012-01-05 16:46:32 +01:00
Erik Søe Sørensen
b9abf21bac
Correct embarrasing typo wrt. use of do_lookup().
2012-01-05 16:23:21 +01:00
Erik Søe Sørensen
36816e261a
Merge remote-tracking branch 'kk/master' into level_mainloop_simplification
...
Conflicts:
src/fractal_btree_level.erl
2012-01-05 16:14:54 +01:00
Kresten Krab Thorup
244e3128e9
Handle error case + debugging for that
2012-01-05 23:05:18 +08:00
Kresten Krab Thorup
e09e2b2aa2
Add basho_bench script/driver
2012-01-05 23:05:18 +08:00
Kresten Krab Thorup
3118bd8c62
Remove lots of info_msg
2012-01-05 23:05:18 +08:00
Erik Søe Sørensen
c04c11c67f
First compile and test, then commit.
2012-01-05 16:02:29 +01:00
Erik Søe Sørensen
fa43e41c51
Simplify slightly in level:initialize().
2012-01-05 16:01:14 +01:00
Erik Søe Sørensen
c93505fa58
Simplify main_loop() by collapsing to one clause.
2012-01-05 15:59:45 +01:00
Kresten Krab Thorup
27396c21d1
Handle error case + debugging for that
2012-01-05 15:56:37 +01:00
Erik Søe Sørensen
76c6cbd585
Simplify lookup in main_loop2().
2012-01-05 15:46:13 +01:00