From 0e420e6f9d6bd82786e3b873f14c81a556e8e282 Mon Sep 17 00:00:00 2001 From: ThomasV Date: Tue, 15 Dec 2020 15:34:26 +0100 Subject: [PATCH] lnworker: remove channel if it was not saved successfully after creation --- electrum/lnworker.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/electrum/lnworker.py b/electrum/lnworker.py index a79380f8e..4d363dd06 100644 --- a/electrum/lnworker.py +++ b/electrum/lnworker.py @@ -839,8 +839,13 @@ class LNWallet(LNWorker): channels_db[chan.channel_id.hex()] = chan.storage for addr in chan.get_wallet_addresses_channel_might_want_reserved(): self.wallet.set_reserved_state_of_address(addr, reserved=True) - self.save_channel(chan) - self.wallet.save_backup() + try: + self.save_channel(chan) + self.wallet.save_backup() + except: + chan.set_state(ChannelState.REDEEMED) + self.remove_channel(chan.channel_id) + raise def mktx_for_open_channel(self, *, coins: Sequence[PartialTxInput], funding_sat: int, fee_est=None) -> PartialTransaction: