aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/skyframe/EagerInvalidator.java
diff options
context:
space:
mode:
authorGravatar Nathan Harmata <nharmata@google.com>2016-05-26 19:56:24 +0000
committerGravatar Yue Gan <yueg@google.com>2016-05-27 08:45:27 +0000
commit3724d92fb85e021b6b65c3edb77c61572baedc25 (patch)
tree7f6c2f47b84e01d603d73c8d46c0265ade4be65e /src/main/java/com/google/devtools/build/skyframe/EagerInvalidator.java
parenta4bfb3c49f164d47322b39c560a716b89788002b (diff)
Allow AQV users to inject arbitrary handling of classified errors.
-- MOS_MIGRATED_REVID=123347295
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.java13
1 files changed, 9 insertions, 4 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 49bcfa0165..bb6d2b2685 100644
--- a/src/main/java/com/google/devtools/build/skyframe/EagerInvalidator.java
+++ b/src/main/java/com/google/devtools/build/skyframe/EagerInvalidator.java
@@ -15,6 +15,7 @@ package com.google.devtools.build.skyframe;
import com.google.common.base.Function;
import com.google.devtools.build.lib.concurrent.AbstractQueueVisitor;
+import com.google.devtools.build.lib.concurrent.ErrorHandler;
import com.google.devtools.build.lib.concurrent.ExecutorParams;
import com.google.devtools.build.skyframe.InvalidatingNodeVisitor.DeletingNodeVisitor;
import com.google.devtools.build.skyframe.InvalidatingNodeVisitor.DirtyingNodeVisitor;
@@ -89,7 +90,8 @@ public final class EagerInvalidator {
InvalidationState state,
DirtyKeyTracker dirtyKeyTracker,
ForkJoinPool forkJoinPool,
- boolean supportInterruptions) {
+ boolean supportInterruptions,
+ ErrorHandler errorHandler) {
state.update(diff);
return state.isEmpty()
? null
@@ -99,7 +101,8 @@ public final class EagerInvalidator {
state,
dirtyKeyTracker,
forkJoinPool,
- supportInterruptions);
+ supportInterruptions,
+ errorHandler);
}
/**
@@ -133,7 +136,8 @@ public final class EagerInvalidator {
InvalidationState state,
DirtyKeyTracker dirtyKeyTracker,
ForkJoinPool forkJoinPool,
- boolean supportInterruptions)
+ boolean supportInterruptions,
+ ErrorHandler errorHandler)
throws InterruptedException {
DirtyingNodeVisitor visitor =
createInvalidatingVisitorIfNeeded(
@@ -143,7 +147,8 @@ public final class EagerInvalidator {
state,
dirtyKeyTracker,
forkJoinPool,
- supportInterruptions);
+ supportInterruptions,
+ errorHandler);
if (visitor != null) {
visitor.run();
}