mirror of
https://github.com/lightningnetwork/lnd.git
synced 2025-09-27 19:16:20 +02:00
In this commit, we update the `tlv` package version which includes type constraints on the `tlv.SizeBigSize` method parameter. This exposes a bug in the MilliSatoshi Record method which is fixed here. This was not caught in tests before since currently only our TLV encoding code makes use of this SizeFunc (so we would write 0 size to disk) but then when we read the bytes from disk and decode, we dont use the SizeFunc and our MilliSatoshi decode method makes direct use of the `tlv.DBigSize` function which _currently does not make use of the `l` length variable passed to it_. So it currently does correctly read the data.
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