FlowDroid icon indicating copy to clipboard operation
FlowDroid copied to clipboard

ERROR soot.jimple.infoflow.data.pathBuilders.DefaultPathBuilderFactory$RepeatableContextSensitivePathBuilder - Could not wait for executor termination

Open ohyeah521 opened this issue 1 year ago • 8 comments

[main] INFO soot.jimple.infoflow.data.pathBuilders.DefaultPathBuilderFactory$ShutdownBatchPathBuilder - Running path reconstruction batch 1 with 5 elements
[main] INFO soot.jimple.infoflow.data.pathBuilders.DefaultPathBuilderFactory$RepeatableContextSensitivePathBuilder - Obtainted 5 connections between sources and sinks
[main] INFO soot.jimple.infoflow.data.pathBuilders.DefaultPathBuilderFactory$RepeatableContextSensitivePathBuilder - Building path 1...
[main] INFO soot.jimple.infoflow.data.pathBuilders.DefaultPathBuilderFactory$RepeatableContextSensitivePathBuilder - Building path 2...
[main] INFO soot.jimple.infoflow.data.pathBuilders.DefaultPathBuilderFactory$RepeatableContextSensitivePathBuilder - Building path 3...
[main] INFO soot.jimple.infoflow.data.pathBuilders.DefaultPathBuilderFactory$RepeatableContextSensitivePathBuilder - Building path 4...
[main] INFO soot.jimple.infoflow.data.pathBuilders.DefaultPathBuilderFactory$RepeatableContextSensitivePathBuilder - Building path 5...
[main] ERROR soot.jimple.infoflow.data.pathBuilders.DefaultPathBuilderFactory$RepeatableContextSensitivePathBuilder - Could not wait for executor termination
java.lang.InterruptedException
        at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.tryAcquireSharedNanos(AbstractQueuedSynchronizer.java:1367)
        at heros.solver.CountLatch.awaitZero(CountLatch.java:79)
        at heros.solver.CountingThreadPoolExecutor.awaitCompletion(CountingThreadPoolExecutor.java:86)
        at soot.jimple.infoflow.solver.executors.InterruptableExecutor.awaitCompletion(InterruptableExecutor.java:88)
        at soot.jimple.infoflow.data.pathBuilders.ContextSensitivePathBuilder.computeTaintPaths(ContextSensitivePathBuilder.java:270)
        at soot.jimple.infoflow.data.pathBuilders.BatchPathBuilder.computeTaintPaths(BatchPathBuilder.java:47)
        at soot.jimple.infoflow.data.pathBuilders.DefaultPathBuilderFactory$ShutdownBatchPathBuilder.computeTaintPaths(DefaultPathBuilderFactory.java:56)
        at soot.jimple.infoflow.AbstractInfoflow.runTaintAnalysis(AbstractInfoflow.java:1107)
        at soot.jimple.infoflow.AbstractInfoflow.runAnalysis(AbstractInfoflow.java:634)
        at soot.jimple.infoflow.AbstractInfoflow.runAnalysis(AbstractInfoflow.java:567)
        at soot.jimple.infoflow.android.SetupApplication$InPlaceInfoflow.runAnalysis(SetupApplication.java:1320)
        at soot.jimple.infoflow.android.SetupApplication.processEntryPoint(SetupApplication.java:1609)
        at soot.jimple.infoflow.android.SetupApplication.runInfoflow(SetupApplication.java:1544)
        at soot.jimple.infoflow.android.SetupApplication.runInfoflow(SetupApplication.java:1491)
        at soot.jimple.infoflow.cmd.MainClass.run(MainClass.java:358)
        at soot.jimple.infoflow.cmd.MainClass.main(MainClass.java:256)

ohyeah521 avatar Nov 20 '24 00:11 ohyeah521

This seems to be a path builder running beyond its timeout and failing to be terminated. What exactly is your question?

StevenArzt avatar Nov 21 '24 10:11 StevenArzt

It will keep trying to rebuild the path, the cpu is occupied 100%, and will not exit for several hours.

ohyeah521 avatar Nov 21 '24 10:11 ohyeah521

It will keep trying to rebuild the path, the cpu is occupied 100%, and will not exit for several hours.

Are you on an older version of FlowDroid? At one point there was a bug in the path reconstruction with intermediate paths leading to excessive path building time.

t1mlange avatar Nov 21 '24 12:11 t1mlange

It will keep trying to rebuild the path, the cpu is occupied 100%, and will not exit for several hours.

Are you on an older version of FlowDroid? At one point there was a bug in the path reconstruction with intermediate paths leading to excessive path building time.

This error occurred in FlowDroid 2.13, then I downgraded to FlowDroid 2.10, this version works fine

ohyeah521 avatar Nov 21 '24 12:11 ohyeah521

The opposite direction, upgrading to 2.14, would be better. We obviously fixed quite a few bugs between 2.10 and now.

t1mlange avatar Nov 21 '24 13:11 t1mlange

There is no release jar package for version 2.14. I got the following error when compiling under Windows.

[INFO] Reactor Summary for FlowDroid Parent Module 2.15.0-SNAPSHOT:
[INFO]
[INFO] FlowDroid Parent Module ............................ SUCCESS [  0.125 s]
[INFO] soot-infoflow ...................................... FAILURE [  0.898 s]
[INFO] soot-infoflow-android .............................. SKIPPED
[INFO] StubDroid .......................................... SKIPPED
[INFO] FlowDroid Command Line Util ........................ SKIPPED
[INFO] soot-infoflow-integration .......................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  1.132 s
[INFO] Finished at: 2024-11-21T22:40:54+08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0:compile (default-compile) on project soot-infoflow: Fatal error compiling: 错误: 无效的目标发行版:17 -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <args> -rf :soot-infoflow

ohyeah521 avatar Nov 21 '24 14:11 ohyeah521

We have published the newer releases to Maven Central: https://central.sonatype.com/artifact/de.fraunhofer.sit.sse.flowdroid/soot-infoflow/versions

StevenArzt avatar Nov 21 '24 15:11 StevenArzt

thanks

ohyeah521 avatar Nov 21 '24 15:11 ohyeah521