Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CPFP for mutual close #6734

Merged

Conversation

rustyrussell
Copy link
Contributor

No description provided.

@rustyrussell rustyrussell added this to the v23.11 milestone Sep 29, 2023
@ShahanaFarooqui ShahanaFarooqui linked an issue Sep 29, 2023 that may be closed by this pull request
@wtogami
Copy link
Contributor

wtogami commented Sep 29, 2023

Cool do any other implementations support this?

@rustyrussell rustyrussell force-pushed the guilt/cpfp-for-mutual-close branch from 77c2f77 to 7db541a Compare October 2, 2023 03:46
@rustyrussell
Copy link
Contributor Author

Cool do any other implementations support this?

I assume they all do: it's a weird CLN quirk that we didn't expose it in our wallet before confirmation.

Copy link
Collaborator

@vincenzopalazzo vincenzopalazzo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CI is failing

ld lightningd/test/run-jsonrpc
/usr/bin/ld: lightningd/test/run-invoice-select-inchan.o: in function `sign_and_send_last':
/home/runner/work/lightning/lightning/lightningd/test/../peer_control.c:302: undefined reference to `wallet_extract_owned_outputs'
collect2: error: ld returned 1 exit status
make: *** [Makefile:660: lightningd/test/run-invoice-select-inchan] Error 1
make: *** Waiting for unfinished jobs....
rm external/build-x86_64-linux-gnu/libwally-core-build/src/secp256k1/libsecp256k1.la

@rustyrussell rustyrussell force-pushed the guilt/cpfp-for-mutual-close branch from 7db541a to 99961e6 Compare October 2, 2023 04:45
@rustyrussell
Copy link
Contributor Author

CI is failing

ld lightningd/test/run-jsonrpc
/usr/bin/ld: lightningd/test/run-invoice-select-inchan.o: in function `sign_and_send_last':
/home/runner/work/lightning/lightning/lightningd/test/../peer_control.c:302: undefined reference to `wallet_extract_owned_outputs'
collect2: error: ld returned 1 exit status
make: *** [Makefile:660: lightningd/test/run-invoice-select-inchan] Error 1
make: *** Waiting for unfinished jobs....
rm external/build-x86_64-linux-gnu/libwally-core-build/src/secp256k1/libsecp256k1.la

Yep, needed to update-mocks after rebase on master...

@vincenzopalazzo
Copy link
Collaborator

Ok now rerunning lnprototest because the following assertion looks really strange to me

2023-10-02T04:51:25.121Z DEBUG   gossipd: Shutting down
2023-10-02T04:51:25.121Z DEBUG   hsmd: Shutting down

ERROR:root:Traceback (most recent call last):
  File "/work/external/lnprototest/lnprototest/utils/utils.py", line 95, in run_runner
    runner.run(test)
  File "/work/external/lnprototest/lnprototest/runner.py", line 100, in run
    all_done = sequence.action(self)
  File "/work/external/lnprototest/lnprototest/structure.py", line 55, in action
    all_done &= e.action(runner)
  File "/work/external/lnprototest/lnprototest/event.py", line 340, in action
    raise EventError(
lnprototest.errors.EventError: `Did not receive a message msgtype-warning from runner` on event [{"event": "ExpectMsg", "file": "test_bolt2-01-open_channel.py", "pos": "335"},]

=========================== short test summary info ============================
FAILED tests/test_bolt2-01-open_channel.py::test_open_channel_opener_side_wrong_announcement_signatures - AssertionError: `Did not receive a message msgtype-warning from runner` on ...

@rustyrussell
Copy link
Contributor Author

Ok now rerunning lnprototest because the following assertion looks really strange to me

2023-10-02T04:51:25.121Z DEBUG   gossipd: Shutting down
2023-10-02T04:51:25.121Z DEBUG   hsmd: Shutting down

ERROR:root:Traceback (most recent call last):
  File "/work/external/lnprototest/lnprototest/utils/utils.py", line 95, in run_runner
    runner.run(test)
  File "/work/external/lnprototest/lnprototest/runner.py", line 100, in run
    all_done = sequence.action(self)
  File "/work/external/lnprototest/lnprototest/structure.py", line 55, in action
    all_done &= e.action(runner)
  File "/work/external/lnprototest/lnprototest/event.py", line 340, in action
    raise EventError(
lnprototest.errors.EventError: `Did not receive a message msgtype-warning from runner` on event [{"event": "ExpectMsg", "file": "test_bolt2-01-open_channel.py", "pos": "335"},]

=========================== short test summary info ============================
FAILED tests/test_bolt2-01-open_channel.py::test_open_channel_opener_side_wrong_announcement_signatures - AssertionError: `Did not receive a message msgtype-warning from runner` on ...

Yes, timing changes in recent commits made this worse, but it's real: we never properly waited in many cases where we send a warning, and lightningd tells connectd to hang up.

Will fix

Copy link
Collaborator

@vincenzopalazzo vincenzopalazzo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK 284173e

It is missing just a rebase to see if the CI is happy again

You can't (yet): it doesn't even show in listfunds.

Signed-off-by: Rusty Russell <[email protected]>
We had a complaint that you can't CPFP a mutual close, which you
should be able to do.

Fixes: ElementsProject#6692
Changelog-Fixed: wallet: close change outputs show up immediately in `listfunds` so you can CPFP.
Signed-off-by: Rusty Russell <[email protected]>
@vincenzopalazzo vincenzopalazzo force-pushed the guilt/cpfp-for-mutual-close branch from 284173e to 53e1a03 Compare October 25, 2023 09:44
@vincenzopalazzo
Copy link
Collaborator

Ah, I can do it :)

Trivial Rebase on master

@rustyrussell rustyrussell merged commit 35a47c5 into ElementsProject:master Oct 26, 2023
38 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Unknown UTXO in withdraw
3 participants