-
Notifications
You must be signed in to change notification settings - Fork 273
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Query planning/validation fails with @include and different field arguments #6217
Comments
Thank you for the detailed report. I agree this looks like a bug in planning. I've filed a ticket internally to track the work; I would expect it could be fixed in 1.58.0 towards the end of this month |
(Without the |
Ahh I see what's happening now. This is related to a limitation of the entity mechanism today. There are two different selections for the We currently have a way to work around this: type conditioned fetching, which splits up the If you run into this in production, you could try enabling type conditioned fetching in the router, and assess if the performance is acceptable for your queries: experimental_type_conditioned_fetching: true |
Thanks, @goto-bus-stop. That would impact all queries, right? We've got some whoppers! |
Correct, it would affect all queries. A performance hit would be most noticeable on queries involving very many entities, I think. |
Confirmed |
Describe the bug
Demonstrated in https://github.com/carldunham/apollo-router-6217.
Given the attached schema, this query
will fail.
A similar query will provide correct results with the same fragments:
Note that the value of the variable doesn't matter, and it doesn't even need to be a variable:
To Reproduce
Steps to reproduce the behavior:
rover
androuter
you want to test withmake supergraph run
(cd a && make run)
Expected behavior
Working subgraph queries and results.
Output
Router will return
Desktop (please complete the following information):
Additional context
Tested with various recent versions, up to
The text was updated successfully, but these errors were encountered: