Since the minimized program of cf-6030 does not reproduce the crash stack, I tried changing the target method of DataResolver.java. I am providing the crash stacks for each targets.
Task :run FAILED
Exception in thread "main" java.lang.RuntimeException: encountered a lambda when the package name was unknown
at org.checkerframework.specimin.UnsolvedSymbolVisitor.getArgumentTypesImpl(UnsolvedSymbolVisitor.java:1986)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.getArgumentTypesFromMethodCall(UnsolvedSymbolVisitor.java:1927)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.declaredInCurrentClass(UnsolvedSymbolVisitor.java:1147)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:901)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:83)
at com.github.javaparser.ast.expr.MethodCallExpr.accept(MethodCallExpr.java:116)
at com.github.javaparser.ast.visitor.ModifierVisitor.lambda$visit$79(ModifierVisitor.java:852)
at java.base/java.util.Optional.map(Optional.java:260)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:852)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.stmt.ReturnStmt.accept(ReturnStmt.java:78)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1129)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.NodeList.accept(NodeList.java:277)
at com.github.javaparser.ast.visitor.ModifierVisitor.modifyList(ModifierVisitor.java:1168)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:169)
Configure project :
No explicit dependency on the Checker Framework found, using default version 3.42.0
Task :run FAILED
Exception in thread "main" java.lang.RuntimeException: encountered a lambda when the package name was unknown
at org.checkerframework.specimin.UnsolvedSymbolVisitor.getArgumentTypesImpl(UnsolvedSymbolVisitor.java:1986)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.getArgumentTypesFromMethodCall(UnsolvedSymbolVisitor.java:1927)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.declaredInCurrentClass(UnsolvedSymbolVisitor.java:1147)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:901)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:83)
at com.github.javaparser.ast.expr.MethodCallExpr.accept(MethodCallExpr.java:116)
at com.github.javaparser.ast.visitor.ModifierVisitor.lambda$visit$99(ModifierVisitor.java:1036)
at java.base/java.util.Optional.map(Optional.java:260)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1036)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:693)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:83)
at com.github.javaparser.ast.body.VariableDeclarator.accept(VariableDeclarator.java:143)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1129)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.NodeList.accept(NodeList.java:277)
at com.github.javaparser.ast.visitor.ModifierVisitor.modifyList(ModifierVisitor.java:1168)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1023)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.expr.VariableDeclarationExpr.accept(VariableDeclarationExpr.java:112)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:477)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.stmt.ExpressionStmt.accept(ExpressionStmt.java:71)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1129)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.NodeList.accept(NodeList.java:277)
Task :run
Exception in thread "main" java.lang.UnsupportedOperationException: TypeVariable {ReflectionTypeParameter{typeVariable=T}} is not a Reference Type
at com.github.javaparser.resolution.types.ResolvedType.asReferenceType(ResolvedType.java:142)
at com.github.javaparser.symbolsolver.javaparsermodel.contexts.AbstractJavaParserContext.findTypeDeclarations(AbstractJavaParserContext.java:257)
at com.github.javaparser.symbolsolver.javaparsermodel.contexts.MethodCallExprContext.solveMethod(MethodCallExprContext.java:166)
at com.github.javaparser.symbolsolver.javaparsermodel.JavaParserFacade.solve(JavaParserFacade.java:324)
at com.github.javaparser.symbolsolver.javaparsermodel.JavaParserFacade.solve(JavaParserFacade.java:186)
at com.github.javaparser.symbolsolver.JavaSymbolSolver.resolveDeclaration(JavaSymbolSolver.java:161)
at com.github.javaparser.ast.expr.MethodCallExpr.resolve(MethodCallExpr.java:315)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.isFromAJarFile(UnsolvedSymbolVisitor.java:1592)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:866)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:83)
at com.github.javaparser.ast.expr.MethodCallExpr.accept(MethodCallExpr.java:116)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:319)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.expr.ConditionalExpr.accept(ConditionalExpr.java:76)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:477)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.stmt.ExpressionStmt.accept(ExpressionStmt.java:71)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1086)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:627)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:83)
at com.github.javaparser.ast.expr.LambdaExpr.accept(LambdaExpr.java:162)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1129)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.NodeList.accept(NodeList.java:277)
Task :run
Exception in thread "main" java.lang.RuntimeException: Need to check this field access expression with isAnUnsolvedStaticFieldCalledByAQualifiedClassName before using this method
at org.checkerframework.specimin.UnsolvedSymbolVisitor.updateClassSetWithQualifiedFieldSignature(UnsolvedSymbolVisitor.java:2640)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.updateSyntheticClassWithNonStaticFields(UnsolvedSymbolVisitor.java:1752)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:839)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:83)
at com.github.javaparser.ast.expr.FieldAccessExpr.accept(FieldAccessExpr.java:90)
at com.github.javaparser.ast.visitor.ModifierVisitor.lambda$visit$58(ModifierVisitor.java:653)
at java.base/java.util.Optional.map(Optional.java:260)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:653)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:928)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:83)
at com.github.javaparser.ast.expr.MethodCallExpr.accept(MethodCallExpr.java:116)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:155)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.expr.BinaryExpr.accept(BinaryExpr.java:140)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:477)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.stmt.ExpressionStmt.accept(ExpressionStmt.java:71)
Task :run
Exception in thread "main" java.lang.UnsupportedOperationException: Unable to get the resolved type of class ResolvedReferenceType from V
at com.github.javaparser.symbolsolver.JavaSymbolSolver.toResolvedType(JavaSymbolSolver.java:286)
at com.github.javaparser.ast.type.ClassOrInterfaceType.resolve(ClassOrInterfaceType.java:315)
at org.checkerframework.specimin.PrunerVisitor.getUsedTypesOnly(PrunerVisitor.java:448)
at org.checkerframework.specimin.PrunerVisitor.minimizeTypeParameters(PrunerVisitor.java:430)
at org.checkerframework.specimin.PrunerVisitor.visit(PrunerVisitor.java:189)
at org.checkerframework.specimin.PrunerVisitor.visit(PrunerVisitor.java:45)
at com.github.javaparser.ast.body.ClassOrInterfaceDeclaration.accept(ClassOrInterfaceDeclaration.java:92)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1129)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.NodeList.accept(NodeList.java:277)
Configure project :
No explicit dependency on the Checker Framework found, using default version 3.42.0
Task :run
Exception in thread "main" java.lang.UnsupportedOperationException: TypeVariable {JPTypeParameter(P, bounds=[ReplicaPlan.ForRead<E, P>])} is not a Reference Type
at com.github.javaparser.resolution.types.ResolvedType.asReferenceType(ResolvedType.java:142)
at com.github.javaparser.symbolsolver.javaparsermodel.contexts.AbstractJavaParserContext.findTypeDeclarations(AbstractJavaParserContext.java:230)
at com.github.javaparser.symbolsolver.javaparsermodel.contexts.MethodCallExprContext.solveMethod(MethodCallExprContext.java:166)
at com.github.javaparser.symbolsolver.javaparsermodel.JavaParserFacade.solve(JavaParserFacade.java:324)
at com.github.javaparser.symbolsolver.javaparsermodel.JavaParserFacade.solve(JavaParserFacade.java:186)
at com.github.javaparser.symbolsolver.JavaSymbolSolver.resolveDeclaration(JavaSymbolSolver.java:161)
at com.github.javaparser.ast.expr.MethodCallExpr.resolve(MethodCallExpr.java:315)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.isFromAJarFile(UnsolvedSymbolVisitor.java:1592)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:866)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:83)
at com.github.javaparser.ast.expr.MethodCallExpr.accept(MethodCallExpr.java:116)
at com.github.javaparser.ast.visitor.ModifierVisitor.lambda$visit$99(ModifierVisitor.java:1036)
at java.base/java.util.Optional.map(Optional.java:260)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1036)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:693)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:83)
at com.github.javaparser.ast.body.VariableDeclarator.accept(VariableDeclarator.java:143)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1129)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.NodeList.accept(NodeList.java:277)
Configure project :
No explicit dependency on the Checker Framework found, using default version 3.42.0
Task :run
Exception in thread "main" java.lang.UnsupportedOperationException: TypeVariable {JPTypeParameter(P, bounds=[ReplicaPlan.ForRead<E, P>])} is not a Reference Type
at com.github.javaparser.resolution.types.ResolvedType.asReferenceType(ResolvedType.java:142)
at com.github.javaparser.symbolsolver.javaparsermodel.contexts.AbstractJavaParserContext.findTypeDeclarations(AbstractJavaParserContext.java:230)
at com.github.javaparser.symbolsolver.javaparsermodel.contexts.MethodCallExprContext.solveMethod(MethodCallExprContext.java:166)
at com.github.javaparser.symbolsolver.javaparsermodel.JavaParserFacade.solve(JavaParserFacade.java:324)
at com.github.javaparser.symbolsolver.javaparsermodel.JavaParserFacade.solve(JavaParserFacade.java:186)
at com.github.javaparser.symbolsolver.JavaSymbolSolver.resolveDeclaration(JavaSymbolSolver.java:161)
at com.github.javaparser.ast.expr.MethodCallExpr.resolve(MethodCallExpr.java:315)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.isFromAJarFile(UnsolvedSymbolVisitor.java:1592)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:866)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:83)
at com.github.javaparser.ast.expr.MethodCallExpr.accept(MethodCallExpr.java:116)
at com.github.javaparser.ast.visitor.ModifierVisitor.lambda$visit$99(ModifierVisitor.java:1036)
at java.base/java.util.Optional.map(Optional.java:260)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1036)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:693)
at org.checkerframework.specimin.UnsolvedSymbolVisitor.visit(UnsolvedSymbolVisitor.java:83)
at com.github.javaparser.ast.body.VariableDeclarator.accept(VariableDeclarator.java:143)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:1129)
at com.github.javaparser.ast.visitor.ModifierVisitor.visit(ModifierVisitor.java:51)
at com.github.javaparser.ast.NodeList.accept(NodeList.java:277)
Since the minimized program of cf-6030 does not reproduce the crash stack, I tried changing the target method of
DataResolver.java
. I am providing the crash stacks for each targets.Duplicates exists and for details please refer
--targetMethod "org.apache.cassandra.service.reads.DataResolver#resolve(Runnable)"
--targetMethod "org.apache.cassandra.service.reads.DataResolver#resolveWithReplicaFilteringProtection(E, RepairedDataTracker)"
--targetMethod "org.apache.cassandra.service.reads.DataResolver#wrapMergeListener(UnfilteredPartitionIterators.MergeListener, P, RepairedDataTracker)"
--targetFile "org/apache/cassandra/service/reads/DataResolver.java"
--targetMethod "org.apache.cassandra.service.reads.DataResolver#resolveInternal(ResolveContext, UnfilteredPartitionIterators.MergeListener, ResponseProvider, UnaryOperator<PartitionIterator>)"
--targetMethod "org.apache.cassandra.service.reads.DataResolver#resolveWithReadRepair(ResolveContext, ResponseProvider, UnaryOperator<PartitionIterator>, RepairedDataTracker)"