From 13d0bd5ef69ac63b3c90f3b19ad89e0c951ed92e Mon Sep 17 00:00:00 2001 From: Elle Mouton Date: Fri, 11 Jul 2025 11:03:22 +0200 Subject: [PATCH] graph/db: let ForEachChannelCacheable take a reset param --- graph/db/graph.go | 3 ++- graph/db/interfaces.go | 4 ++-- graph/db/kv_store.go | 5 ++--- graph/db/sql_store.go | 5 ++--- 4 files changed, 8 insertions(+), 9 deletions(-) diff --git a/graph/db/graph.go b/graph/db/graph.go index c0a4f52b6..e902896d7 100644 --- a/graph/db/graph.go +++ b/graph/db/graph.go @@ -182,7 +182,8 @@ func (c *ChannelGraph) populateCache(ctx context.Context) error { c.graphCache.AddChannel(info, policy1, policy2) return nil - }) + }, func() {}, + ) if err != nil { return err } diff --git a/graph/db/interfaces.go b/graph/db/interfaces.go index f4cbb475d..756d7b1f2 100644 --- a/graph/db/interfaces.go +++ b/graph/db/interfaces.go @@ -177,8 +177,8 @@ type V1Store interface { //nolint:interfacebloat // NOTE: this method is like ForEachChannel but fetches only the data // required for the graph cache. ForEachChannelCacheable(cb func(*models.CachedEdgeInfo, - *models.CachedEdgePolicy, - *models.CachedEdgePolicy) error) error + *models.CachedEdgePolicy, *models.CachedEdgePolicy) error, + reset func()) error // DisabledChannelIDs returns the channel ids of disabled channels. // A channel is disabled when two of the associated ChanelEdgePolicies diff --git a/graph/db/kv_store.go b/graph/db/kv_store.go index 020d7d3d3..8dab73cdf 100644 --- a/graph/db/kv_store.go +++ b/graph/db/kv_store.go @@ -486,9 +486,8 @@ func forEachChannel(db kvdb.Backend, cb func(*models.ChannelEdgeInfo, // NOTE: this method is like ForEachChannel but fetches only the data required // for the graph cache. func (c *KVStore) ForEachChannelCacheable(cb func(*models.CachedEdgeInfo, - *models.CachedEdgePolicy, *models.CachedEdgePolicy) error) error { - - reset := func() {} + *models.CachedEdgePolicy, *models.CachedEdgePolicy) error, + reset func()) error { return c.db.View(func(tx kvdb.RTx) error { edges := tx.ReadBucket(edgeBucket) diff --git a/graph/db/sql_store.go b/graph/db/sql_store.go index 58f29a75e..33328c0ba 100644 --- a/graph/db/sql_store.go +++ b/graph/db/sql_store.go @@ -1236,10 +1236,9 @@ func (s *SQLStore) ForEachNodeCached(ctx context.Context, // NOTE: this method is like ForEachChannel but fetches only the data // required for the graph cache. func (s *SQLStore) ForEachChannelCacheable(cb func(*models.CachedEdgeInfo, - *models.CachedEdgePolicy, - *models.CachedEdgePolicy) error) error { + *models.CachedEdgePolicy, *models.CachedEdgePolicy) error, + reset func()) error { - reset := func() {} ctx := context.TODO() handleChannel := func(db SQLQueries,