flake: fix in-flight statuses causing flakyness when asserting payment success/failure#9238
Open
ScuttoZ wants to merge 1 commit into
Open
flake: fix in-flight statuses causing flakyness when asserting payment success/failure#9238ScuttoZ wants to merge 1 commit into
ScuttoZ wants to merge 1 commit into
Conversation
022147a to
e6e6554
Compare
Merged
…ay-n layers to be removed from askrene before checking settlement outcome
e6e6554 to
7a6fb69
Compare
Andezion
requested changes
Jul 10, 2026
Andezion
left a comment
Collaborator
There was a problem hiding this comment.
The race condition has been correctly identified - the fix targets the root cause of the flakiness rather than masking the symptom by increasing the timeout!
| # so wait for them all to disappear before checking the exact statuses. | ||
| # If payment hangs indefinetly, the default timeout will fail the test | ||
| # (60s/180s if SLOW_MACHINE=1). | ||
| wait_for(lambda: not any(layer['layer'].startswith('xpay-') |
Collaborator
There was a problem hiding this comment.
wait_for waits for any xpay-* layers to disappear from the node, not just those related to these three payments. If there were other xpay calls on the same L1 earlier in the test, you might accidentally end up waiting for someone else's cleanup. Make sure there were no pending third-party xpay payments on l1 prior to this point
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The test is showing flakyness at the final assertion so I introduced a "wait_for" that waits for all xpay-n layers to be removed from askrene before checking settlement outcome, which in theory should prevent any "pending" to make it to the final step of the test.
If for some reason a payment gets stuck in pending, the test should timeout and fail.
Changelog-None