lnd.xprv/channeldb
Olaoluwa Osuntokun bcde70e74a
channeldb: fix bug when writing revocation log states
This commit fixes a bug that was introduced when we moved to using
64-bit integers for storing the revocation log state. When we made this
change, we forgot to increase the size of the buffer which stores the
key for the particular channel state from 40 to 44 bytes to account for
the 4 additional bytes in the new 64-bit integer.

This bug has been fixed by properly sizing the key buffer. We’ve also
added an additional test to ensure that we retrieve the proper state
after multiple state updates.
2017-02-21 01:43:31 -08:00
..
channel_test.go channeldb: fix bug when writing revocation log states 2017-02-21 01:43:31 -08:00
channel.go channeldb: fix bug when writing revocation log states 2017-02-21 01:43:31 -08:00
db_test.go channeldb: fix warnings found by go vet 2017-02-07 16:52:04 -08:00
db.go channedb: add db migration for databases before delivery script bug fix 2017-02-08 13:05:45 -08:00
doc.go channeldb: create new channeldb package, update lnwallet to use new API 2015-12-26 12:35:15 -06:00
error.go channeldb: add support for channel graph pruning 2016-12-27 16:43:12 -08:00
fees.go channeldb: create new channeldb package, update lnwallet to use new API 2015-12-26 12:35:15 -06:00
graph_test.go multi: update btcsuite API's to latest upstream changes 2017-01-05 13:56:34 -08:00
graph.go channeldb: fix panic in query for nonexistent channel ID 2017-01-22 14:28:36 -08:00
invoice_test.go channeldb: ensure the cleanUp func is always run during tests 2016-12-27 16:43:17 -08:00
invoices.go multi: fix a variety of typos throughout the repo 2017-01-17 17:02:56 -08:00
log.go multi: create lnd's logging infrastructure 2016-03-22 18:43:10 -07:00
meta_test.go channedb: add db migration for databases before delivery script bug fix 2017-02-08 13:05:45 -08:00
meta.go channeldb: slightly refactor the [Fetch|Put]Meta methods 2016-11-27 18:44:23 -08:00
migrations.go channedb: add db migration for databases before delivery script bug fix 2017-02-08 13:05:45 -08:00
nodes_test.go channeldb: add bucket for storing p2p counterparty meta-data 2016-10-25 16:06:32 -07:00
nodes.go channeldb: fix warnings found by go vet 2017-02-07 16:52:04 -08:00
payments_test.go channeldb: modify new payments module to match project code-style 2016-12-30 16:32:25 -08:00
payments.go channeldb: modify new payments module to match project code-style 2016-12-30 16:32:25 -08:00
README.md multi: add link to LICENSE in README license badges (#100) 2017-01-12 16:31:08 -08:00

channeldb

[Build Status] (https://travis-ci.org/lightningnetwork/lnd) [MIT licensed] (https://github.com/lightningnetwork/lnd/blob/master/LICENSE) [GoDoc] (http://godoc.org/github.com/lightningnetwork/lnd/channeldb)

The channeldb implements the persistent storage engine for lnd and generically a data storage layer for the required state within the Lightning Network. The backing storage engine is boltdb, an embedded pure-go key-value store based off of LMDB.

The package implements an object-oriented storage model with queries and mutations flowing through a particular object instance rather than the database itself. The storage implemented by the objects includes: open channels, past commitment revocation states, the channel graph which includes authenticated node and channel announcements, outgoing payments, and invoices

Installation and Updating

$ go get -u github.com/lightningnetwork/lnd/channeldb