aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge pull request #245 from benbjohnson/caveatBen Johnson2014-08-241-0/+5
|\ | | | | Add single-bucket/single-tx caveat.
| * Add single-bucket/single-tx caveat.Ben Johnson2014-08-241-0/+5
|/ | | | | | | | This commit adds a caveat to the README to notify users that bulk loading random writes into a single new bucket can be problematic. This issue was reported by @freepk. Fixes #244.
* Merge pull request #243 from benbjohnson/deref-split-rootBen Johnson2014-08-211-1/+1
|\ | | | | Fix split root dereference.
| * Fix split root dereference.Ben Johnson2014-08-211-1/+1
|/ | | | | | This commit fixes a bug that occurs when a root node is split just after a re-mmap occurs. Previously, this would cause a panic because the new root node would still reference keys from the old mmap.
* Merge pull request #242 from clutchski/patch-1Ben Johnson2014-08-201-1/+1
|\ | | | | fix spelling mistake in README
| * fix spelling mistake in READMEMatt Perpick2014-08-201-1/+1
|/
* Merge pull request #241 from AndreasBriese/masterBen Johnson2014-08-181-0/+1
|\ | | | | added ipLocator to projects using Bolt
| * added ipLocator to projects using BoltAndreas Briese2014-08-181-0/+1
|/
* Merge pull request #239 from benbjohnson/exampleBen Johnson2014-08-161-0/+79
|\ | | | | Add cursor examples.
| * Add cursor examples.Ben Johnson2014-08-161-0/+79
|/
* Merge pull request #236 from siddontang/masterBen Johnson2014-08-031-0/+1
|\ | | | | Add LedisDB to project list
| * Add LedisDB to project listsiddontang2014-08-041-0/+1
|/
* Merge pull request #235 from benbjohnson/caveatsBen Johnson2014-07-281-0/+29
|\ | | | | Caveats & Limitations
| * READMEBen Johnson2014-07-281-0/+29
|/
* READMEBen Johnson2014-07-271-4/+4
|
* Merge pull request #234 from benbjohnson/testingBen Johnson2014-07-2624-1811/+1894
|\ | | | | Testing cleanup
| * Fix go vet.Ben Johnson2014-07-263-5/+5
| |
| * Remove testify.Ben Johnson2014-07-2617-537/+664
| |
| * Move tests to a test package.Ben Johnson2014-07-2610-348/+266
| |
| * Remove wrapping test closures.Ben Johnson2014-07-265-1436/+1471
| |
| * Remove withTempPath() helper.Ben Johnson2014-07-251-125/+128
| |
* | Merge pull request #230 from benbjohnson/docBen Johnson2014-07-251-22/+369
|\ \ | |/ |/| Documentation!
| * READMEBen Johnson2014-07-251-22/+369
|/
* Merge pull request #229 from benbjohnson/bucket-fill-percentBen Johnson2014-07-245-21/+28
|\ | | | | Change fill percent to be per-bucket.
| * Add FillPercent documentation.Ben Johnson2014-07-241-0/+2
| |
| * Change fill percent to be per-bucket.Ben Johnson2014-07-245-21/+26
|/ | | | | | 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.
* Merge pull request #228 from benbjohnson/fix-large-appendBen Johnson2014-07-233-22/+61
|\ | | | | Fix root split on very large append.
| * Fix root split on very large append.Ben Johnson2014-07-233-22/+61
| | | | | | | | | | | | | | This commit fixes a bug where a root split on a very large insert would cause an overflow of the root node. The problem was that the new root was not split when it was created so a new root with more than 64K child nodes would overflow the page.count (uint16).
* | Merge pull request #227 from benbjohnson/fix-double-spillBen Johnson2014-07-231-1/+5
|\| | | | | Fix double spill
| * Fix double spill.Ben Johnson2014-07-231-1/+5
|/ | | | | | This fixes an issue where split nodes can be double spilled. This is typically not noticable but it can have large effects when bulk inserting as double spilled nodes will get added to the freelist which will grow quickly.
* Merge pull request #226 from benbjohnson/optimize-large-appendBen Johnson2014-07-221-8/+21
|\ | | | | Optimize large append.
| * Optimize large append.Ben Johnson2014-07-221-8/+21
|/ | | | | | | | This commit fixes an issue where large nodes would take up most of the insert time because the entire node size would be calculated to check if it could fit in a page or not. This changes the behavior so that a node's size is only calculated up to the size it needs to check and then returns.
* Merge pull request #221 from cmars/win32Ben Johnson2014-07-161-1/+1
|\ | | | | Fixed cast for 32-bit windows.
| * Fixed cast for 32-bit windows.Casey Marshall2014-07-131-1/+1
| |
* | Merge pull request #225 from benbjohnson/no-syncBen Johnson2014-07-154-4/+21
|\ \ | | | | | | Add DB.NoSync option for bulk loading.
| * | Add DB.NoSync option for bulk loading.Ben Johnson2014-07-154-4/+21
|/ / | | | | | | | | | | | | 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.
* | Merge pull request #224 from benbjohnson/rebalance-timeBen Johnson2014-07-151-1/+3
|\ \ | |/ |/| Only update rebalance time if nodes are rebalanced
| * Only update rebalance time if nodes are rebalanced.Ben Johnson2014-07-151-1/+3
|/ | | | | | This commit changes TxStats.RebalanceTime to only update if there are nodes that have been rebalanced. Previously, the RebalanceTime would include a small amount of time to check if there were nodes to rebalance but this is confusing to users and not terribly helpful.
* Remove unreachable test code.Ben Johnson2014-07-111-2/+0
|
* Merge pull request #220 from benbjohnson/handle-panicBen Johnson2014-07-113-0/+80
|\ | | | | Recover from panics appropriately.
| * Recover from panics appropriately.Ben Johnson2014-07-113-0/+80
|/ | | | | | | This commit adds a defer handler to ensure that transactions are always closed out - even in the event of a panic within user code. It's recommended that applications always fail in the event of a panic but some packages such as net/http will automatically recover which is a problem (IHMO).
* Merge pull request #219 from benbjohnson/freelist-overflowBen Johnson2014-07-103-17/+29
|\ | | | | Allow freelist overflow.
| * Remove ErrFreelistOverflow error.Ben Johnson2014-07-101-4/+0
| |
| * Allow freelist overflow.Ben Johnson2014-07-102-13/+29
|/ | | | | | | | | | | This commit is a backwards compatible change that allows the freelist to overflow the page.count (uint16). It works by checking if the overflow will occur and marking the page.count as 0xFFFF and setting the actual count to the first element of the freelist. This approach was used because it's backwards compatible and it doesn't make sense to change the data type of all page counts when only the freelist's page can overflow. Fixes #192.
* Merge pull request #215 from benbjohnson/free-cacheBen Johnson2014-07-105-48/+72
|\ | | | | Add freelist cache.
| * Clean up freelist reindex.Ben Johnson2014-07-101-11/+13
| |
| * Merge branch 'master' of https://github.com/boltdb/bolt into free-cacheBen Johnson2014-07-103-3/+10
| |\ | |/ |/|
* | Fix test for path errors.Ben Johnson2014-07-101-1/+1
| |
* | Merge pull request #218 from benbjohnson/fix-winBen Johnson2014-07-102-2/+3
|\ \ | | | | | | Fix Windows mmap sizing.
| * | Fix Windows mmap sizing.Ben Johnson2014-07-102-2/+3
|/ / | | | | | | | | | | | | | | | | This commit fixes an issue on Windows where the database was doubling when it was re-opened. This occurred because Windows has to truncate the file to the mmap size and the mmap resizing code was doubling the size whenever the DB size was at the next threshold. This has been changed so that the DB size will double only when the DB size is above the next threshold.