aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/SequencedSkyframeExecutor.java
diff options
context:
space:
mode:
authorGravatar felly <felly@google.com>2018-05-15 10:57:33 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-05-15 10:59:22 -0700
commitac7d5f6a2aeff868165490c97d4600a88dd3cf4f (patch)
tree8811f7681e00f29ea97c35cd3daf9470fae57c18 /src/main/java/com/google/devtools/build/lib/skyframe/SequencedSkyframeExecutor.java
parente78867461c594d9afcaae0dd115b86e2d63a29ac (diff)
Move --track_incremental_state and --keep_state_after_build to CommonCommandOptions to better facilitate certain kinds of benchmarking.
PiperOrigin-RevId: 196695342
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.java23
1 files changed, 7 insertions, 16 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 aaeed3f73f..0b371780ca 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
@@ -31,13 +31,11 @@ import com.google.devtools.build.lib.actions.ArtifactRoot;
import com.google.devtools.build.lib.actions.CommandLineExpansionException;
import com.google.devtools.build.lib.analysis.AnalysisProtos.ActionGraphContainer;
import com.google.devtools.build.lib.analysis.BlazeDirectories;
-import com.google.devtools.build.lib.analysis.BuildView;
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
import com.google.devtools.build.lib.analysis.WorkspaceStatusAction.Factory;
import com.google.devtools.build.lib.analysis.buildinfo.BuildInfoFactory;
import com.google.devtools.build.lib.analysis.config.BuildOptions;
import com.google.devtools.build.lib.analysis.configuredtargets.RuleConfiguredTarget;
-import com.google.devtools.build.lib.buildtool.BuildRequestOptions;
import com.google.devtools.build.lib.cmdline.PackageIdentifier;
import com.google.devtools.build.lib.concurrent.Uninterruptibles;
import com.google.devtools.build.lib.events.Event;
@@ -90,7 +88,6 @@ import com.google.devtools.build.skyframe.SkyFunctionName;
import com.google.devtools.build.skyframe.SkyKey;
import com.google.devtools.build.skyframe.SkyValue;
import com.google.devtools.common.options.OptionsClassProvider;
-import com.google.devtools.common.options.OptionsProvider;
import java.io.PrintStream;
import java.util.ArrayList;
import java.util.Collection;
@@ -579,22 +576,19 @@ public final class SequencedSkyframeExecutor extends SkyframeExecutor {
*/
@Override
public void decideKeepIncrementalState(
- boolean batch, OptionsProvider options, EventHandler eventHandler) {
+ boolean batch, boolean keepStateAfterBuild, boolean shouldTrackIncrementalState,
+ boolean discardAnalysisCache, boolean discardActionsAfterExecution,
+ EventHandler eventHandler) {
Preconditions.checkState(!active);
- BuildView.Options viewOptions = options.getOptions(BuildView.Options.class);
- BuildRequestOptions requestOptions = options.getOptions(BuildRequestOptions.class);
boolean oldValueOfTrackIncrementalState = trackIncrementalState;
// First check if the incrementality state should be kept around during the build.
- boolean explicitlyRequestedNoIncrementalData =
- requestOptions != null && !requestOptions.trackIncrementalState;
- boolean implicitlyRequestedNoIncrementalData =
- batch && viewOptions != null && viewOptions.discardAnalysisCache;
+ boolean explicitlyRequestedNoIncrementalData = !shouldTrackIncrementalState;
+ boolean implicitlyRequestedNoIncrementalData = (batch && discardAnalysisCache);
trackIncrementalState =
!explicitlyRequestedNoIncrementalData && !implicitlyRequestedNoIncrementalData;
- boolean keepStateAfterBuild = requestOptions != null && requestOptions.keepStateAfterBuild;
if (explicitlyRequestedNoIncrementalData != implicitlyRequestedNoIncrementalData) {
- if (requestOptions != null && !explicitlyRequestedNoIncrementalData) {
+ if (!explicitlyRequestedNoIncrementalData) {
eventHandler.handle(
Event.warn(
"--batch and --discard_analysis_cache specified, but --notrack_incremental_state "
@@ -612,10 +606,7 @@ public final class SequencedSkyframeExecutor extends SkyframeExecutor {
}
}
- removeActionsAfterEvaluation.set(
- !trackIncrementalState
- && requestOptions != null
- && requestOptions.discardActionsAfterExecution);
+ removeActionsAfterEvaluation.set(!trackIncrementalState && discardActionsAfterExecution);
// Now check if it is necessary to wipe the previous state. We do this if either the previous
// or current incrementalStateRetentionStrategy requires the build to have been isolated.
if (oldValueOfTrackIncrementalState != trackIncrementalState) {