Skip to content

fix(test): fix flaky platform/fabric/services/endorser - #1639

Merged
mbrandenburger merged 1 commit into
hyperledger-labs:mainfrom
mbrandenburger:flaky-endorsement
Aug 5, 2026
Merged

fix(test): fix flaky platform/fabric/services/endorser#1639
mbrandenburger merged 1 commit into
hyperledger-labs:mainfrom
mbrandenburger:flaky-endorsement

Conversation

@mbrandenburger

@mbrandenburger mbrandenburger commented Aug 5, 2026

Copy link
Copy Markdown
Member

TestParallelCollectEndorsementsOnProposalView_TimesOutOnSilentParty was flaky because parallelCollectEndorsementsOnProposalView.Call armed its aggregate deadline with the same duration that collectEndorsement passes to ReceiveWithTimeout, so both fired at once and select picked between them at random — one path reports "time out reached on session", the other "timeout waiting for endorsement", and only the first matched the assertion.

The aggregate deadline now runs a fixed grace period longer than the per-party timeout, so a silent party is consistently reported by the error that names it, leaving the aggregate deadline as the backstop for the session-setup and send steps that nothing else bounds.

Along the way this fixes a real bug in the same loop: the AppendProposalResponse error path wrapped a.err, which is always nil there, so Wrapf returned nil and Call handed the caller (nil, nil) instead of the append failure. Adds tests for the aggregate deadline and for the swallowed append error, and extracts the fake wiring the parallel-endorsement tests share into a fixture.

@mbrandenburger mbrandenburger added this to the 26Q3 milestone Aug 5, 2026
@mbrandenburger mbrandenburger self-assigned this Aug 5, 2026
@github-actions

github-actions Bot commented Aug 5, 2026

Copy link
Copy Markdown

Hey @mbrandenburger 👋 thanks for the PR!
I'm your friendly PR Helper Bot 🤖 and I'll be riding shotgun on this one, keeping track of your PR's status to help you get it approved and merged.

This comment updates automatically as you push changes -- think of it as your PR's live scoreboard!
Here's the latest:


PR Checks

DCO Sign-off -- All commits have valid sign-offs. Nice work!


GPG Signature -- Heads up! The following commits don't have a verified GPG signature:

  • 2205221 fix(test): fix flaky platform/fabric/services/endorser

You'll need to sign your commits with GPG (e.g. git commit -S). See the Signing Guide for a step-by-step walkthrough.


Merge Conflicts -- No merge conflicts detected. Smooth sailing!


Issue Link -- This PR is not linked to any issue.

Please reference an issue using a closing keyword (e.g. Fixes #123) and ensure the issue is assigned to you. Every PR needs a home!


All checks must pass before this PR can be reviewed. You've got this!

@github-actions github-actions Bot added the status: needs revision The pull request requires changes from the author before it can be reviewed or merged label Aug 5, 2026

@SaidAltury-ibm SaidAltury-ibm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM thank you @mbrandenburger

@mergify

mergify Bot commented Aug 5, 2026

Copy link
Copy Markdown

Tick the box to add this pull request to the merge queue (same as @mergifyio queue).

  • Queue this pull request

@mbrandenburger
mbrandenburger enabled auto-merge (squash) August 5, 2026 12:15
Signed-off-by: Marcus Brandenburger <bur@zurich.ibm.com>
@mbrandenburger
mbrandenburger merged commit 32da0a5 into hyperledger-labs:main Aug 5, 2026
1 of 2 checks passed
@mbrandenburger
mbrandenburger deleted the flaky-endorsement branch August 5, 2026 12:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

status: needs revision The pull request requires changes from the author before it can be reviewed or merged

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants