lnd.xprv/channeldb
Olaoluwa Osuntokun 3e67321aa7
channeldb: fix bucket creation hierarchy in createChannelDB
In this commit, we fix a bug in the bucket creation code in
createChannelDB. This bug can cause migrations on older nodes to fail,
as we expect the bucket to already have been created. With this commit,
we ensure that all the buckets under the main node and edges bucket are
properly created. Otherwise, a set of the newer migrations will fail to
apply for nodes updating from 0.4.
2018-09-09 15:49:28 -07:00
..
addr_test.go multi: fix linting errors 2018-08-02 18:20:50 -07:00
addr.go channledb/addr: remove silent encoding failure for unknown types 2018-07-03 17:07:10 -07:00
channel_test.go channeldb: extend TestFetchClosedChannels to populate local chan cfg properly 2018-08-14 19:11:41 -07:00
channel.go channeldb: remove unused fwdPackageLogBucket key 2018-09-09 15:47:52 -07:00
codec.go multi: sort import paths with gofmt 2018-08-02 18:20:49 -07:00
db_test.go channeldb/db_test: move migration helper back to meta_test 2018-08-21 19:23:23 -07:00
db.go channeldb: fix bucket creation hierarchy in createChannelDB 2018-09-09 15:49:28 -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 limit on the max number of opaque bytes per announcement 2018-09-04 20:52:45 -07:00
fees.go channeldb: create new channeldb package, update lnwallet to use new API 2015-12-26 12:35:15 -06:00
forwarding_log_test.go channeldb: add a set of initial tests for the ForwardingLog 2018-03-06 13:56:09 -05:00
forwarding_log.go channeldb/forwarding_log: use public Read/WriteElements 2018-07-03 17:07:09 -07:00
forwarding_package_test.go multi: sort import paths with gofmt 2018-08-02 18:20:49 -07:00
forwarding_package.go channeldb/forwarding_package: loosen Add/SettleFailRef acking 2018-08-21 00:30:23 -07:00
graph_test.go Merge pull request #1825 from Roasbeef/extra-gossip-message-data 2018-09-05 17:53:02 -07:00
graph.go Merge pull request #1825 from Roasbeef/extra-gossip-message-data 2018-09-05 17:53:02 -07:00
invoice_test.go channeldb: support querying for invoices within a specific time range 2018-08-21 18:00:08 -07:00
invoices.go channeldb: support querying for invoices within a specific time range 2018-08-21 18:00:08 -07:00
log.go lnd: remove seelog logger 2017-06-25 14:19:56 +01:00
meta_test.go channeldb/meta_test: restore migration helper + godocs 2018-08-21 19:23:23 -07:00
meta.go build+multi: switch from bolt to bbolt 2018-03-10 19:01:13 -08:00
migrations_test.go channeldb/migrations_test: assert locally-sourced circuits... 2018-08-21 19:23:25 -07:00
migrations.go channeldb: add migration to properly prune edge update index 2018-09-04 18:33:43 -07:00
nodes_test.go channeldb: add DeleteLinkNode method 2018-07-17 17:35:25 -07:00
nodes.go multi: fix linting errors 2018-08-02 18:20:50 -07:00
payments_test.go channeldb: test of payment statuses transitions 2018-08-21 19:23:21 -07:00
payments.go channeldb/payments: make payment status helper methods 2018-08-21 19:23:25 -07:00
README.md build+multi: switch from bolt to bbolt 2018-03-10 19:01:13 -08:00
waitingproof_test.go channeldb: use raw pub keys and signatures directly in vertex/edge structs 2018-02-06 20:14:31 -08:00
waitingproof.go channeldb/waitingproof: improve external consistency of store 2018-06-05 21:33:47 -07:00
witness_cache_test.go channeldb: add new WitnessCache structure 2018-01-22 19:19:37 -08:00
witness_cache.go build+multi: switch from bolt to bbolt 2018-03-10 19:01:13 -08: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