aboutsummaryrefslogtreecommitdiff
path: root/bucket.go (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove allocations from read-only buckets.Ben Johnson2014-05-231-6/+17
|
* Minor stats fixes.Ben Johnson2014-05-141-1/+9
|
* address review commentsMartin Kobetic2014-05-131-3/+23
|
* tweaksMartin Kobetic2014-05-121-1/+2
|
* merge inline branch into leaf branchMartin Kobetic2014-05-121-20/+17
|
* fix inline bucket statsMartin Kobetic2014-05-121-6/+26
|
* aggregate bucket stats recursively and add stats to cmdMartin Kobetic2014-05-091-4/+8
|
* first partMartin Kobetic2014-05-091-5/+38
|
* Merge branch 'master' of https://github.com/boltdb/bolt into fix-deletionBen Johnson2014-05-091-0/+1
|\ | | | | | | | | Conflicts: node.go
| * add asserts for detecting pgid high watermark overflowMartin Kobetic2014-05-091-0/+1
| |
* | Fix deletion reclamation.Ben Johnson2014-05-091-5/+2
|/
* Minor fixes.Ben Johnson2014-05-071-1/+1
|
* Improve bucket code documentation.Ben Johnson2014-05-071-11/+14
|
* Fix bucket free.Ben Johnson2014-05-071-2/+40
|
* Add inline bucket support.Ben Johnson2014-05-051-24/+137
| | | | | | | | | | | | | | | 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.
* Consolidate code for clarity.Ben Johnson2014-05-051-0/+15
| | | | | | 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.
* Refactor split/spill.Ben Johnson2014-05-031-77/+17
|
* Copy key on Put() and CreateBucket().Ben Johnson2014-04-291-0/+9
| | | | | | | 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.
* Change to BucketStats and Bucket.Stats().Ben Johnson2014-04-221-14/+19
| | | | | | | | 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.
* rename MaxDepth to DepthMartin Kobetic2014-04-221-3/+3
|
* allign naming with MemStatsMartin Kobetic2014-04-221-17/+17
|
* moar tweaksMartin Kobetic2014-04-221-16/+17
|
* add Used/Free Leaf/Branch bucket statsMartin Kobetic2014-04-221-0/+15
|
* build c/cursor and running testsSteven Normore2014-04-161-0/+10
|
* Return bucket from CreateBucket() functions.Ben Johnson2014-04-151-15/+17
| | | | | | | | | | | 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.
* Add nested buckets.Ben Johnson2014-04-111-37/+329
| | | | | | | This commit adds the ability to create buckets inside of other buckets. It also replaces the buckets page with a root bucket. Fixes #56.
* Add performance counters.Ben Johnson2014-04-021-0/+4
| | | | | | | | | | | | This commit adds performance counters for each transaction which are rolled up to the database level on each commit/rollback. Counters are meant to be a very fast way to track what is going on in the database. A few timers are also added in areas where the time.Now() overhead is not noticible. The DB.Stat() function is now deprecated since the `bolt` CLI now performs similar functions. Fixes #108.
* Error refactoring.Ben Johnson2014-03-241-0/+34
| | | | Fixed up a few error issues and refactored out the Error type.
* Add ErrTxClosed error.Ben Johnson2014-03-231-3/+12
| | | | | | | | Commit/Rollback and mutable calls on Tx and Bucket now return ErrTxClosed if the transaction has already been committed or rolled back. Non-mutable calls have added an assertion to check if the transaction is closed which will cause a panic. I don't want to introduce an error return for accessor methods that are being used improperly so I think the panic is appropriate.
* fix 32bit build fails: bucket.go#67binz2014-03-231-1/+1
|
* Merge pull request #65 from benbjohnson/fix-tx-buckets-sort-orderBen Johnson2014-03-211-0/+6
|\ | | | | Fix Tx.Buckets() sort order.
| * Fix Tx.Buckets() sort order.Ben Johnson2014-03-131-0/+6
| | | | | | | | | | @tv42 reported an issue with bucket names returning incorrectly. Not sure if this fixes the issue but it is necessary anyway.
* | Fix Bucket.ForEach() comment.Ben Johnson2014-03-151-1/+2
|/
* Consolidate Tx and RWTx.Ben Johnson2014-03-081-4/+3
|
* Rename Transaction to Tx.Ben Johnson2014-03-081-11/+11
| | | | | I changed the Transaction/RWTransaction types to Tx/RWTx, respectively. This makes the naming more consistent with other packages such as database/sql. The txnid is changed to txid as well.
* Allow reads of unflushed nodes.Ben Johnson2014-03-011-1/+1
| | | | | This commit allows cursors to read updated values from within the RWTransaction.
* Refactor Bucket.Ben Johnson2014-02-231-7/+104
|
* Revert "Refactor Transaction/Bucket API."Ben Johnson2014-02-221-100/+5
| | | | This reverts commit 1ad2b99f281d587b767b36f886401e81d17915a9.
* Refactor Transaction/Bucket API.Ben Johnson2014-02-211-5/+100
|
* Bucket stats.Ben Johnson2014-02-211-0/+29
|
* Add parallel usage test and race detector.Ben Johnson2014-02-151-1/+1
|
* Add bucket sequence.Ben Johnson2014-02-151-0/+1
|
* API Documentation.Ben Johnson2014-02-131-0/+5
|
* Add freelist.Ben Johnson2014-02-101-14/+0
|
* Clean up.Ben Johnson2014-02-091-0/+14
|
* Refactor node lookup.Ben Johnson2014-02-071-1/+1
|
* Add RWTransaction.Put().Ben Johnson2014-02-011-7/+2
|
* Clean up API.Ben Johnson2014-01-311-2/+0
|
* Add RWTransaction.write().Ben Johnson2014-01-301-0/+2
|
* gofmtBen Johnson2014-01-301-3/+3
|