diff options
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java index 5bf35799b5..2e76c14927 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java @@ -206,6 +206,7 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory { private final AtomicReference<ActionExecutionStatusReporter> statusReporterRef = new AtomicReference<>(); private final SkyframeActionExecutor skyframeActionExecutor; + private CompletionReceiver actionExecutionFunction; protected SkyframeProgressReceiver progressReceiver; private final AtomicReference<CyclesReporter> cyclesReporter = new AtomicReference<>(); @@ -320,8 +321,10 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory { buildDataDirectory)); map.put(SkyFunctions.BUILD_INFO, new WorkspaceStatusFunction()); map.put(SkyFunctions.COVERAGE_REPORT, new CoverageReportFunction()); - map.put(SkyFunctions.ACTION_EXECUTION, - new ActionExecutionFunction(skyframeActionExecutor, tsgm)); + ActionExecutionFunction actionExecutionFunction = + new ActionExecutionFunction(skyframeActionExecutor, tsgm); + map.put(SkyFunctions.ACTION_EXECUTION, actionExecutionFunction); + this.actionExecutionFunction = actionExecutionFunction; map.put(SkyFunctions.RECURSIVE_FILESYSTEM_TRAVERSAL, new RecursiveFilesystemTraversalFunction()); map.put(SkyFunctions.FILESET_ENTRY, new FilesetEntryFunction()); @@ -955,6 +958,7 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory { // Also releases thread locks. resourceManager.resetResourceUsage(); skyframeActionExecutor.executionOver(); + actionExecutionFunction.complete(); } } |