642 Commits

Author SHA1 Message Date
Mark Rushakoff
e991375cad Explain iterating over sub-buckets in README 2015-11-22 18:20:48 -08:00
Ben Johnson
0b00effdd7 Merge pull request #455 from gyuho/boltdb_unix_map_populate
Add MmapFlags option for MAP_POPULATE (unix)
2015-11-12 08:10:49 -07:00
Ben Johnson
d359c78f40 Merge pull request #452 from benbjohnson/empty-seek
Skip empty pages during cursor seek
2015-11-09 09:36:12 -07:00
Gyu-Ho Lee
d97579c399 Add MmapFlags option for MAP_POPULATE (unix)
This adds MmapFlags to DB.Options in case we need syscall.MAP_POPULATE
flag in Linux 2.6.23+ to do the sequential read-ahead, as discussed in [1].

---

[1]: https://github.com/coreos/etcd/issues/3786
2015-11-08 18:07:10 -08:00
Ben Johnson
81db89446c Merge branch 'xiang90-tx_write' 2015-11-06 13:20:48 -07:00
Ben Johnson
6b1bbf0ab4 update WriteTo() docs
This commit updates and revises some of the documentation around
Tx.WriteTo() and how O_DIRECT is no longer the default.
2015-11-06 13:18:58 -07:00
Xiang Li
b986966361 add WriteToFlag to Tx
For in memory workload, it does not make sense to use
o_direct to copy the file. Adding a option to clear out
o_direct and for other future cases.
2015-11-06 11:03:28 -08:00
Luke Champine
852d3024fa skip empty pages during cursor seek
This commit fixes an issue where keys are skipped by cursors after
deletions occur in a bucket. This occurred because the cursor seeks
to the leaf page but does not check if it is empty.

Fixes #429, #450
2015-11-05 22:39:15 -07:00
Ben Johnson
47d80ed8a4 Merge pull request #451 from Charlesworth/master
updated README.md to fix typo
2015-11-03 09:07:54 -07:00
Charlie Cochrane
13944fb3e3 updated README.md to fix typo 2015-11-03 14:04:31 +00:00
Ben Johnson
119858097e Merge pull request #419 from raggi/windows-flock
windows: implement file locking
2015-10-28 12:21:53 -06:00
Ben Johnson
b95be7b997 Merge pull request #447 from benbjohnson/max-value-size
Lower MaxValue to 2GB
2015-10-28 12:20:47 -06:00
Ben Johnson
1786b6ae2f lower MaxValue to 2GB
This commit changes the maximum value size to 2GB so that tests can
run on 32-bit machines. There's really no reason to write a 2GB+
value to Bolt. It's not terribly efficient for large values.
2015-10-28 12:16:16 -06:00
Ben Johnson
a54ef72d71 Merge branch 'hvnsweeting-hvn-fix-doc' 2015-10-28 12:00:09 -06:00
Hung Nguyen Viet
40aeece092 typo and highlight 2015-10-28 11:59:29 -06:00
Ben Johnson
54e1e44866 Merge pull request #441 from pmezard/document-put-constraint
bucket: document Put() value must remain valid for the transaction
2015-10-28 11:54:20 -06:00
Ben Johnson
b4e20916f6 Merge pull request #445 from benbjohnson/reading
README: Add 'Reading the Source' section
2015-10-27 15:35:26 -06:00
Ben Johnson
54254e97b9 README: add 'Reading the Source' section
This commit adds a section to help people understand the
source better while reading it.
2015-10-24 13:31:18 -06:00
Ben Johnson
ee716d1410 Merge pull request #431 from brahmaroutu/support_power_z
adding seperate files to compile on IBM Power and Z
v1.1.0
2015-10-21 15:23:03 -06:00
Ben Johnson
12af751e86 Merge pull request #444 from pmezard/doc-bucket-lifetime
bucket: document buckets are valid only during the transaction
2015-10-21 09:30:33 -06:00
Patrick Mezard
e05e34c332 bucket: document buckets are valid only during the transaction
Issue #313
2015-10-21 10:55:50 +02:00
Ben Johnson
09dda9940c Merge pull request #442 from pmezard/mention-address-space-consumption
README: mention the memory map consumes a lot of address space
2015-10-20 12:05:15 -06:00
Patrick Mezard
b7f23b8e55 README: mention the memory map consumes a lot of address space
I have been bitten by this when running a simple application on a
Raspberry Pi 2. It had 3 stores: two 512M stores and one 128M. The
application refused to start the moment the first index grew from 512M
to 1G.

Bolt is really nice but it is easy to overlook this limitation,
especially with the note about supporting stores much larger than
*physical* memory.
2015-10-20 14:08:43 +02:00
Ben Johnson
07070579bd Merge pull request #439 from MJDSys/speed_up_test
In TestBucket_Delete_FreelistOverflow, use Cursor.Delete to remove records.
2015-10-19 08:38:39 -06:00
Ben Johnson
449a2c249d Merge pull request #440 from rogierlommers/master
Add example of NextSequence() usage to readme
2015-10-19 08:35:24 -06:00
Patrick Mezard
f8d7ef20e6 bucket: document Put() value must remain valid for the transaction
Issue #324
2015-10-19 10:42:28 +02:00
Rogier Lommers
1af2ec9768 Add example of NextSequence() usage to readme 2015-10-18 15:00:36 +02:00
Matthew Dawson
a0c33d065b In TestBucket_Delete_FreelistOverflow, use Cursor.Delete to remove records.
When removing all the keys from the bucket, use Cursor.Delete directly, which
avoids a seek through the bucket to find the element to delete.  This knocks
1/5 of the time off my laptop when running this test while not reducing the
amount of overflow pages cleared out of the free list.
2015-10-17 14:04:42 -04:00
Ben Johnson
b05ba12bcb Merge pull request #437 from shaggytwodope/master
small typos
2015-10-14 15:29:50 -06:00
John ShaggyTwoDope Jenkins
a7a29a20cd typos 2015-10-13 17:14:11 -07:00
Ben Johnson
14ea02b7ee Merge pull request #435 from hqhq/hq_add_arm64
Add support for arm64
2015-10-09 08:39:41 -06:00
Qiang Huang
503413c015 Add support for arm64
Added build tag for arm64, so we won't get any errors on other
platforms with go 1.4.x.

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2015-10-09 10:29:22 +08:00
Srini Brahmaroutu
721cf88e1b adding seperate files to compile on IBM Power and Z
Signed-off-by: Srini Brahmaroutu <srbrahma@us.ibm.com>
2015-10-03 00:35:02 +00:00
Ben Johnson
51f99c8624 Merge pull request #428 from lukechampine/patch-1
Document undefined behavior in ForEach
2015-09-21 14:14:00 -06:00
Ben Johnson
ebe1067083 Merge pull request #427 from joyrexus/master
Add two little projects to README project list
2015-09-21 14:13:13 -06:00
Luke Champine
5f9559f227 Document undefined behavior in ForEach 2015-09-21 15:49:06 -04:00
Jason Voigt
130d6c5d98 add stow and buckets to projects list 2015-09-21 13:31:50 -05:00
James Tucker
1cb787ee7b windows: implement file locking 2015-09-16 09:28:26 -03:00
Ben Johnson
033d4ec028 Merge pull request #418 from benbjohnson/revert-arm64
Revert arm64 change
2015-09-09 15:26:31 -06:00
Ben Johnson
a74efb5d16 revert arm64 change
This commit removes the arm64 change because it caused issues
with Go 1.4.

Fixes #416.
2015-09-09 15:16:17 -06:00
Ben Johnson
9f37fd92c7 Merge pull request #414 from jefby/jefby
add bolt_arm64.go for arm64
2015-09-09 13:14:45 -06:00
jefby
69f6bd2f78 add bolt_arm64.go for arm64
Signed-off-by: jefby <jef199006@gmail.com>
2015-09-08 10:48:40 +08:00
Ben Johnson
0c24824a36 Merge pull request #413 from benbjohnson/release-rwtx
Release read-write Tx after close
2015-09-04 15:04:52 -06:00
Ben Johnson
4c92e3fa22 release read-write tx after close
This commit removes references to the last write transaction and
and its dirty pages after the transaction has been closed. This
bug did not affect the safety of the data, however, it would
cause dirty pages to linger in-memory until the next write
transaction began.
2015-09-04 13:07:06 -06:00
Ben Johnson
90fef389f9 Merge pull request #411 from Apsalar/solaris-mmap-flock-fixes
solaris: fix issues with mmap, munmap, madvise and flock
2015-08-24 19:23:40 -06:00
Ken Sedgwick
2f4ba1c533 solaris: fix issues with mmap, munmap, madvise and flock 2015-08-21 14:44:13 -07:00
Ben Johnson
0f053fabc0 Merge pull request #405 from artyom/bolt-command-prints-fix
Fix invalid fmt.Fprintln/Errorf calls
2015-08-11 08:05:07 -06:00
Artyom Pervukhin
8547e9ef2f Fix invalid fmt.Fprintln/Errorf calls
`go vet` discovered two calls of Fprintln with trailing newline and one
Errorf call without proper format string.
2015-08-11 11:35:43 +03:00
Ben Johnson
c2745b3c62 Merge pull request #403 from tv42/readme-bazil
Better URL for Bazil in README
2015-07-31 10:25:20 -06:00
Tommi Virtanen
df7ec9554b Better URL for Bazil in README 2015-07-29 16:39:44 -07:00