Skip to content
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

IAE during analysis, files heavily using Lombok #502

Closed
Xorlev opened this issue Jan 5, 2017 · 1 comment
Closed

IAE during analysis, files heavily using Lombok #502

Xorlev opened this issue Jan 5, 2017 · 1 comment

Comments

@Xorlev
Copy link

Xorlev commented Jan 5, 2017

Sources can be privately provided upon request. The file its self heavily uses Lombok annotations.

Analyzed via the net.ltgt.errorprone Gradle plugin running in Gradle 3.2.

/Users/xorlev/Code/FullContact/data/p/models/src/main/java/com/fullcontact/p/models/graph/AuthoritativeEdgeValue.java:54: error: An unhandled exception was thrown by the Error Prone static analysis plugin.
    private final ImmutableSetMultimap<Contributor, SourceAddress> sources;
                                                                   ^
     Please report this at https://github.com/google/error-prone/issues/new and include the following:

     error-prone version: 2.0.15
     Stack Trace:
     java.lang.IllegalArgumentException: Invalid range: [1754..-1)
        at com.google.common.collect.Range.<init>(Range.java:352)
        at com.google.common.collect.Range.create(Range.java:146)
        at com.google.common.collect.Range.closedOpen(Range.java:182)
        at com.google.errorprone.fixes.Replacement.create(Replacement.java:38)
        at com.google.errorprone.fixes.SuggestedFix$ReplacementFix.getReplacement(SuggestedFix.java:369)
        at com.google.errorprone.fixes.SuggestedFix.getReplacements(SuggestedFix.java:91)
        at com.google.errorprone.fixes.AppliedFix$Applier.apply(AppliedFix.java:66)
        at com.google.errorprone.JavacErrorDescriptionListener.lambda$new$0(JavacErrorDescriptionListener.java:61)
        at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
        at java.util.Iterator.forEachRemaining(Iterator.java:116)
        at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
        at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
        at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
        at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
        at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
        at com.google.errorprone.JavacErrorDescriptionListener.onDescribed(JavacErrorDescriptionListener.java:75)
        at com.google.errorprone.VisitorState.reportMatch(VisitorState.java:159)
        at com.google.errorprone.scanner.Scanner.reportMatch(Scanner.java:160)
        at com.google.errorprone.scanner.ErrorProneScanner.visitBinary(ErrorProneScanner.java:554)
        at com.google.errorprone.scanner.ErrorProneScanner.visitBinary(ErrorProneScanner.java:144)
        at com.sun.tools.javac.tree.JCTree$JCBinary.accept(JCTree.java:1958)
        at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:72)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:89)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
        at com.sun.source.util.TreeScanner.visitConditionalExpression(TreeScanner.java:404)
        at com.google.errorprone.scanner.ErrorProneScanner.visitConditionalExpression(ErrorProneScanner.java:681)
        at com.google.errorprone.scanner.ErrorProneScanner.visitConditionalExpression(ErrorProneScanner.java:144)
        at com.sun.tools.javac.tree.JCTree$JCConditional.accept(JCTree.java:1361)
        at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:72)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:89)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
        at com.sun.source.util.TreeScanner.visitReturn(TreeScanner.java:470)
        at com.google.errorprone.scanner.ErrorProneScanner.visitReturn(ErrorProneScanner.java:1066)
        at com.google.errorprone.scanner.ErrorProneScanner.visitReturn(ErrorProneScanner.java:144)
        at com.sun.tools.javac.tree.JCTree$JCReturn.accept(JCTree.java:1518)
        at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:72)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:89)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
        at com.sun.source.util.TreeScanner.scan(TreeScanner.java:106)
        at com.sun.source.util.TreeScanner.visitBlock(TreeScanner.java:249)
        at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:575)
        at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:144)
        at com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:996)
        at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:72)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:89)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
        at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:91)
        at com.sun.source.util.TreeScanner.visitMethod(TreeScanner.java:207)
        at com.google.errorprone.scanner.ErrorProneScanner.visitMethod(ErrorProneScanner.java:943)
        at com.google.errorprone.scanner.ErrorProneScanner.visitMethod(ErrorProneScanner.java:144)
        at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:868)
        at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:72)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:89)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
        at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:91)
        at com.sun.source.util.TreeScanner.scan(TreeScanner.java:106)
        at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:114)
        at com.sun.source.util.TreeScanner.visitClass(TreeScanner.java:188)
        at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:635)
        at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:144)
        at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:778)
        at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:72)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:89)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
        at com.sun.source.util.TreeScanner.scan(TreeScanner.java:106)
        at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:114)
        at com.sun.source.util.TreeScanner.visitCompilationUnit(TreeScanner.java:145)
        at com.google.errorprone.scanner.ErrorProneScanner.visitCompilationUnit(ErrorProneScanner.java:650)
        at com.google.errorprone.scanner.ErrorProneScanner.visitCompilationUnit(ErrorProneScanner.java:144)
        at com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:561)
        at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:53)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:68)
        at com.google.errorprone.scanner.ErrorProneScannerTransformer.apply(ErrorProneScannerTransformer.java:43)
        at com.google.errorprone.ErrorProneAnalyzer.finished(ErrorProneAnalyzer.java:145)
        at com.sun.tools.javac.api.MultiTaskListener.finished(MultiTaskListener.java:113)
        at com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1303)
        at com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1247)
        at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:858)
        at com.sun.tools.javac.main.Main.compile(Main.java:253)
        at com.google.errorprone.BaseErrorProneCompiler.run(BaseErrorProneCompiler.java:214)
        at com.google.errorprone.BaseErrorProneCompiler.run(BaseErrorProneCompiler.java:106)
        at com.google.errorprone.ErrorProneCompiler.run(ErrorProneCompiler.java:128)
        at com.google.errorprone.ErrorProneCompiler.compile(ErrorProneCompiler.java:70)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at net.ltgt.gradle.errorprone.ErrorProneCompiler.execute(ErrorProneCompiler.java:57)
        at net.ltgt.gradle.errorprone.ErrorProneCompiler.execute(ErrorProneCompiler.java:25)
        at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.delegateAndHandleErrors(NormalizingJavaCompiler.java:104)
        at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:53)
        at org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute(NormalizingJavaCompiler.java:38)
        at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:35)
        at org.gradle.api.internal.tasks.compile.CleaningJavaCompilerSupport.execute(CleaningJavaCompilerSupport.java:25)
        at org.gradle.api.tasks.compile.JavaCompile.performCompilation(JavaCompile.java:188)
        at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:169)
        at org.gradle.api.tasks.compile.JavaCompile.compile(JavaCompile.java:112)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
        at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:163)
        at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
        at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:123)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:95)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:76)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:55)
        at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:61)
        at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
        at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
        at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:45)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:51)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
        at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
        at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:233)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:215)
        at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:74)
        at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:55)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
        at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)

I did manage to get it to throw elsewhere as well:

/Users/xorlev/Code/FullContact/data/p/models/src/main/java/com/fullcontact/p/models/graph/AuthoritativeVertexValue.java:32: error: An unhandled exception was thrown by the Error Prone static analysis plugin.
    private Optional<VertexWithScore<NameVertexKey>> bestName = Optional.absent();
                                                     ^
     Please report this at https://github.com/google/error-prone/issues/new and include the following:

     error-prone version: 2.0.15
     Stack Trace:
     java.lang.IllegalArgumentException: Invalid range: [917..-1)
        at com.google.common.collect.Range.<init>(Range.java:352)
        at com.google.common.collect.Range.create(Range.java:146)
        at com.google.common.collect.Range.closedOpen(Range.java:182)
        at com.google.errorprone.fixes.Replacement.create(Replacement.java:38)
        at com.google.errorprone.fixes.SuggestedFix$ReplacementFix.getReplacement(SuggestedFix.java:369)
        at com.google.errorprone.fixes.SuggestedFix.getReplacements(SuggestedFix.java:91)
        at com.google.errorprone.fixes.AppliedFix$Applier.apply(AppliedFix.java:66)
        at com.google.errorprone.JavacErrorDescriptionListener.lambda$new$0(JavacErrorDescriptionListener.java:61)
        at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
        at java.util.Iterator.forEachRemaining(Iterator.java:116)
        at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
        at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
        at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
        at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
        at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
        at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
        at com.google.errorprone.JavacErrorDescriptionListener.onDescribed(JavacErrorDescriptionListener.java:75)
        at com.google.errorprone.VisitorState.reportMatch(VisitorState.java:159)
        at com.google.errorprone.scanner.Scanner.reportMatch(Scanner.java:160)
        at com.google.errorprone.scanner.ErrorProneScanner.visitBinary(ErrorProneScanner.java:554)
        at com.google.errorprone.scanner.ErrorProneScanner.visitBinary(ErrorProneScanner.java:144)
        at com.sun.tools.javac.tree.JCTree$JCBinary.accept(JCTree.java:1958)
        at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:72)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:89)
        at com.google.errorprone.scanner.Scanner.scan(Scanner.java:43)
@cushon
Copy link
Collaborator

cushon commented Dec 17, 2017

This is a duplicate of #447.

@cushon cushon closed this as completed Dec 17, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants