https://github.com/etcd-io/bbolt

Last synced: about 1 month ago

Repository metadata:

An embedded key/value database for Go.


Owner metadata:


Committers metadata

Last synced: about 1 month ago

Total Commits: 1,039
Total Committers: 232
Avg Commits per committer: 4.478
Development Distribution Score (DDS): 0.717

Commits in past year: 161
Committers in past year: 29
Avg Commits per committer in past year: 5.552
Development Distribution Score (DDS) in past year: 0.745

Name Email Commits
Ben Johnson b****n@y****m 294
Benjamin Wang w****o@v****m 100
dependabot[bot] 4****] 57
Martin Kobetic m****c@g****m 46
Benjamin Wang b****r@g****m 41
Piotr Tabor p****b@g****m 32
Wei Fu f****9@g****m 25
Ivan Valdes i****n@v****s 19
Anthony Romano a****o@c****m 18
Gyuho Lee l****o@a****m 16
Mustafa Elbehery m****r@r****m 15
Tommi Virtanen tv@e****t 13
Thomas Jungblut t****u@r****m 13
Steven Normore s****e@g****m 13
James Blair m****l@j****t 13
Cenk Alti c****i@g****m 11
Gyu-Ho Lee g****x@g****m 11
Josh Rickmar j****k@c****m 7
Ishan Tyagi i****5@g****m 7
Manuel Rüger m****l@r****u 6
Chun-Hung Tseng h****7@g****m 6
Josh Bleecher Snyder j****n@g****m 6
Xingyu Chen w****y@h****m 5
Xiang Li x****s@g****m 5
sasha-s s****a@s****m 4
lorneli l****i@1****m 4
Joe Betz j****z@g****m 4
Rodolfo Carvalho r****o@g****m 4
ArkaSaha30 a****0@g****m 3
Marek Siarkowicz s****z@g****m 3
and 202 more...

Issue and Pull Request metadata

Last synced: about 1 month ago


Package metadata

go: go.etcd.io/bbolt

package bbolt implements a low-level key/value store in pure Go. It supports fully serializable transactions, ACID semantics, and lock-free MVCC with multiple readers and a single writer. Bolt can be used for projects that want a simple data store without the need to add large dependencies such as Postgres or MySQL. Bolt is a single-level, zero-copy, B+tree data store. This means that Bolt is optimized for fast read access and does not require recovery in the event of a system crash. Transactions which have not finished committing will simply be rolled back in the event of a crash. The design of Bolt is based on Howard Chu's LMDB database project. Bolt currently works on Windows, Mac OS X, and Linux. There are only a few types in Bolt: DB, Bucket, Tx, and Cursor. The DB is a collection of buckets and is represented by a single file on disk. A bucket is a collection of unique keys that are associated with values. Transactions provide either read-only or read-write access to the database. Read-only transactions can retrieve key/value pairs and can use Cursors to iterate over the dataset sequentially. Read-write transactions can create and delete buckets and can insert and remove keys. Only one read-write transaction is allowed at a time. The database uses a read-only, memory-mapped data file to ensure that applications cannot corrupt the database, however, this means that keys and values returned from Bolt cannot be changed. Writing to a read-only byte slice will cause Go to panic. Keys and values retrieved from the database are only valid for the life of the transaction. When used outside the transaction, these byte slices can point to different data or can point to invalid memory which will cause a panic.

  • Homepage: https://github.com/etcd-io/bbolt
  • Documentation: https://pkg.go.dev/go.etcd.io/bbolt#section-documentation
  • Licenses: MIT
  • Latest release: v1.3.8 (published about 1 year ago)
  • Last Synced: 2024-11-11T19:31:22.452Z (about 1 month ago)
  • Versions: 26
  • Dependent Packages: 16,002
  • Dependent Repositories: 73,855
  • Docker Downloads: 18,972,469,428
  • Rankings:
    • Dependent packages count: 0.011%
    • Dependent repos count: 0.017%
    • Docker downloads count: 0.024%
    • Average: 0.431%
    • Stargazers count: 0.83%
    • Forks count: 1.275%
go: github.com/etcd-io/bbolt

package bbolt implements a low-level key/value store in pure Go. It supports fully serializable transactions, ACID semantics, and lock-free MVCC with multiple readers and a single writer. Bolt can be used for projects that want a simple data store without the need to add large dependencies such as Postgres or MySQL. Bolt is a single-level, zero-copy, B+tree data store. This means that Bolt is optimized for fast read access and does not require recovery in the event of a system crash. Transactions which have not finished committing will simply be rolled back in the event of a crash. The design of Bolt is based on Howard Chu's LMDB database project. Bolt currently works on Windows, Mac OS X, and Linux. There are only a few types in Bolt: DB, Bucket, Tx, and Cursor. The DB is a collection of buckets and is represented by a single file on disk. A bucket is a collection of unique keys that are associated with values. Transactions provide either read-only or read-write access to the database. Read-only transactions can retrieve key/value pairs and can use Cursors to iterate over the dataset sequentially. Read-write transactions can create and delete buckets and can insert and remove keys. Only one read-write transaction is allowed at a time. The database uses a read-only, memory-mapped data file to ensure that applications cannot corrupt the database, however, this means that keys and values returned from Bolt cannot be changed. Writing to a read-only byte slice will cause Go to panic. Keys and values retrieved from the database are only valid for the life of the transaction. When used outside the transaction, these byte slices can point to different data or can point to invalid memory which will cause a panic.

  • Homepage: https://github.com/etcd-io/bbolt
  • Documentation: https://pkg.go.dev/github.com/etcd-io/bbolt#section-documentation
  • Licenses: MIT
  • Latest release: v1.3.8 (published about 1 year ago)
  • Last Synced: 2024-11-11T02:35:15.883Z (about 1 month ago)
  • Versions: 26
  • Dependent Packages: 1,689
  • Dependent Repositories: 4,706
  • Docker Downloads: 3,566,229
  • Rankings:
    • Dependent packages count: 0.089%
    • Dependent repos count: 0.121%
    • Docker downloads count: 0.481%
    • Average: 0.559%
    • Stargazers count: 0.83%
    • Forks count: 1.275%

Dependencies

.github/workflows/failpoint_test.yaml actions
  • actions/checkout v3 composite
  • actions/setup-go v4 composite
.github/workflows/tests.yaml actions
  • actions/checkout v3 composite
  • actions/setup-go v4 composite
  • golangci/golangci-lint-action 639cd343e1d3b897ff35927a75193d57cfcba299 composite
go.mod go
  • github.com/davecgh/go-spew v1.1.1
  • github.com/inconshreveable/mousetrap v1.1.0
  • github.com/pmezard/go-difflib v1.0.0
  • github.com/spf13/cobra v1.7.0
  • github.com/spf13/pflag v1.0.5
  • github.com/stretchr/testify v1.8.4
  • go.etcd.io/gofail v0.1.0
  • golang.org/x/sync v0.3.0
  • golang.org/x/sys v0.10.0
  • gopkg.in/yaml.v3 v3.0.1
go.sum go
  • github.com/cpuguy83/go-md2man/v2 v2.0.2
  • github.com/davecgh/go-spew v1.1.1
  • github.com/inconshreveable/mousetrap v1.1.0
  • github.com/pmezard/go-difflib v1.0.0
  • github.com/russross/blackfriday/v2 v2.1.0
  • github.com/spf13/cobra v1.7.0
  • github.com/spf13/pflag v1.0.5
  • github.com/stretchr/testify v1.8.4
  • go.etcd.io/gofail v0.1.0
  • golang.org/x/sync v0.3.0
  • golang.org/x/sys v0.10.0
  • gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405
  • gopkg.in/yaml.v3 v3.0.1