lnd.xprv/channeldb
Conner Fromknecht 3b253e05f6
multi: restructure invoice Terms field
This commit restructures an invoice's ContractTerms to better encompass
the restrictions placed on settling. For instance, the final ctlv delta
and invoice expiry are moved from the main invoice body (where
additional metadata is stored). Additionally, it moves the State field
outside of the terms since it is rather metadata about the invoice
instead of any terms offered to the sender in the payment request.
2019-11-22 02:25:02 -08:00
..
migration_01_to_11 multi: remove LocalFeatures and GlobalFeatures 2019-11-08 05:32:00 -08:00
migration12 channeldb: complete migration 12 for TLV invoices 2019-11-22 02:24:28 -08:00
migtest channeldb/migration12: add tlv invoice migration tests 2019-11-22 02:24:11 -08: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: convert the existing channeldb.ChannelType uint8 into a bit field 2019-10-31 16:34:37 -07:00
channel.go multi: convert the existing channeldb.ChannelType uint8 into a bit field 2019-10-31 16:34:37 -07:00
codec.go channeldb: Fix dropped error in migrations test 2019-09-12 15:49:21 +00:00
db_test.go channeldb: add new AbandonChannel method 2019-11-20 17:42:49 -08:00
db.go channeldb: complete migration 12 for TLV invoices 2019-11-22 02:24:28 -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 Revert "channeldb: require minimum db upgrade version" 2019-10-12 14:30:26 -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: remove dead code 2019-09-10 17:21:59 +02:00
graph_test.go multi: remove LocalFeatures and GlobalFeatures 2019-11-08 05:32:00 -08:00
graph.go multi: remove LocalFeatures and GlobalFeatures 2019-11-08 05:32:00 -08:00
invoice_test.go multi: restructure invoice Terms field 2019-11-22 02:25:02 -08:00
invoices.go multi: restructure invoice Terms field 2019-11-22 02:25:02 -08:00
legacy_serialization.go Revert "channeldb: remove unsupported migrations" 2019-10-12 00:47:45 -07:00
log.go channeldb: complete migration 12 for TLV invoices 2019-11-22 02:24:28 -08:00
meta_test.go channeldb: log error for migration test failures 2019-09-28 08:23:49 +02:00
meta.go multi: switch from bolt packge to bbolt package for all imports 2018-11-29 20:33:49 -08:00
mp_payment.go channeldb: add MPPayment from FetchPayments 2019-11-19 20:41:08 -08: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: add freelist sync option modifier 2019-10-04 12:19:41 -04:00
payment_control_test.go channeldb+routing: expose HTLCs in payment subscriptions 2019-11-19 20:43:38 -08:00
payment_control.go channeldb+routing: expose HTLCs in payment subscriptions 2019-11-19 20:43:38 -08:00
payments_test.go routing/route/route: add optional MPP field to Hop 2019-11-04 14:11:28 -08:00
payments.go channeldb+routing: expose HTLCs in payment subscriptions 2019-11-19 20:43:38 -08: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: Fix dropped error in migrations test 2019-09-12 15:49:21 +00: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