Fixed
Pinned fields
Click on the next to a field label to start pinning.
Details
Assignee
Quentin JaquierQuentin JaquierReporter
Quentin JaquierQuentin JaquierLabels
Sprint
NoneFix versions
Priority
Normal
Details
Details
Assignee
Quentin Jaquier
Quentin JaquierReporter
Quentin Jaquier
Quentin JaquierLabels
Sprint
None
Fix versions
Priority

Sentry
Sentry
Sentry
Created June 13, 2024 at 3:58 PM
Updated October 16, 2024 at 12:53 PM
Resolved July 31, 2024 at 7:41 AM
In https://sonarsource.atlassian.net/browse/JS-160, we are now creating Java ESTree API. In the process, we read a protobuf serialized message.
It seems that we reach a limit of recursion when deserializing potentially large AST.
java.lang.IllegalStateException: com.google.protobuf.InvalidProtocolBufferException: Protocol message had too many levels of nesting. May be malicious. Use CodedInputStream.setRecursionLimit() to increase the depth limit. at org.sonar.plugins.javascript.bridge.FormDataUtils.parseFormData(FormDataUtils.java:74)
This can be observed in django-crm (analyzed on gill).
This also happens in the ITs of Armor (onion subset).
We should understand if the limit should be increased and prevent the error from stopping the analysis.
Note that it should not appear in production anymore, as we implemented https://sonarsource.atlassian.net/browse/JS-166, serializing the AST only when ARMOR is enabled.