aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/skyframe/EagerInvalidator.java
diff options
context:
space:
mode:
authorGravatar Chloe Calvarin <ccalvarin@google.com>2016-10-05 22:52:55 +0000
committerGravatar Damien Martin-Guillerez <dmarting@google.com>2016-10-06 07:41:32 +0000
commit860b8d27724f6beeb67e19f102ddca00b143bee6 (patch)
tree139421c989295111ac452e159ec084f4a3397937 /src/main/java/com/google/devtools/build/skyframe/EagerInvalidator.java
parentcddad444da9748f26b4326f8e2de13ad7f26239e (diff)
EvaluationProgressReceiver absorbs other progress trackers.
Remove DirtyKeyTracker and inflight node tracking as independent progress tracking bits of code, and instead use an internal-facing DirtyTrackingProgressReceiver wrapper of the user's EvaluationProgressReceiver. -- MOS_MIGRATED_REVID=135291924
Diffstat (limited to 'src/main/java/com/google/devtools/build/skyframe/EagerInvalidator.java')
-rw-r--r--src/main/java/com/google/devtools/build/skyframe/EagerInvalidator.java43
1 files changed, 15 insertions, 28 deletions
diff --git a/src/main/java/com/google/devtools/build/skyframe/EagerInvalidator.java b/src/main/java/com/google/devtools/build/skyframe/EagerInvalidator.java
index bff685097d..3577230e3a 100644
--- a/src/main/java/com/google/devtools/build/skyframe/EagerInvalidator.java
+++ b/src/main/java/com/google/devtools/build/skyframe/EagerInvalidator.java
@@ -44,14 +44,13 @@ public final class EagerInvalidator {
public static void delete(
InMemoryGraph graph,
Iterable<SkyKey> diff,
- EvaluationProgressReceiver progressReceiver,
+ DirtyTrackingProgressReceiver progressReceiver,
InvalidationState state,
- boolean traverseGraph,
- DirtyKeyTracker dirtyKeyTracker)
+ boolean traverseGraph)
throws InterruptedException {
DeletingNodeVisitor visitor =
createDeletingVisitorIfNeeded(
- graph, diff, progressReceiver, state, traverseGraph, dirtyKeyTracker);
+ graph, diff, progressReceiver, state, traverseGraph);
if (visitor != null) {
visitor.run();
}
@@ -61,37 +60,32 @@ public final class EagerInvalidator {
static DeletingNodeVisitor createDeletingVisitorIfNeeded(
InMemoryGraph graph,
Iterable<SkyKey> diff,
- EvaluationProgressReceiver progressReceiver,
+ DirtyTrackingProgressReceiver progressReceiver,
InvalidationState state,
- boolean traverseGraph,
- DirtyKeyTracker dirtyKeyTracker) {
+ boolean traverseGraph) {
state.update(diff);
return state.isEmpty() ? null
- : new DeletingNodeVisitor(graph, progressReceiver, state, traverseGraph,
- dirtyKeyTracker);
+ : new DeletingNodeVisitor(graph, progressReceiver, state, traverseGraph);
}
@Nullable
static DirtyingNodeVisitor createInvalidatingVisitorIfNeeded(
QueryableGraph graph,
Iterable<SkyKey> diff,
- EvaluationProgressReceiver progressReceiver,
+ DirtyTrackingProgressReceiver progressReceiver,
InvalidationState state,
- DirtyKeyTracker dirtyKeyTracker,
Function<ExecutorParams, ? extends ExecutorService> executorFactory) {
state.update(diff);
return state.isEmpty() ? null
- : new DirtyingNodeVisitor(graph, progressReceiver, state, dirtyKeyTracker,
- executorFactory);
+ : new DirtyingNodeVisitor(graph, progressReceiver, state, executorFactory);
}
@Nullable
private static DirtyingNodeVisitor createInvalidatingVisitorIfNeeded(
QueryableGraph graph,
Iterable<SkyKey> diff,
- EvaluationProgressReceiver progressReceiver,
+ DirtyTrackingProgressReceiver progressReceiver,
InvalidationState state,
- DirtyKeyTracker dirtyKeyTracker,
ForkJoinPool forkJoinPool,
boolean supportInterruptions,
ErrorHandler errorHandler) {
@@ -102,11 +96,9 @@ public final class EagerInvalidator {
graph,
progressReceiver,
state,
- dirtyKeyTracker,
forkJoinPool,
supportInterruptions);
}
-
/**
* Invalidates given values and their upward transitive closure in the graph if necessary, using
* an executor constructed with the provided factory.
@@ -114,14 +106,13 @@ public final class EagerInvalidator {
public static void invalidate(
QueryableGraph graph,
Iterable<SkyKey> diff,
- EvaluationProgressReceiver progressReceiver,
+ DirtyTrackingProgressReceiver progressReceiver,
InvalidationState state,
- DirtyKeyTracker dirtyKeyTracker,
Function<ExecutorParams, ? extends ExecutorService> executorFactory)
throws InterruptedException {
DirtyingNodeVisitor visitor =
createInvalidatingVisitorIfNeeded(
- graph, diff, progressReceiver, state, dirtyKeyTracker, executorFactory);
+ graph, diff, progressReceiver, state, executorFactory);
if (visitor != null) {
visitor.run();
}
@@ -134,9 +125,8 @@ public final class EagerInvalidator {
public static void invalidate(
QueryableGraph graph,
Iterable<SkyKey> diff,
- EvaluationProgressReceiver progressReceiver,
+ DirtyTrackingProgressReceiver progressReceiver,
InvalidationState state,
- DirtyKeyTracker dirtyKeyTracker,
ForkJoinPool forkJoinPool,
boolean supportInterruptions)
throws InterruptedException {
@@ -146,7 +136,6 @@ public final class EagerInvalidator {
diff,
progressReceiver,
state,
- dirtyKeyTracker,
forkJoinPool,
supportInterruptions,
ErrorHandler.NullHandler.INSTANCE);
@@ -159,12 +148,10 @@ public final class EagerInvalidator {
public static void invalidate(
QueryableGraph graph,
Iterable<SkyKey> diff,
- EvaluationProgressReceiver progressReceiver,
- InvalidationState state,
- DirtyKeyTracker dirtyKeyTracker)
+ DirtyTrackingProgressReceiver progressReceiver,
+ InvalidationState state)
throws InterruptedException {
- invalidate(graph, diff, progressReceiver, state, dirtyKeyTracker,
- AbstractQueueVisitor.EXECUTOR_FACTORY);
+ invalidate(graph, diff, progressReceiver, state, AbstractQueueVisitor.EXECUTOR_FACTORY);
}
}