Skip to content

[ISSUE #6817] Replace RocketMQ e2e sleeps with Awaitility - #6978

Open
yykaue wants to merge 36 commits into
apache:masterfrom
yykaue:fix-6817-await-rocketmq-log
Open

yykaue wants to merge 36 commits into
apache:masterfrom
yykaue:fix-6817-await-rocketmq-log

Conversation

@yykaue

@yykaue yykaue commented Aug 23, 2026

Copy link
Copy Markdown
Contributor

Fixes #6817.

Changes

  • Start the RocketMQ consumer before sending the request.
  • Replace fixed 30-second sleeps with bounded Awaitility polling.
  • Ensure the RocketMQ consumer is reliably shut down.
  • Add Awaitility as a managed test dependency for the RocketMQ e2e case.

Verification

  • Ran mvn -f shenyu-e2e/pom.xml -pl :shenyu-e2e-case-logging-rocketmq -am test-compile.
  • All 6 reactor modules completed successfully.
  • Checkstyle completed with 0 violations.

@Aias00, could you please help review this PR? Thank you!

@Aias00 Aias00 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.

Reviewed the changes and did not find blocking issues.

yykaue and others added 28 commits August 26, 2026 14:17
@dengliming

Copy link
Copy Markdown
Member

This is a good step forward, but I think we still need an explicit readiness check before sending the request. Right now we start the consumer and immediately issue the HTTP call, then wait for the log to appear. In CI, the flaky part seems to be that the route/logging path may not be fully ready yet when that request is sent, so we can still miss the log and time out even though RocketMQ itself is healthy.

Could we split this into two phases?

  1. wait until the gateway route is actually serving successfully
  2. then send a fresh request and await the RocketMQ log for that request

That would make the test assert “logging works after the system is ready” rather than depending on startup timing.

@Aias00

Aias00 commented Sep 18, 2026

Copy link
Copy Markdown
Contributor

Heads-up (PMC Aias00): your PR's CI failures are in shared infrastructure checks (k8s-examples-http, e2e-case-logging-rocketmq, build-docker-images) that are currently failing across many unrelated PRs. This looks like a CI-environment issue, not a problem with your change. Please re-run the failed checks; the code change itself appears fine. No code changes needed for these specific failures.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[BUG] — E2e: 30s blind sleeps gating async MQ consumption

3 participants