mirror of
https://github.com/aljazceru/breez-lnd.git
synced 2026-01-23 16:24:25 +01:00
In this commit, we made a series of modification to the way we handle reading edges and vertexes from disk, in order to reduce the amount of garbage generated: 1. Properly use PubKeyBytes are required rather than PubKey() 2. Return direct structs rather than pointers, and leave it to the runtime to perform escape analysis. 3. In-line the former readSig() method when reading sigs from disk.
channeldb
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