spring-cloud / spring-cloud/spring-cloud-gateway
Many requests break after 4.2.0 upgrade for unclear reasons
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 4.9k
- Forks
- 3.5k
- Avg merge
- 20h 57m
- Merged PRs (30d)
- 8
Description
Describe the bug
Using spring-boot-starter-gateway with 3.3.5 spring boot version and 2023.0.3 spring cloud version, everything works as expected and all of our requests are routed.
We have discovered upgrading to 3.4.1 spring boot version with 2024.0.0, a number of external requests being made are failing. We have attempted to debug the reason and it is pretty unclear. We know it's something to do with the upgrade as the requests made have been identical, and reverting solves the issue.
We checked the changes between 4.1.5 and 4.2.0 of this dependency (which is what the starter provides) and they are very substantial. It may also be down to a transitive dependency - at the moment it is unclear.
Debugging using our observability tool, we find that some of the external requests seem to match /** under Spring Webflux rather than the normal route. This is odd, as other requests coming in match the route correctly.
The only things different between the requests that break and those that don't are certain headers which should be unrelated to routing.
Sample
Cannot provide samples due to proprietary code unfortunately.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by comparing the spring-boot-starter-gateway behavior across the reported version upgrades, focusing on requests that match /** under Spring WebFlux and the headers that differ. Reproduce the routing failure without proprietary samples, then identify the responsible change or dependency and confirm that the affected external requests match their intended routes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, spring, spring-boot
- Domain
- api, backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100