localchans: recreate missing edge if not found

If a node contains a channel, but doesn't have a corresponding edge in
the graph database, updating the channel policy would fail. In this
commit the edge is recreated if the channel exists. This ensures a node
can recover from a missing edge in the graph database by calling
updatechanpolicy.
This commit is contained in:
Jesse de Wit committed 2024-11-13 12:13:11 +01:00
1 parent aa2ddf77d0
commit bb4d3db8bc
6 files changed
+177 -7

No files matched your search

+1 -1
View File
@@ -7762,7 +7762,7 @@ func (r *rpcServer) UpdateChannelPolicy(ctx context.Context,
// With the scope resolved, we'll now send this to the local channel
// manager so it can propagate the new policy for our target channel(s).
failedUpdates, err := r.server.localChanMgr.UpdatePolicy(chanPolicy,
targetChans...)
req.CreateMissingEdge, targetChans...)
if err != nil {
return nil, err
}