You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Fix duplicated Vert.x HTTP server routes in handler chains - #20925
copilot/fix-duplicated-http-server-routesopen-telemetry/opentelemetry-java-instrumentation:copilot/fix-duplicated-http-server-routesCopy head branch name to clipboard
copilot/fix-duplicated-http-server-routesopen-telemetry/opentelemetry-java-instrumentation:copilot/fix-duplicated-http-server-routesCopy head branch name to clipboard
Multiple handlers on one Vert.x route could produce http.route=/virtual/virtual and span name GET /virtual/virtual instead of retaining /virtual.
Route composition: Distinguish an empty saved parent route from unsaved state so next() restores it correctly. Preserve mounted prefixes, legitimate repeated segments, route precedence, and custom span names.
Regression coverage: Exercise top-level and nested handler chains across supported Vert.x versions, including 4.5.3 standard and virtual-thread execution. Assert exported span names and the complete expected HTTP attributes.
CopilotAI
changed the title
[WIP] Fix duplicated Vert.x HTTP server routes for exported spans
Fix duplicated Vert.x HTTP server routes in handler chains
Oct 23, 2026
[Testing] Non-blocking: this partial attribute assertion accepts any unexpected attributes, contrary to the exact-assertion convention in .github/instructions/java-tests.instructions.md:145–147. Use hasAttributesSatisfyingExactly(...) and include the normal HTTP attributes alongside the four regression-specific assertions so the expected exported attribute set is checked.
The reason will be displayed to describe this comment to others. Learn more.
🟢 Approval recommended
The localized route-state correction has targeted cross-version regression coverage, with only non-blocking assertion-strengthening feedback remaining.
No open issues 🎉
1 previously missed issue
In code that hasn't changed since last review
Require exact span attribute assertions in telemetry test
[Testing] Non-blocking: hasAttributesSatisfying(...) accepts arbitrary additional attributes, leaving unexpected telemetry changes undetected by this otherwise complete span assertion. Use hasAttributesSatisfyingExactly(...) and include the expected HTTP server attributes alongside these regression attributes, following .github/instructions/java-tests.instructions.md:145.
[Testing] Non-blocking: hasAttributesSatisfying accepts unexpected attributes, so these new assertions do not verify the complete exported attribute set. Prefer hasAttributesSatisfyingExactly with the expected HTTP and handler attributes, following the span-attribute assertion guidance in .github/instructions/java-tests.instructions.md.
The reason will be displayed to describe this comment to others. Learn more.
🟢 Approval recommended
The localized route-state correction has targeted regression coverage and no unresolved blocking findings.
No open issues 🎉
Review effort: Balanced
This branch has not been deployed
No deployments
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
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.
Misc found while diagnosing another issue.
Multiple handlers on one Vert.x route could produce
http.route=/virtual/virtualand span nameGET /virtual/virtualinstead of retaining/virtual.next()restores it correctly. Preserve mounted prefixes, legitimate repeated segments, route precedence, and custom span names.