aboutsummaryrefslogtreecommitdiff
path: root/page_test.go (unfollow)
Commit message (Expand)AuthorFilesLines
2014-05-15Change verbiage, fix node test.Ben Johnson2-6/+6
2014-05-15Add option to adjust fill percentage.•••This commit adds the ability to adjust the fill percentage for splitting nodes. This works by setting a threshold that is a percentage of a total page size. When that threshold is crossed during a split then a new node is created. This is primarily beneficial for append-only workloads. Fixes #163. Ben Johnson4-3/+28
2014-05-14Add strict mode.Ben Johnson3-63/+134
2014-05-14Minor stats fixes.Ben Johnson2-12/+42
2014-05-13address review commentsMartin Kobetic3-16/+70
2014-05-12Add -work flag to 'bolt bench'.•••This commit adds a 'work' flag to the bolt bench utility so that databases generated by the bench CLI can be saved for analysis. Ben Johnson2-1/+9
2014-05-12undo page.go changesMartin Kobetic1-2/+2
2014-05-12add inline stats to cmdMartin Kobetic1-0/+8
2014-05-12tweaksMartin Kobetic2-9/+15
2014-05-12merge inline branch into leaf branchMartin Kobetic2-23/+54
2014-05-12fix inline bucket statsMartin Kobetic2-51/+83
2014-05-09aggregate bucket stats recursively and add stats to cmdMartin Kobetic5-16/+107
2014-05-09first partMartin Kobetic4-7/+102
2014-05-09Fix deletion reclamation.Ben Johnson3-19/+39
2014-05-09Fix node unit tests.Ben Johnson1-5/+5
2014-05-09remove stray fileMartin Kobetic1-54/+0
2014-05-09add asserts for detecting pgid high watermark overflowMartin Kobetic4-0/+63
2014-05-08Add 'bolt info'.Ben Johnson3-0/+66
2014-05-07Minor fixes.Ben Johnson1-1/+1
2014-05-07Improve bucket code documentation.Ben Johnson1-11/+14
2014-05-07Fix bucket free.Ben Johnson5-6/+82
2014-05-05Add inline bucket support.•••This commit adds support for writing small buckets directly inline to their value in their parent's leaf node. Previously, subbuckets would simply have a bucket header stored in their parent bucket which pointed to the root page. This required that every bucket use at least a single page. This has a high overhead for buckets with only one or two small items. Inline buckets checks subbuckets to see if they only have a small amount of data (about 1kb) and no subbuckets. If these conditions are met then the bucket's root node is written to a fake page which is simply a pointer to the end of the bucket's header. Fixes #124. Ben Johnson7-49/+189
2014-05-05Consolidate 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. Ben Johnson10-139/+120
2014-05-05Remove '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. Ben Johnson3-87/+0
2014-05-05Remove 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. Ben Johnson3-732/+0
2014-05-04Document cursors seeing nested bucketsTommi Virtanen1-0/+1
2014-05-04Cursor.Seek validity is indicated by key being nilTommi Virtanen1-1/+1
2014-05-03Refactor split/spill.Ben Johnson6-132/+240
2014-04-30Add 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. Ben Johnson2-23/+61
2014-04-30Remove bolt bench -stat.Ben Johnson2-26/+1
2014-04-29Add --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 Ben Johnson2-11/+33
2014-04-29Add 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. Ben Johnson2-0/+33
2014-04-29Copy 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. Ben Johnson1-0/+9
2014-04-25Printf's %s and %q do the right thing with []byte; removed string conversion.Kevin Gillette3-8/+8
2014-04-24add -stats and -batch-size support to bench cmdMartin Kobetic2-12/+63
2014-04-23fix empty byte vs nil test problemsMartin Kobetic2-17/+10
2014-04-23add test for empty bucket handlingMartin Kobetic2-8/+36
2014-04-23another test case and minor cleanupMartin Kobetic2-10/+17
2014-04-23fix deep searchMartin Kobetic2-5/+30
2014-04-22add deep tree tests, some cleanupMartin Kobetic2-32/+106
2014-04-22Change 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. Ben Johnson2-50/+55
2014-04-22rename MaxDepth to DepthMartin Kobetic2-6/+6
2014-04-22skip space assertions for incompatible page sizeMartin Kobetic1-14/+22
2014-04-22allign naming with MemStatsMartin Kobetic2-32/+32
2014-04-22moar tweaksMartin Kobetic2-34/+55
2014-04-22update stats testMartin Kobetic1-0/+8
2014-04-22add Used/Free Leaf/Branch bucket statsMartin Kobetic1-0/+15
2014-04-18Add '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 Ben Johnson9-496/+281
2014-04-18move bench package to bench/cmd/bolt/benchSteven Normore4-96/+96
2014-04-18add bench sub-packageSteven Normore6-94/+97