tdelete channel from db in remove_channel, becaose it is called from lnworker - electrum - Electrum Bitcoin wallet HTML git clone https://git.parazyd.org/electrum DIR Log DIR Files DIR Refs DIR Submodules --- DIR commit a4944cdcb20415ae7ebbaef25f43c491627aab47 DIR parent 9fbac40d569de474ffc1038d1e42ea3f2c2660db HTML Author: ThomasV <thomasv@electrum.org> Date: Wed, 23 Oct 2019 08:20:15 +0200 delete channel from db in remove_channel, becaose it is called from lnworker Diffstat: M electrum/channel_db.py | 3 ++- M electrum/lnworker.py | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) --- DIR diff --git a/electrum/channel_db.py b/electrum/channel_db.py t@@ -508,7 +508,6 @@ class ChannelDB(SqlDB): if l: for short_channel_id in l: self.remove_channel(short_channel_id) - self.delete_channel(short_channel_id) self.update_counts() self.logger.info(f'Deleting {len(l)} orphaned channels') t@@ -524,6 +523,8 @@ class ChannelDB(SqlDB): if channel_info: self._channels_for_node[channel_info.node1_id].remove(channel_info.short_channel_id) self._channels_for_node[channel_info.node2_id].remove(channel_info.short_channel_id) + # delete from database + self.delete_channel(short_channel_id) def get_node_addresses(self, node_id): return self._addresses.get(node_id) DIR diff --git a/electrum/lnworker.py b/electrum/lnworker.py t@@ -864,6 +864,7 @@ class LNWallet(LNWorker): short_channel_id = route[0].short_channel_id chan = self.get_channel_by_short_id(short_channel_id) if not chan: + self.channel_db.remove_channel(short_channel_id) raise Exception(f"PathFinder returned path with short_channel_id " f"{short_channel_id} that is not in channel list") self.set_payment_status(lnaddr.paymenthash, PR_INFLIGHT)