watchtower/wtdb: add new towerID-to-sessionID index

This commit adds a new towerID-to-sessionID index to the wtclient DB.
The commit also contains the necessary migration required in order to
build the index for an existing client.
This index will greatly improve the lookup of sessions for a given tower
ID.
This commit is contained in:
Elle Mouton committed 2022-10-13 11:30:27 +02:00
1 parent c60ecaccbf
commit 354a3b16bd
7 files changed
+620 -2

No files matched your search

+6 -1
View File
@@ -3,6 +3,7 @@ package wtdb
import (
"github.com/lightningnetwork/lnd/channeldb"
"github.com/lightningnetwork/lnd/kvdb"
"github.com/lightningnetwork/lnd/watchtower/wtdb/migration1"
)
// migration is a function which takes a prior outdated version of the database
@@ -24,7 +25,11 @@ var towerDBVersions = []version{}
// clientDBVersions stores all versions and migrations of the client database.
// This list will be used when opening the database to determine if any
// migrations must be applied.
var clientDBVersions = []version{}
var clientDBVersions = []version{
{
migration: migration1.MigrateTowerToSessionIndex,
},
}
// getLatestDBVersion returns the last known database version.
func getLatestDBVersion(versions []version) uint32 {