lnd.xprv/channeldb
nsa 61a1ab08fb routing+channeldb: findPath uses Vertex instead of LightningNode
This commit modifies the nodeWithDist struct to use a route.Vertex
instead of a *channeldb.LightningNode. This change, coupled with
the new ForEachNodeChannel function, allows the findPath Djikstra's
algorithm to cut down on database lookups since we no longer need
to call the FetchOtherNode function.
2019-07-12 06:08:01 -04:00
..
addr_test.go channeldb/addr_test: add tests for invalid onion addresses 2019-01-17 14:16:15 +01:00
addr.go channeldb/addr: sanity check onion address length before writing to db 2019-01-17 14:16:15 +01:00
channel_cache_test.go channeldb/channel_cache: add channelCache w/ randomized eviction 2019-04-01 16:25:31 -07:00
channel_cache.go channeldb/channel_cache: add channelCache w/ randomized eviction 2019-04-01 16:25:31 -07:00
channel_test.go multi: move CsvDelay into ChannelConstraints 2019-01-11 16:58:15 -08:00
channel.go channeldb: avoid modifying bucket during cursor traversal 2019-06-14 21:09:03 +02:00
codec.go channeldb/codec: add privateKey serialization 2019-05-27 20:18:56 +02:00
db_test.go channeldb: ensure restored channels can't be mutated 2019-01-28 20:24:48 -08:00
db.go channeldb/migration: add migration for new payment bucket structure 2019-05-27 20:18:56 +02: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+routing: extend edge lookup methods with zombie index check 2019-03-27 13:06:57 -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 multi: switch from bolt packge to bbolt package for all imports 2018-11-29 20:33:49 -08:00
forwarding_package_test.go multi: switch from bolt packge to bbolt package for all imports 2018-11-29 20:33:49 -08:00
forwarding_package.go multi: switch from bolt packge to bbolt package for all imports 2018-11-29 20:33:49 -08:00
graph_test.go channeldb/graph: don't nil curve of returned PubKey 2019-05-09 10:49:58 +02:00
graph.go routing+channeldb: findPath uses Vertex instead of LightningNode 2019-07-12 06:08:01 -04:00
invoice_test.go invoices+channeldb: move invoice state check to invoiceregistry 2019-06-10 16:12:08 +02:00
invoices.go invoices+channeldb: move invoice state check to invoiceregistry 2019-06-10 16:12:08 +02:00
legacy_serialization.go channeldb: move deprecated code to migration_09_legacy_serialization.go 2019-05-27 20:18:59 +02:00
log.go multi: init subsystem loggers via build pkg 2018-10-05 13:04:45 +09:00
meta_test.go channeldb test: add TestOutgoingPaymentsMigration 2019-05-27 20:18:57 +02:00
meta.go multi: switch from bolt packge to bbolt package for all imports 2018-11-29 20:33:49 -08:00
migration_09_legacy_serialization.go channeldb+multi: rename Grounded->Unknown, Completed->Succeeded 2019-05-27 20:18:59 +02:00
migrations_test.go channeldb+multi: rename Grounded->Unknown, Completed->Succeeded 2019-05-27 20:18:59 +02:00
migrations.go channeldb/migrations: skip migration for empty outgoing payments bucket 2019-06-18 21:14:16 +02:00
nodes_test.go channeldb: add DeleteLinkNode method 2018-07-17 17:35:25 -07:00
nodes.go channeldb: add new AddrsForNode method 2019-01-28 20:24:22 -08:00
options.go channeldb/options: add Options w/ functional modifiers 2019-04-01 16:33:13 -07:00
payment_control_test.go routing+routerrpc+channeldb: return route on invalid payment details 2019-07-04 09:27:16 +02:00
payment_control.go routing+routerrpc+channeldb: return route on invalid payment details 2019-07-04 09:27:16 +02:00
payments_test.go channeldb: move deprecated code to migration_09_legacy_serialization.go 2019-05-27 20:18:59 +02:00
payments.go routing+channeldb: add more failure reasons 2019-07-04 09:27:12 +02:00
README.md build+multi: switch from bolt to bbolt 2018-03-10 19:01:13 -08:00
reject_cache_test.go channeldb/reject_cache: add rejectCache w/ randomized eviction 2019-04-01 16:25:31 -07:00
reject_cache.go channeldb/reject_cache: add rejectCache w/ randomized eviction 2019-04-01 16:25:31 -07: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 multi: switch from bolt packge to bbolt package for all imports 2018-11-29 20:33:49 -08:00
witness_cache_test.go channeldb+witness_beacon: use sha256 lookup+delete witness 2019-02-19 17:06:42 -08:00
witness_cache.go channeldb+witness_beacon: use sha256 lookup+delete witness 2019-02-19 17:06:42 -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