mirror of
https://github.com/tendermint/tendermint.git
synced 2026-01-05 04:55:18 +00:00
Description:
add boltdb implement for db interface.
The boltdb is safe and high performence embedded KV database. It is based on B+tree and Mmap.
Now it is maintained by etcd-io org. https://github.com/etcd-io/bbolt
It is much better than LSM tree (levelDB) when RANDOM and SCAN read.
Replaced #3604
Refs #1835
Commits:
* add boltdb for storage
* update boltdb in gopkg.toml
* update bbolt in Gopkg.lock
* dep update Gopkg.lock
* add boltdb'bucket when create Boltdb
* some modifies
* address my own comments
* fix most of the Iterator tests for boltdb
* bolt does not support concurrent writes while iterating
* add WARNING word
* note that ReadOnly option is not supported
* fixes after Ismail's review
Co-Authored-By: melekes <anton.kalyaev@gmail.com>
* panic if View returns error
plus specify bucket in the top comment
98 lines
2.0 KiB
TOML
98 lines
2.0 KiB
TOML
# Gopkg.toml example
|
|
#
|
|
# Refer to https://github.com/golang/dep/blob/master/docs/Gopkg.toml.md
|
|
# for detailed Gopkg.toml documentation.
|
|
#
|
|
# required = ["github.com/user/thing/cmd/thing"]
|
|
# ignored = ["github.com/user/project/pkgX", "bitbucket.org/user/project/pkgA/pkgY"]
|
|
#
|
|
# [[constraint]]
|
|
# name = "github.com/user/project"
|
|
# version = "1.0.0"
|
|
#
|
|
# [[override]]
|
|
# name = "github.com/x/y"
|
|
# version = "2.4.0"
|
|
#
|
|
# [prune]
|
|
# non-go = false
|
|
# go-tests = true
|
|
# unused-packages = true
|
|
#
|
|
###########################################################
|
|
|
|
# Allow only patch releases for serialization libraries
|
|
[[constraint]]
|
|
name = "github.com/etcd-io/bbolt"
|
|
version = "v1.3.2"
|
|
|
|
[[constraint]]
|
|
name = "github.com/tendermint/go-amino"
|
|
version = "~0.14.1"
|
|
|
|
[[constraint]]
|
|
name = "github.com/gogo/protobuf"
|
|
version = "~1.2.1"
|
|
|
|
[[constraint]]
|
|
name = "github.com/golang/protobuf"
|
|
version = "~1.3.0"
|
|
|
|
# Allow only minor releases for other libraries
|
|
[[constraint]]
|
|
name = "github.com/go-kit/kit"
|
|
version = "^0.6.0"
|
|
|
|
[[constraint]]
|
|
name = "github.com/gorilla/websocket"
|
|
version = "^1.2.0"
|
|
|
|
[[constraint]]
|
|
name = "github.com/rs/cors"
|
|
version = "^1.6.0"
|
|
|
|
[[constraint]]
|
|
name = "github.com/pkg/errors"
|
|
version = "^0.8.0"
|
|
|
|
[[constraint]]
|
|
name = "github.com/spf13/cobra"
|
|
version = "^0.0.1"
|
|
|
|
[[constraint]]
|
|
name = "github.com/spf13/viper"
|
|
version = "^1.0.0"
|
|
|
|
[[constraint]]
|
|
name = "github.com/stretchr/testify"
|
|
version = "^1.2.1"
|
|
|
|
[[constraint]]
|
|
name = "google.golang.org/grpc"
|
|
version = "^1.13.0"
|
|
|
|
[[constraint]]
|
|
name = "github.com/fortytw2/leaktest"
|
|
version = "^1.2.0"
|
|
|
|
[[constraint]]
|
|
name = "github.com/prometheus/client_golang"
|
|
version = "^0.9.1"
|
|
|
|
[[constraint]]
|
|
name = "github.com/jmhodges/levigo"
|
|
version = "^1.0.0"
|
|
|
|
###################################
|
|
## Repos which don't have releases.
|
|
|
|
## - github.com/btcsuite/btcd
|
|
## - golang.org/x/crypto
|
|
## - github.com/btcsuite/btcutil
|
|
## - github.com/rcrowley/go-metrics
|
|
## - golang.org/x/net
|
|
|
|
[prune]
|
|
go-tests = true
|
|
unused-packages = true
|