From c57a5a0a06c9fd5e8b4b8674f6bebaeddb6eea98 Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Mon, 18 Jul 2022 21:42:28 +0930 Subject: [PATCH] gossipd: downgrade broken message that can actually happen. I saw this in test_bech32_funding: the peer disconnected and told gossipd before lightningd relayed a local_channel_announcement from the subd: ``` lightningd-1 2022-07-14T08:46:32.352Z DEBUG 020ba48216be53051ba8c661c641b5d9c3547c44bfcc43bf4d8362f0dfce0e950d-channeld-chan#1: billboard: Funding transaction locked. Channel announced. lightningd-1 2022-07-14T08:46:33.353Z DEBUG connectd: drain_peer lightningd-1 2022-07-14T08:46:33.353Z DEBUG connectd: drain_peer draining subd! lightningd-1 2022-07-14T08:46:33.353Z DEBUG 020ba48216be53051ba8c661c641b5d9c3547c44bfcc43bf4d8362f0dfce0e950d-lightningd: peer_disconnect_done lightningd-1 2022-07-14T08:46:33.354Z INFO 020ba48216be53051ba8c661c641b5d9c3547c44bfcc43bf4d8362f0dfce0e950d-channeld-chan#1: Peer connection lost lightningd-1 2022-07-14T08:46:33.354Z INFO 020ba48216be53051ba8c661c641b5d9c3547c44bfcc43bf4d8362f0dfce0e950d-chan#1: Peer transient failure in CHANNELD_NORMAL: channeld: Owning subdaemon channeld died (62208) lightningd-1 2022-07-14T08:46:33.354Z DEBUG connectd: maybe_free_peer freeing peer! lightningd-1 2022-07-14T08:46:33.354Z DEBUG 0228af54fd951097caa2ceea5546a37bcc7d7f746e1cb7cb549e3edcd1797a1d80-hsmd: Got WIRE_HSMD_CUPDATE_SIG_REQ lightningd-1 2022-07-14T08:46:33.354Z DEBUG plugin-funder: Cleaning up inflights for peer id 020ba48216be53051ba8c661c641b5d9c3547c44bfcc43bf4d8362f0dfce0e950d lightningd-1 2022-07-14T08:46:33.354Z **BROKEN** gossipd: Unknown peer 020ba48216be53051ba8c661c641b5d9c3547c44bfcc43bf4d8362f0dfce0e950d for local_channel_announcement ``` Signed-off-by: Rusty Russell --- gossipd/gossipd.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gossipd/gossipd.c b/gossipd/gossipd.c index e27f96920..55321e1db 100644 --- a/gossipd/gossipd.c +++ b/gossipd/gossipd.c @@ -300,8 +300,8 @@ static void handle_local_channel_announcement(struct daemon *daemon, const u8 *m /* We treat it OK even if peer has disconnected since (unlikely though!) */ peer = find_peer(daemon, &id); if (!peer) - status_broken("Unknown peer %s for local_channel_announcement", - type_to_string(tmpctx, struct node_id, &id)); + status_debug("Unknown peer %s for local_channel_announcement", + type_to_string(tmpctx, struct node_id, &id)); err = handle_channel_announcement_msg(daemon, peer, cannouncement); if (err) {