Ben Johnson
6133ecb878
Merge pull request #153 from benbjohnson/consolidate
...
Consolidate code for clarity.
2014-05-05 07:58:53 -06:00
Ben Johnson
c3903d38a1
Consolidate code for clarity.
...
This commit consolidates some of the smaller files into some of the larger files.
The smaller files cluttered the file tree and made it harder to see the logical
groupings of structs.
2014-05-05 07:56:54 -06:00
Ben Johnson
383ddb246a
Merge pull request #152 from benbjohnson/remove-bolt-set
...
Remove 'bolt set'.
2014-05-05 07:50:00 -06:00
Ben Johnson
c22d2e03bc
Remove 'bolt set'.
...
This commit removes the 'set' command in the Bolt CLI. It proved to not be very useful
so there's no point in keeping the extra code around.
2014-05-05 07:48:45 -06:00
Ben Johnson
f860b35c4e
Merge pull request #151 from benbjohnson/remove-c
...
Remove the c package
2014-05-05 07:44:54 -06:00
Ben Johnson
376ce6858a
Remove the c package.
...
The CGO binding from an external package did not work as well as hoped. The C code
has been moved to the project which uses it.
2014-05-05 07:43:10 -06:00
Ben Johnson
84570ee67e
Merge pull request #150 from tv42/typo-seek
...
Fix Cursor.Seek to say caller should test key==nil not value==nil, explain what value==nil really means these days
2014-05-04 21:46:50 -06:00
Tommi Virtanen
eaa47b6468
Document cursors seeing nested buckets
2014-05-04 18:32:59 -07:00
Tommi Virtanen
458400eb82
Cursor.Seek validity is indicated by key being nil
2014-05-04 18:30:30 -07:00
Ben Johnson
60624c4c19
Merge pull request #148 from benbjohnson/split-spill
...
Refactor split/spill
2014-05-03 16:21:45 -06:00
Ben Johnson
25fea2fd9f
Refactor split/spill.
2014-05-03 16:21:28 -06:00
Ben Johnson
a18135e055
Merge pull request #147 from benbjohnson/stats
...
Add streaming stats to bolt bench.
2014-05-01 15:13:05 -06:00
Ben Johnson
d48c4a20be
Add streaming stats to bolt bench.
...
This commit adds -stats-interval to the 'bolt bench' utility. By setting this argument
to an interval greater than 0s, the benchmark tool will output stats as streaming JSON.
This data can, in turn, be graphed to understand performance over time.
2014-04-30 12:27:54 -06:00
Ben Johnson
09914968ba
Merge pull request #146 from benbjohnson/bench-batch
...
Add --batch-size to 'bolt bench'
2014-04-30 12:01:56 -06:00
Ben Johnson
2bfb1b3db5
Merge branch 'bench-batch' into moar_bench
...
Conflicts:
cmd/bolt/bench.go
2014-04-30 12:00:39 -06:00
Ben Johnson
6854ca415f
Remove bolt bench -stat.
2014-04-30 11:55:08 -06:00
Ben Johnson
cabb44e01f
Add --batch-size to 'bolt bench'.
...
This commit adds a --batch-size CLI argument to the 'bolt bench' tool.
This argument will insert into Bolt in smaller batches which is a more
typical use case.
/cc @snormore
2014-04-29 12:36:42 -06:00
Ben Johnson
b6135c2c95
Merge pull request #145 from benbjohnson/tx-cursor
...
Add Tx.Cursor().
2014-04-29 09:56:10 -06:00
Ben Johnson
0dfb71267c
Merge pull request #144 from benbjohnson/copy-key
...
Copy key on Put() and CreateBucket().
2014-04-29 09:34:38 -06:00
Ben Johnson
e3957cd0de
Add Tx.Cursor().
...
This commit adds the Cursor() function to Tx. This allows iteration on the root bucket
in a similar way to iteration on other buckets.
Fixes #141 .
2014-04-29 07:25:14 -06:00
Ben Johnson
e3ed193646
Copy key on Put() and CreateBucket().
...
This commit makes a copy of the key byte slice before inserting into the database.
This fixes the issue where users may reuse byte buffers which can corrupt the database.
Fixes #143 .
2014-04-29 06:54:01 -06:00
Ben Johnson
46d83eb140
Merge pull request #142 from extemporalgenome/Printf-byteslice
...
Printf's %s and %q already do the right thing with []byte
2014-04-25 16:13:24 -06:00
Kevin Gillette
1879d88c43
Printf's %s and %q do the right thing with []byte; removed string conversion.
2014-04-25 15:38:42 -06:00
Martin Kobetic
d9e7e0257b
add -stats and -batch-size support to bench cmd
2014-04-24 16:30:39 -04:00
Ben Johnson
5524825919
Merge pull request #139 from Shopify/moar_c_cursor
...
More C cursor improvements
2014-04-23 12:05:53 -06:00
Martin Kobetic
5612ea7694
fix empty byte vs nil test problems
2014-04-23 16:54:41 +00:00
Martin Kobetic
181eb96dc7
add test for empty bucket handling
2014-04-23 15:36:41 +00:00
Martin Kobetic
ded351df92
another test case and minor cleanup
2014-04-23 14:25:25 +00:00
Martin Kobetic
9d095430b4
fix deep search
2014-04-23 14:00:53 +00:00
Martin Kobetic
9cc516f8e2
add deep tree tests, some cleanup
2014-04-22 21:20:49 +00:00
Ben Johnson
775e2d6cca
Merge pull request #137 from benbjohnson/bucket-stats
...
Change to BucketStats and Bucket.Stats().
2014-04-22 15:17:09 -06:00
Ben Johnson
0567eea5f5
Change to BucketStats and Bucket.Stats().
...
This commit pluralizes the BucketStat type to be BucketStats. This makes it
more consistent with the other Stats() calls. This commit also changes the
return type to a struct instead of a pointer.
Finally, this commit adds documentation to the fields of BucketStats.
2014-04-22 15:11:49 -06:00
Ben Johnson
7587e61802
Merge pull request #136 from Shopify/stats_space
...
Add space stats to the bucket stats
2014-04-22 15:03:07 -06:00
Martin Kobetic
a02ddf402b
rename MaxDepth to Depth
2014-04-22 20:32:09 +00:00
Martin Kobetic
03cb096230
skip space assertions for incompatible page size
2014-04-22 20:29:37 +00:00
Martin Kobetic
4245fd9c4e
allign naming with MemStats
2014-04-22 20:22:18 +00:00
Martin Kobetic
62592ec840
moar tweaks
2014-04-22 20:18:09 +00:00
Martin Kobetic
9c1b768185
update stats test
2014-04-22 18:34:34 +00:00
Martin Kobetic
382ccc2746
add Used/Free Leaf/Branch bucket stats
2014-04-22 18:22:42 +00:00
Ben Johnson
afe8123d91
Merge pull request #134 from Shopify/c_cursor
...
C cursor
2014-04-21 07:24:48 -06:00
Ben Johnson
4b0c7e3d42
Merge pull request #135 from benbjohnson/bench
...
Bench
2014-04-19 09:09:10 -05:00
Ben Johnson
a42d74da7e
Add 'bolt bench'.
...
This commit adds a flexible benchmarking tool to the 'bolt' CLI. It allows
the user to separately specify the write mode and read mode (e.g. sequential
random, etc). It also allows the user to isolate profiling to either the
read or the writes.
Currently the bench tool only supports "seq" read and write modes. It also
does not support streaming of Bolt counters yet.
Fixes #95 .
/cc @snormore
2014-04-18 22:15:31 -05:00
Steven Normore
71e91e24b0
move bench package to bench/cmd/bolt/bench
2014-04-18 21:44:48 -05:00
Steven Normore
105fece47a
add bench sub-package
2014-04-18 21:44:47 -05:00
Steven Normore
97bd718b02
add benchmarks using Benchmark framework
2014-04-18 21:44:36 -05:00
Steven Normore
29b7d0a9a4
fix basic parallel benchmark
2014-04-18 21:44:36 -05:00
Steven Normore
fdde1bcb06
moar bench package
2014-04-18 21:44:27 -05:00
Steven Normore
6957c9d534
initial bench and generate command structure
2014-04-18 21:44:27 -05:00
Martin Kobetic
1bead4401c
all tests pass
2014-04-18 00:14:56 +00:00
Martin Kobetic
9a3d0db1b2
trying to fix large seek
2014-04-17 22:01:16 +00:00