-
Notifications
You must be signed in to change notification settings - Fork 2k
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
RangeError: Maximum call stack size exceeded in OverlappingFieldsCanBeMergedRule #3938
Comments
Did you ever resolve this? We are just stumbling on this as well |
Sorry I missed this in the past, I created a pull request that should circumvent this issue by rather than recursing for each level of discovered fragments to using an iterator #4116 |
@Crizzooo @MarkKoester in what circumstances are you hitting a depth of 10.000, would love to have more information on that. |
So in our case, we heavily use client preset and client side fragments. This led to the generated file being massive to the point where importing from To solve it, we now generate code into a We then copy the
In our
This effectively fixes our simulators again, but took manual scripting over graphql-codegen outputs. if curious, here is the default graphql file created by codegen LMK if theres any other info I can provide @JoviDeCroock |
Hmm, that would not be related to this issue though as the issue here is a stack depth limit that would happen on the server that validates/executes your request. The issue you are faced with seems related to types/parsing, no? |
Correct, @JoviDeCroock . Originally I commented as it looked like a similar cause (React Native was displaying similar max call stack error) Then I learned more about exactly what was breaking (reading the types, not generating them) So just sharing more on our issue, but no, its not exactly the same as the OP here. |
@JoviDeCroock I don’t remember why exactly but I was doing some tests to see if a ton of lots of fragments in a query would be handled gracefully. The example was contrived but it seemed like an edge case that would be worth accounting for |
We can consider this if we have a bona fide use case, closing for now. |
I noticed during some testing that sending queries with 10000 fragments causes a
RangeError: Maximum call stack size exceeded in OverlappingFieldsCanBeMergedRule
error to be thrown fromOverlappingFieldsCanBeMergedRule
. I was wondering if this is the intended behavior and if not, how it should be handled.This was observed on version 16.6.0 and 16.7.2
Below is the stack trace of the error and the steps to reproduce
Error
Reproduction steps
The text was updated successfully, but these errors were encountered: