lnd.xprv/channeldb
Olaoluwa Osuntokun bafea35a32
channeldb: expand channel close summaries to include additional data
This commit expands the close summaries within the database to include
additional information such as: how the channel was closed, if the
channel if fully closed, and other balance information. This new
information will be used in an upcoming expansion of the
pendingChannels RPC to display more comprehensive data w.r.t where the
node’s funds are and how soon they’ll be fully available.

The data stored in the closeChannel bucket has been expanded to include
the above. Additionally the CloseChannel method on the OpenChannel
struct now takes in the additional information that details how and who
it was closed by.

This commit borrows heavily from the initial work in #179 by @halseth.
2017-05-04 17:38:58 -07:00
..
channel_test.go channeldb: add new method to channel state, RevocationLogTail 2017-03-24 16:09:14 -07:00
channel.go channeldb: expand channel close summaries to include additional data 2017-05-04 17:38:58 -07:00
db_test.go channeldb: fix warnings found by go vet 2017-02-07 16:52:04 -08:00
db.go lnd: fix latest goclean.sh lint warning 2017-03-13 16:30:23 -07: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 ErrEdgeAlreadyExist error 2017-03-29 19:49:05 -07: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 channeldb: modify ForEachNode/ForEachChannel to accept a db txn 2017-04-14 13:14:09 -07:00
graph.go channeldb: modify ForEachNode/ForEachChannel to accept a db txn 2017-04-14 13:14:09 -07:00
invoice_test.go multi: replace usage of fastsha256 with crypto/sha256 2017-03-15 18:56:41 -07:00
invoices.go multi: replace usage of fastsha256 with crypto/sha256 2017-03-15 18:56:41 -07:00
log.go multi: create lnd's logging infrastructure 2016-03-22 18:43:10 -07:00
meta_test.go lnd: partially fix golint warnings 2017-03-13 16:30:23 -07:00
meta.go lnd: fix gosimple warnings 2017-03-13 16:30:23 -07: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 lnd: fix gosimple warnings 2017-03-13 16:30:23 -07:00
payments_test.go multi: replace usage of fastsha256 with crypto/sha256 2017-03-15 18:56:41 -07:00
payments.go channeldb: use the Batch method when writing payment details 2017-04-11 22:02:09 -07:00
README.md multi: fix formatting issues in packge README's 2017-03-27 16:25:25 -07:00

channeldb

Build Status MIT licensed GoDoc

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