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

[java] NPE - Inflater has been closed when running PMD #238

Closed
lssilva opened this issue Feb 6, 2017 · 1 comment
Closed

[java] NPE - Inflater has been closed when running PMD #238

lssilva opened this issue Feb 6, 2017 · 1 comment

Comments

@lssilva
Copy link

lssilva commented Feb 6, 2017

The build fails randomly with PMD exception, see below

Description:
Exception

[pmd] :scripts:pmdTestjava.lang.NullPointerException: Inflater has been closed
[pmd] 	at java.util.zip.Inflater.ensureOpen(Inflater.java:389)
[pmd] 	at java.util.zip.Inflater.inflate(Inflater.java:257)
[pmd] 	at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:152)
[pmd] 	at java.io.FilterInputStream.read(FilterInputStream.java:133)
[pmd] 	at java.io.FilterInputStream.read(FilterInputStream.java:107)
[pmd] 	at org.apache.commons.io.IOUtils.copyLarge(IOUtils.java:1792)
[pmd] 	at org.apache.commons.io.IOUtils.copyLarge(IOUtils.java:1769)
[pmd] 	at org.apache.commons.io.IOUtils.copy(IOUtils.java:1744)
[pmd] 	at org.apache.commons.io.IOUtils.toByteArray(IOUtils.java:462)
[pmd] 	at net.sourceforge.pmd.RuleSetFactoryCompatibility.filterRuleSetFile(RuleSetFactoryCompatibility.java:84)
[pmd] 	at net.sourceforge.pmd.RuleSetFactory.parseRuleSetNode(RuleSetFactory.java:249)
[pmd] 	at net.sourceforge.pmd.RuleSetFactory.createRuleSet(RuleSetFactory.java:202)
[pmd] 	at net.sourceforge.pmd.RuleSetFactory.createRuleSet(RuleSetFactory.java:197)
[pmd] 	at net.sourceforge.pmd.RuleSetFactory.parseRuleSetReferenceNode(RuleSetFactory.java:359)
[pmd] 	at net.sourceforge.pmd.RuleSetFactory.parseRuleNode(RuleSetFactory.java:317)
[pmd] 	at net.sourceforge.pmd.RuleSetFactory.parseRuleSetNode(RuleSetFactory.java:272)
[pmd] 	at net.sourceforge.pmd.RuleSetFactory.createRuleSet(RuleSetFactory.java:202)
[pmd] 	at net.sourceforge.pmd.RuleSetFactory.createRuleSet(RuleSetFactory.java:197)
[pmd] 	at net.sourceforge.pmd.RuleSetFactory.createRuleSets(RuleSetFactory.java:161)
[pmd] 	at net.sourceforge.pmd.RuleSetFactory.createRuleSets(RuleSetFactory.java:145)
[pmd] 	at net.sourceforge.pmd.RulesetsFactoryUtils.getRuleSets(RulesetsFactoryUtils.java:31)
[pmd] 	at net.sourceforge.pmd.processor.AbstractPMDProcessor.createRuleSets(AbstractPMDProcessor.java:63)
[pmd] 	at net.sourceforge.pmd.processor.MonoThreadProcessor.processFiles(MonoThreadProcessor.java:41)
[pmd] 	at net.sourceforge.pmd.PMD.processFiles(PMD.java:367)
[pmd] 	at net.sourceforge.pmd.ant.internal.PMDTaskImpl.doTask(PMDTaskImpl.java:188)
[pmd] 	at net.sourceforge.pmd.ant.internal.PMDTaskImpl.execute(PMDTaskImpl.java:269)
[pmd] 	at net.sourceforge.pmd.ant.PMDTask.execute(PMDTask.java:47)
[pmd] 	at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
[pmd] 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[pmd] 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[pmd] 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[pmd] 	at java.lang.reflect.Method.invoke(Method.java:498)
[pmd] 	at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
[pmd] 	at groovy.util.AntBuilder.performTask(AntBuilder.java:327)
[pmd] 	at groovy.util.AntBuilder.nodeCompleted(AntBuilder.java:272)
[pmd] 	at org.gradle.api.internal.project.ant.BasicAntBuilder.nodeCompleted(BasicAntBuilder.java:78)
[pmd] 	at sun.reflect.GeneratedMethodAccessor124.invoke(Unknown Source)
[pmd] 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[pmd] 	at java.lang.reflect.Method.invoke(Method.java:498)
[pmd] 	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
[pmd] 	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
[pmd] 	at org.gradle.internal.metaobject.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:382)
[pmd] 	at org.gradle.internal.metaobject.BeanDynamicObject.invokeMethod(BeanDynamicObject.java:170)
[pmd] 	at org.gradle.internal.metaobject.AbstractDynamicObject.invokeMethod(AbstractDynamicObject.java:163)
[pmd] 	at org.gradle.api.internal.project.antbuilder.AntBuilderDelegate.nodeCompleted(AntBuilderDelegate.java:118)
[pmd] 	at groovy.util.BuilderSupport.doInvokeMethod(BuilderSupport.java:154)
[pmd] 	at groovy.util.BuilderSupport.invokeMethod(BuilderSupport.java:67)
[pmd] 	at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:48)
[pmd] 	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:133)
[pmd] 	at org.gradle.api.plugins.quality.internal.PmdInvoker$_invoke_closure2.doCall(PmdInvoker.groovy:62)
[pmd] 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[pmd] 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[pmd] 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[pmd] 	at java.lang.reflect.Method.invoke(Method.java:498)
[pmd] 	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:93)
[pmd] 	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:325)
[pmd] 	at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:294)
[pmd] 	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1024)
[pmd] 	at groovy.lang.Closure.call(Closure.java:414)
[pmd] 	at groovy.lang.Closure.call(Closure.java:430)
[pmd] 	at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:70)
[pmd] 	at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:52)
[pmd] 	at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder$2.execute(DefaultIsolatedAntBuilder.java:151)
[pmd] 	at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder$2.execute(DefaultIsolatedAntBuilder.java:133)
[pmd] 	at org.gradle.api.internal.project.antbuilder.ClassPathToClassLoaderCache.withCachedClassLoader(ClassPathToClassLoaderCache.java:134)
[pmd] 	at org.gradle.api.internal.project.antbuilder.DefaultIsolatedAntBuilder.execute(DefaultIsolatedAntBuilder.java:127)
[pmd] 	at org.gradle.api.internal.project.IsolatedAntBuilder$execute$2.call(Unknown Source)
[pmd] 	at org.gradle.api.plugins.quality.internal.PmdInvoker.invoke(PmdInvoker.groovy:60)
[pmd] 	at org.gradle.api.plugins.quality.Pmd.run(Pmd.java:93)
[pmd] 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[pmd] 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[pmd] 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[pmd] 	at java.lang.reflect.Method.invoke(Method.java:498)
[pmd] 	at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)
[pmd] 	at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.doExecute(DefaultTaskClassInfoStore.java:136)
[pmd] 	at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:129)
[pmd] 	at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:118)
[pmd] 	at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:623)
[pmd] 	at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:606)
[pmd] 	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
[pmd] 	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
[pmd] 	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
[pmd] 	at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
[pmd] 	at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64)
[pmd] 	at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
[pmd] 	at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52)
[pmd] 	at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
[pmd] 	at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
[pmd] 	at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
[pmd] 	at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:233)
[pmd] 	at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:215)
[pmd] 	at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:74)
[pmd] 	at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:55)
[pmd] 	at org.gradle.execution.taskgraph.ParallelTaskPlanExecutor.process(ParallelTaskPlanExecutor.java:50)
[pmd] 	at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:113)
[pmd] 	at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)
[pmd] 	at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
[pmd] 	at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23)
[pmd] 	at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43)
[pmd] 	at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
[pmd] 	at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
[pmd] 	at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)
[pmd] 	at org.gradle.initialization.DefaultGradleLauncher$4.run(DefaultGradleLauncher.java:186)
[pmd] 	at org.gradle.internal.Factories$1.create(Factories.java:22)
[pmd] 	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
[pmd] 	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:53)
[pmd] 	at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:183)
[pmd] 	at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:33)
[pmd] 	at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:112)
[pmd] 	at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:106)
[pmd] 	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
[pmd] 	at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63)
[pmd] 	at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:106)
[pmd] 	at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:92)
[pmd] 	at org.gradle.launcher.exec.GradleBuildController.run(GradleBuildController.java:66)
[pmd] 	at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
[pmd] 	at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
[pmd] 	at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:41)
[pmd] 	at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
[pmd] 	at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:79)
[pmd] 	at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:51)
[pmd] 	at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:59)
[pmd] 	at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
[pmd] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
[pmd] 	at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:47)
[pmd] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
[pmd] 	at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
[pmd] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
[pmd] 	at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
[pmd] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
[pmd] 	at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
[pmd] 	at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
[pmd] 	at org.gradle.util.Swapper.swap(Swapper.java:38)
[pmd] 	at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
[pmd] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
[pmd] 	at org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:55)
[pmd] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
[pmd] 	at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
[pmd] 	at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
[pmd] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
[pmd] 	at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)
[pmd] 	at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
[pmd] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
[pmd] 	at org.gradle.launcher.daemon.server.exec.HintGCAfterBuild.execute(HintGCAfterBuild.java:44)
[pmd] 	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
[pmd] 	at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
[pmd] 	at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:293)
[pmd] 	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
[pmd] 	at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
[pmd] 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[pmd] 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[pmd] 	at java.lang.Thread.run(Thread.java:745)

Running PMD through: [CLI] Jenkins

@jsotuyod
Copy link
Member

jsotuyod commented Feb 6, 2017

@lssilva thanks for your report.

This seems to be a duplicate of #234

A fix for that issue has already been proposed at #235, and will be included in PMD 5.5.4 and 4.4.5.

In the meantime, you can disable parallel execution in Gradle.

Gradle will run in parallel if:

  • org.gradle.parallel=true is present in gradle.properties
  • --parallel flag is used when executing gradle

You can override both values using --max-workers 1 to force a single worker being used always, but this will also affect test running in parallel.

@jsotuyod jsotuyod closed this as completed Feb 6, 2017
@jsotuyod jsotuyod changed the title *[java]* [java] NPE - Inflater has been closed when running PMD Feb 6, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants