aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe
diff options
context:
space:
mode:
authorGravatar janakr <janakr@google.com>2018-05-15 13:07:01 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-05-15 13:08:16 -0700
commitf817134b2e39af6873255cecdda1a1d7ff38e090 (patch)
tree10d7c4e458bd4973c368145188f5aa8b3c0cc887 /src/main/java/com/google/devtools/build/lib/skyframe
parent17aebab3a6d17e6b691af6adaf374e07e4b9efe2 (diff)
Potentially allow children of a dirty node to be missing from the graph. Also pass the GraphInconsistencyReciever into SkyframeExecutor as a parameter.
PiperOrigin-RevId: 196716642
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/SequencedSkyframeExecutor.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java5
2 files changed, 6 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SequencedSkyframeExecutor.java b/src/main/java/com/google/devtools/build/lib/skyframe/SequencedSkyframeExecutor.java
index 0b371780ca..cf49cc96c8 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/SequencedSkyframeExecutor.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/SequencedSkyframeExecutor.java
@@ -76,6 +76,7 @@ import com.google.devtools.build.lib.vfs.PathFragment;
import com.google.devtools.build.lib.vfs.Root;
import com.google.devtools.build.skyframe.BuildDriver;
import com.google.devtools.build.skyframe.Differencer;
+import com.google.devtools.build.skyframe.GraphInconsistencyReceiver;
import com.google.devtools.build.skyframe.InMemoryMemoizingEvaluator;
import com.google.devtools.build.skyframe.Injectable;
import com.google.devtools.build.skyframe.MemoizingEvaluator.EvaluatorSupplier;
@@ -167,6 +168,7 @@ public final class SequencedSkyframeExecutor extends SkyframeExecutor {
buildFilesByPriority,
actionOnIOExceptionReadingBuildFile,
/*shouldUnblockCpuWorkWhenFetchingDeps=*/ false,
+ GraphInconsistencyReceiver.THROWING,
defaultBuildOptions,
new PackageProgressReceiver(),
mutableArtifactFactorySupplier,
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 d21b239197..c7c38478bc 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
@@ -201,6 +201,7 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
private final FileSystem fileSystem;
private final BlazeDirectories directories;
protected final ExternalFilesHelper externalFilesHelper;
+ private final GraphInconsistencyReceiver graphInconsistencyReceiver;
@Nullable protected OutputService outputService;
// TODO(bazel-team): Figure out how to handle value builders that block internally. Blocking
@@ -339,6 +340,7 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
List<BuildFileName> buildFilesByPriority,
ActionOnIOExceptionReadingBuildFile actionOnIOExceptionReadingBuildFile,
boolean shouldUnblockCpuWorkWhenFetchingDeps,
+ GraphInconsistencyReceiver graphInconsistencyReceiver,
BuildOptions defaultBuildOptions,
@Nullable PackageProgressReceiver packageProgress,
MutableArtifactFactorySupplier artifactResolverSupplier,
@@ -348,6 +350,7 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
this.evaluatorSupplier = evaluatorSupplier;
this.pkgFactory = pkgFactory;
this.shouldUnblockCpuWorkWhenFetchingDeps = shouldUnblockCpuWorkWhenFetchingDeps;
+ this.graphInconsistencyReceiver = graphInconsistencyReceiver;
this.pkgFactory.setSyscalls(syscalls);
this.workspaceStatusActionFactory = workspaceStatusActionFactory;
this.packageManager = new SkyframePackageManager(
@@ -655,7 +658,7 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
skyFunctions,
evaluatorDiffer(),
progressReceiver,
- GraphInconsistencyReceiver.THROWING,
+ graphInconsistencyReceiver,
emittedEventState,
tracksStateForIncrementality());
buildDriver = getBuildDriver();