lnd.xprv/channeldb
Wilmer Paulino 492d581df6
channeldb/graph: fix off-by-one public key slice
In this commit, we fix an off-by-one error when slicing the public key
from the serialized node info byte slice. This would cause us to write
an extra byte to all edge policies. Even though the values were read
correctly, when attempting to calculate the offset of an edge's update
time going backwards, we'd always be incorrect, causing us to not
properly prune the edge update index.
2018-09-04 18:31:38 -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/channel: adds readLogKey for chanids 2018-08-21 00:30:26 -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/db: add comment describing migration 2018-08-21 19:23: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/error: adds ErrDBReversion error 2018-08-02 16:45:03 -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 channeldb: add new TestNodePruningUpdateIndexDeletion test 2018-08-16 18:20:58 -07:00
graph.go channeldb/graph: fix off-by-one public key slice 2018-09-04 18:31:38 -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/migrations: mark locally-sourced payments as InFlight... 2018-08-21 19:23:25 -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