aboutsummaryrefslogtreecommitdiff
path: root/cmd/bolt (follow)
Commit message (Expand)AuthorAgeFilesLines
* cmd/bolt: remove duplicate blockProfile flagXiang Li2015-04-221-1/+0
* Add 'bolt page' command.Ben Johnson2015-04-171-7/+466
* Add 'bolt dump' command.Ben Johnson2015-04-161-0/+117
* Add improved CLI documentation.Ben Johnson2015-04-151-4/+123
* Refactor bolt CLI.Ben Johnson2015-04-1415-1168/+909
* Add --path to bolt bench.Ben Johnson2015-04-122-2/+8
* new line after page size info printBaiju Muthukadan2015-02-281-1/+1
* Remove 'import' and 'export' CLI commands.•••The import and export commands are a relic of early Bolt when the file format was not stable. If the file format changed then users could export their old data and import it into a new database with a new format. The Bolt DB file format is stable and will not change so this command is no longer needed. Thanks to Alejandro Gaviria for pointing this out. Ben Johnson2015-01-085-322/+0
* Fix go vet.Ben Johnson2014-07-262-4/+4
* Remove testify.Ben Johnson2014-07-268-35/+58
* Change fill percent to be per-bucket.•••This commit moves the DB.FillPercent field to Bucket.FillPercent. This allows the fill percentage to be specified per-bucket, per-tx. This value is not persisted and should be set whenever using it. Ben Johnson2014-07-241-1/+3
* Add DB.NoSync option for bulk loading.•••This commit adds the DB.NoSync flag to skip fsync() calls on each commit. This should only be used for bulk loading as it can corrupt your database in the event of a system failure. Initial tests show it can provide a 2x speed up for sequential inserts. Ben Johnson2014-07-152-0/+4
* Add Open() options, flock timeout.•••This commit changes Open() to provide an additional Options argument. The options argument currently only has a Timeout which will cause the Open() to return ErrTimeout if a file lock cannot be obtained in time. Fixes #207. Ben Johnson2014-06-2112-12/+12
* Optimize Tx.Check().•••This commit removes several memory allocations occurring on every page and also caches the freelist map used when iterating over the pages. This results in significantly better performance. Ben Johnson2014-05-282-1/+3
* Add streaming check.•••This commit changes Tx.Check() to return a channel through which check errors are returned. This allows errors to be found before checking the entire data file. Ben Johnson2014-05-281-12/+20
* Remove DB.Check(). Allow read-only Tx.Check().•••This commit removes the DB.Check() function and instead makes the user decide whether a transaction should be writable or read-only. Tx.Check() is not safe to use concurrently on a read-only transaction, however, it significantly improves the performance of it. Ben Johnson2014-05-271-1/+6
* Remove allocations from read-only buckets.Ben Johnson2014-05-231-1/+82
* Add 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 Johnson2014-05-152-0/+5
* Merge pull request #162 from Shopify/nested_stats2•••Recursive/aggregate bucket statsBen Johnson2014-05-143-0/+147
|\
| * address review commentsMartin Kobetic2014-05-132-13/+47
| * add inline stats to cmdMartin Kobetic2014-05-121-0/+8
| * aggregate bucket stats recursively and add stats to cmdMartin Kobetic2014-05-093-12/+55
| * first partMartin Kobetic2014-05-092-0/+62
* | Add -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 Johnson2014-05-122-1/+9
|/
* Add 'bolt info'.Ben Johnson2014-05-083-0/+66
* 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. Ben Johnson2014-05-053-87/+0
* 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. Ben Johnson2014-04-302-23/+61
* Merge branch 'bench-batch' into moar_bench•••Conflicts: cmd/bolt/bench.go Ben Johnson2014-04-302-7/+10
|\
| * 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 Ben Johnson2014-04-292-11/+33
* | Remove bolt bench -stat.Ben Johnson2014-04-302-26/+1
* | add -stats and -batch-size support to bench cmdMartin Kobetic2014-04-242-12/+63
|/
* 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 Ben Johnson2014-04-186-249/+279
* move bench package to bench/cmd/bolt/benchSteven Normore2014-04-183-0/+157
* add bench sub-packageSteven Normore2014-04-181-28/+8
* add benchmarks using Benchmark frameworkSteven Normore2014-04-186-50/+67
* moar bench packageSteven Normore2014-04-185-42/+66
* initial bench and generate command structureSteven Normore2014-04-184-0/+96
* Return bucket from CreateBucket() functions.•••This commit changes the API for: Tx.CreateBucket() Tx.CreateBucketIfNotExists() Bucket.CreateBucket() Bucket.CreateBucketIfNotExists() These functions now return the *Bucket and error instead of just the error. Ben Johnson2014-04-152-5/+6
* Upgrade import/export to use nested buckets.Ben Johnson2014-04-118-27/+78
* Merge branch 'master' into nested-keys•••Conflicts: db_test.go tx_test.go Ben Johnson2014-04-1110-25/+309
|\
| * Add import/export to CLI.•••This commit adds two new commands: bolt import --input INPUT PATH bolt export PATH This exports the database in a simple, nested, key/value JSON document. Each node in the document has a "key", a "value", and an optional "type". The key and value fields are both base64 encoded. Ben Johnson2014-04-1110-24/+306
| * add ldflags on build with main.commit and main.branch to MakefileSteven Normore2014-04-091-1/+3
* | Add nested buckets.•••This commit adds the ability to create buckets inside of other buckets. It also replaces the buckets page with a root bucket. Fixes #56. Ben Johnson2014-04-114-7/+7
|/
* Remove count and overflow columns for free pages on 'bolt pages'.•••The count and overflow columns are meaningless for freed pages since there could be random overflow data in there. This commit removes those columns for free pages. Ben Johnson2014-04-021-4/+12
* Write freelist after each commit.•••Well, this is embarassing. Somehow the freelist was never getting written after each commit. This commit fixes that and fixes a small reporting issue with "bolt pages". Ben Johnson2014-03-311-1/+4
* Add DB.Check().Ben Johnson2014-03-292-0/+42
* Refactor bolt commands into individual files.Ben Johnson2014-03-2711-316/+395
* Make DB/Tx API more consistent.•••I consolidated the DB.Tx() and DB.RWTx() calls into a single DB.Begin(writable bool) call. This is more consistent with the database/sql library. I also changed the DB.Do() and DB.With() call to DB.Update() and DB.View(), respectively. This is more intuitive and more inline with other database verbiage. Ben Johnson2014-03-242-10/+10
* Fix print.Ben Johnson2014-03-211-6/+31
* Add 'bolt buckets'.Ben Johnson2014-03-212-0/+54