aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/SequencedSkyframeExecutor.java
diff options
context:
space:
mode:
authorGravatar janakr <janakr@google.com>2017-10-10 03:22:21 +0200
committerGravatar Marcel Hlopko <hlopko@google.com>2017-10-10 11:22:49 +0200
commit1cde8722b930f1c9cf5346f887a0b293bae49f1f (patch)
treefc690c495c8c4534f7b1fc7ff989f528fc53f11a /src/main/java/com/google/devtools/build/lib/skyframe/SequencedSkyframeExecutor.java
parent6f411661984a9be358c5b457b31c88368d6fdd63 (diff)
Allow NodeEntry implementations to keep just deps, as opposed to all edges or no edges. Also add option to disable checks in MemoizingEvaluatorTest that don't make sense for implementations that don't keep track of dirty nodes. Also extract RecordingDifferencer to an interface. And add a test for the situation that a node changes during a build that it's not requested, and which fails, necessitating cleanup.
PiperOrigin-RevId: 171616817
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/SequencedSkyframeExecutor.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/SequencedSkyframeExecutor.java3
1 files changed, 2 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 1f4f8039a2..406de7850d 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
@@ -66,6 +66,7 @@ import com.google.devtools.build.skyframe.LegacySkyKey;
import com.google.devtools.build.skyframe.MemoizingEvaluator.EvaluatorSupplier;
import com.google.devtools.build.skyframe.NodeEntry;
import com.google.devtools.build.skyframe.RecordingDifferencer;
+import com.google.devtools.build.skyframe.SequencedRecordingDifferencer;
import com.google.devtools.build.skyframe.SequentialBuildDriver;
import com.google.devtools.build.skyframe.SkyFunction;
import com.google.devtools.build.skyframe.SkyFunctionName;
@@ -184,7 +185,7 @@ public final class SequencedSkyframeExecutor extends SkyframeExecutor {
protected void init() {
// Note that we need to set recordingDiffer first since SkyframeExecutor#init calls
// SkyframeExecutor#evaluatorDiffer.
- recordingDiffer = new RecordingDifferencer();
+ recordingDiffer = new SequencedRecordingDifferencer();
super.init();
}