Files
lnd/channeldb
positiveblue c602ac07e7 chainntnfs: move cache implementation to channeldb
This commit moves the `HeightHintCache` implementation to the
`channeldb` package and inverts the dependency relation between
`chainntnfs` and `channeldb`.

Many packages depend on channeldb for type definitions,
interfaces, etc. `chainntnfs` is an example of that. `chainntnfs`
defines the  `SpendHintCache` and `ConfirmHintCache` interfaces but
it also implments them (`HeightHintCache` struct). The implementation
uses logic that should not leak from channeldb (ex: bucket paths).
This makes our code highly coupled + it would not allow us to use any
of these interfaces in a package that is imported by `channeldb`
(circular dependency).
2023-01-16 03:13:17 -08:00
..
2022-08-23 22:10:24 +08:00
2022-08-23 22:10:24 +08:00
2022-08-23 22:10:24 +08:00
2022-08-23 22:10:24 +08:00
2022-10-27 16:43:09 +02:00
2022-11-18 20:48:23 +08:00
2022-10-27 16:42:36 +02:00
2022-10-27 16:43:09 +02:00
2022-01-24 12:19:02 +02:00
2022-08-23 22:10:24 +08:00
2022-08-23 22:10:24 +08:00
2022-02-10 11:02:01 +01:00
2022-08-23 22:10:24 +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