Skip to content

[bug]: LND when run with neutrino does not purge own channels correctly #10333

@ziggie1984

Description

@ziggie1984

Pre-Submission Checklist

  • I have searched the existing issues and believe this is a new bug.
  • I am not asking a question about how to use lnd, but reporting a bug (otherwise open a discussion).

LND Version

20.0

LND Configuration

lnd.conf:

Backend Version

neutriono

Backend Configuration

OS/Distribution

Bug Details & Steps to Reproduce

LND + Neutrino does not correctly remove own channels from the graph.

My assumption is that the channel is closed and we purge it from the graph, but later we receive a gossip message for this channel and it enables the channel in our graph. Now we start sending out ChanUpdates out for it.

This leads to potential disconnects of peers we have channels with.

Seeing a lot of this in my logs:

2025-10-31 09:47:07.861 [WRN] GRDB: Channel=1005150440578678785 not found in graph cache
2025-10-31 09:47:07.861 [INF] DISC: Retransmitting 1 outgoing channels
2025-10-31 09:47:08.051 [WRN] HSWC: ChannelLink(c9fa5892790f0b00a19aefeb5f8fd81bb9d8d7877cf09f88cc700308d4603acc:1): received warning message from peer: chan_id=0000000000000000000000000000000000000000000000000000000000000000, err=channel
_announcement: no unspent txout 914179x3205x1
--
2025-10-31 10:17:07.911 [WRN] GRDB: Channel=991551680702775308 not found in graph cache
2025-10-31 10:17:07.911 [INF] DISC: Retransmitting 1 outgoing channels
2025-10-31 10:17:08.291 [WRN] HSWC: ChannelLink(c9fa5892790f0b00a19aefeb5f8fd81bb9d8d7877cf09f88cc700308d4603acc:1): received warning message from peer: chan_id=0000000000000000000000000000000000000000000000000000000000000000, err=channel_announcement: no unspent txout 901811x2235x12
--
2025-10-31 10:47:07.958 [WRN] GRDB: Channel=988189374137630720 not found in graph cache
2025-10-31 10:47:07.958 [INF] DISC: Retransmitting 1 outgoing channels
2025-10-31 10:47:08.337 [WRN] HSWC: ChannelLink(c9fa5892790f0b00a19aefeb5f8fd81bb9d8d7877cf09f88cc700308d4603acc:1): received warning message from peer: chan_id=0000000000000000000000000000000000000000000000000000000000000000, err=channel_announcement: no unspent txout 898753x2122x0
--
2025-10-31 13:47:08.315 [WRN] GRDB: Channel=889082694535610369 not found in graph cache
2025-10-31 13:47:08.315 [INF] DISC: Retransmitting 1 outgoing channels
2025-10-31 13:47:08.499 [WRN] HSWC: ChannelLink(c9fa5892790f0b00a19aefeb5f8fd81bb9d8d7877cf09f88cc700308d4603acc:1): received warning message from peer: chan_id=0000000000000000000000000000000000000000000000000000000000000000, err=channel_announcement: no unspent txout 808616x1982x1
--
2025-10-31 15:17:08.517 [WRN] GRDB: Channel=959060012579553280 not found in graph cache
2025-10-31 15:17:08.541 [INF] DISC: Retransmitting 5 outgoing channels
2025-10-31 15:17:08.761 [WRN] HSWC: ChannelLink(c9fa5892790f0b00a19aefeb5f8fd81bb9d8d7877cf09f88cc700308d4603acc:1): received warning message from peer: chan_id=0000000000000000000000000000000000000000000000000000000000000000, err=channel_announcement: no unspent txout 749134x723x10

Need to investigate further but putting it out there in case somebody seeing the same problem

Expected Behavior

Debug Information

Environment

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugUnintended code behaviourneeds triageneutrinoLightweight neutrino backend-type

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions