diff options
author | shahan <shahan@google.com> | 2018-07-30 05:50:49 -0700 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2018-07-30 05:51:59 -0700 |
commit | 7b3a3fd995608b1f18c3776a60c5b645f4e31393 (patch) | |
tree | 8c6b4d37ecdf5a3bc60250bf0f8eebd65e4f613c /src/main/java/com | |
parent | 56b12012028f9ec1378c5203918e20bd5b4fe044 (diff) |
Allows subclasses of SkyframeExecutor to enable analysis during execution.
PiperOrigin-RevId: 206568465
Diffstat (limited to 'src/main/java/com')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java | 7 | ||||
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java | 4 |
2 files changed, 9 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java index 60a22fb1c8..3bb767fd94 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java @@ -588,8 +588,11 @@ public final class SkyframeBuildView { ImmutableMap<Label, ConfigMatchingProvider> configConditions, @Nullable ToolchainContext toolchainContext) throws InterruptedException, ActionConflictException { - Preconditions.checkState(enableAnalysis, - "Already in execution phase %s %s", target, configuration); + Preconditions.checkState( + enableAnalysis || skyframeExecutor.allowsAnalysisDuringExecution(), + "Already in execution phase %s %s", + target, + configuration); Preconditions.checkNotNull(analysisEnvironment); Preconditions.checkNotNull(target); Preconditions.checkNotNull(prerequisiteMap); 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 80ad0b3d96..c666c4c350 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 @@ -2324,4 +2324,8 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory { modifiedFilesDuringPreviousBuild = 0; return result; } + + protected boolean allowsAnalysisDuringExecution() { + return false; + } } |