Repository navigation
Conversation
Contributor
Test ReportTest Results
Code Coverage (Java 25)
Changed Class Coverage (1 class)
|
This branch has not been deployed
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
variable coercion hands the raw value straight to
Coercing.parseValue, so an Int-typed variable that arrives as aBigDecimal(gson, or jackson withUSE_BIG_DECIMAL_FOR_FLOATS) reachesGraphqlIntCoercing.convertParseValueImpl.toBigIntegerExact()runs before theINT_MIN/INT_MAXrange check inparseValueImpl, so an 11-byte value forces a ~50M digit BigInteger to be built only to then be rejected as out of range. bigger exponents scale into minutes and gigabytes before BigInteger reaches its own size limit. the literal path is capped at 100 numeric chars by the parser; the variable path has no such cap.decide out-of-range from the decimal scale/precision rather than expanding first: an integer part with more than 10 digits cannot fit an Int, so the existing
Int.outsideRangeerror is raised there.BigDecimal.intValueExact()already short-circuits the same way, which is why the serialize path and the Float/Boolean/ID coercers are not affected.