[GR-68593] Include unresolved types in the method descriptor #12033
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.
Unresolved types in the signature of a
ResolvedJavaMethodare converted tojava.lang.Objectin the signature of the correspondingAnalysisMethod. Because of this, it's possible to have twoAnalysisMethodwith the same method descriptor.This was causing a transient where a graph was persisted two times for the same method descriptor. The
persistAnalysisParsedGraphmethod was only persisting if no graph was already persisted, which was the cause of the transient element of this issue, since those two methods with the same descriptor could access this concurrently.To avoid similar issues in the future, this method does not check anymore for a previously persisted graph and should only be called once.
The check for duplicate method descriptors was also fixed as it was broken.
Finally, the entries with a
nullvalue inStringConcatFactory$InlineHiddenClassStrategy.CACHEare now properly filtered as well, which was causing another transient.