-
Notifications
You must be signed in to change notification settings - Fork 912
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
Agressive Channeld Restart Testing #7083
Agressive Channeld Restart Testing #7083
Conversation
This ran 50 times in a row for me without any error? |
d19dcb3
to
acd9419
Compare
It passed through CI no problem too -- it must be a Mac only problem |
Shall we merge this, or would you like to dig deeper and see what is going wrong with Mac? In the latter case I'd remove the milestone. |
Seems net positive to have it merged into the CI as a regression test |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Weird one. You wrote this batch API and only ever use it for one channel. Maybe just have a simpler, single-channel API? Seems clearer, too...
lightningd/channel_control.c
Outdated
"Put {channel_ids} channels into stfu mode and return their available" | ||
" balance." | ||
}; | ||
AUTODATA(json_command, &stfu_channels_command); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These are definitely dev commands!!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And since you only ever call it with one channel, dev_quiesce
would work.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🤔 Discussing the trade offs of exposing stfu / abort in this comment over here: #7083 (comment)
"channel_ids": channel_ids, | ||
} | ||
return self.call("abort_channels", payload) | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You don't need these wrappers, esp. for dev commands. It automatically handles unknown RPCs (we mainly add them so you get nicer documentation and error detection).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very cool!
I removed the I see two ways forward for these commands:
Doing something in between these two options doesn't make sense because a user doing a cross-splice of two channels needs a way to |
17d129d
to
e38f259
Compare
I think this is the way. Though make sftu/abort singular (you can simply call it multiple times). |
Changelog-None
e38f259
to
1da8849
Compare
Trivial rebase... |
Repeatedly STFU and then TX_ABORT a channel to trigger the socket/fd flake issue.
Changelog-None