aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar ulfjack <ulfjack@google.com>2017-07-21 13:58:33 +0200
committerGravatar Jakob Buchgraber <buchgr@google.com>2017-07-24 09:51:02 +0200
commit7599a4d9fc11369821a6bb7f026d670163abc90e (patch)
tree34d0dc02020844bd5f02351f3ca95c38ac26eccc
parentb69acfaa1c281ac2e8fd7450f07bb3735d24ae23 (diff)
Add ActionInputPrefetcher to ActionExecutionContext
This is more consistent with other values, and removes the need to inject it into the constructor of the various strategy implementations. PiperOrigin-RevId: 162729187
-rw-r--r--src/main/java/com/google/devtools/build/lib/actions/ActionExecutionContext.java27
-rw-r--r--src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java1
-rw-r--r--src/main/java/com/google/devtools/build/lib/buildtool/SkyframeBuilder.java7
-rw-r--r--src/main/java/com/google/devtools/build/lib/remote/RemoteActionContextProvider.java1
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java7
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/standalone/StandaloneActionContextProvider.java11
-rw-r--r--src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java10
-rw-r--r--src/test/java/com/google/devtools/build/lib/actions/ExecutableSymlinkActionTest.java1
-rw-r--r--src/test/java/com/google/devtools/build/lib/actions/util/ActionsTestUtil.java7
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/actions/FileWriteActionTestCase.java5
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/actions/ParamFileWriteActionTest.java5
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/actions/PopulateTreeArtifactActionTest.java2
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/actions/SymlinkActionTest.java5
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/actions/TemplateExpansionActionTest.java5
-rw-r--r--src/test/java/com/google/devtools/build/lib/rules/cpp/LTOBackendActionTest.java5
-rw-r--r--src/test/java/com/google/devtools/build/lib/rules/objc/BazelJ2ObjcLibraryTest.java7
-rw-r--r--src/test/java/com/google/devtools/build/lib/skyframe/TimestampBuilderTestCase.java3
-rw-r--r--src/test/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategyTest.java5
19 files changed, 66 insertions, 54 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/actions/ActionExecutionContext.java b/src/main/java/com/google/devtools/build/lib/actions/ActionExecutionContext.java
index 4359349581..816eb10595 100644
--- a/src/main/java/com/google/devtools/build/lib/actions/ActionExecutionContext.java
+++ b/src/main/java/com/google/devtools/build/lib/actions/ActionExecutionContext.java
@@ -41,6 +41,7 @@ public class ActionExecutionContext implements Closeable {
private final Executor executor;
private final ActionInputFileCache actionInputFileCache;
+ private final ActionInputPrefetcher actionInputPrefetcher;
private final MetadataHandler metadataHandler;
private final FileOutErr fileOutErr;
private final ImmutableMap<String, String> clientEnv;
@@ -51,12 +52,14 @@ public class ActionExecutionContext implements Closeable {
private ActionExecutionContext(
Executor executor,
ActionInputFileCache actionInputFileCache,
+ ActionInputPrefetcher actionInputPrefetcher,
MetadataHandler metadataHandler,
FileOutErr fileOutErr,
Map<String, String> clientEnv,
@Nullable ArtifactExpander artifactExpander,
@Nullable SkyFunction.Environment env) {
this.actionInputFileCache = actionInputFileCache;
+ this.actionInputPrefetcher = actionInputPrefetcher;
this.metadataHandler = metadataHandler;
this.fileOutErr = fileOutErr;
this.clientEnv = ImmutableMap.copyOf(clientEnv);
@@ -68,6 +71,7 @@ public class ActionExecutionContext implements Closeable {
public ActionExecutionContext(
Executor executor,
ActionInputFileCache actionInputFileCache,
+ ActionInputPrefetcher actionInputPrefetcher,
MetadataHandler metadataHandler,
FileOutErr fileOutErr,
Map<String, String> clientEnv,
@@ -75,6 +79,7 @@ public class ActionExecutionContext implements Closeable {
this(
executor,
actionInputFileCache,
+ actionInputPrefetcher,
metadataHandler,
fileOutErr,
clientEnv,
@@ -82,32 +87,27 @@ public class ActionExecutionContext implements Closeable {
null);
}
- public static ActionExecutionContext normal(
+ public static ActionExecutionContext forInputDiscovery(
Executor executor,
ActionInputFileCache actionInputFileCache,
+ ActionInputPrefetcher actionInputPrefetcher,
MetadataHandler metadataHandler,
FileOutErr fileOutErr,
Map<String, String> clientEnv,
- ArtifactExpander artifactExpander) {
+ Environment env) {
return new ActionExecutionContext(
executor,
actionInputFileCache,
+ actionInputPrefetcher,
metadataHandler,
fileOutErr,
clientEnv,
- artifactExpander,
- null);
+ null,
+ env);
}
- public static ActionExecutionContext forInputDiscovery(
- Executor executor,
- ActionInputFileCache actionInputFileCache,
- MetadataHandler metadataHandler,
- FileOutErr fileOutErr,
- Map<String, String> clientEnv,
- Environment env) {
- return new ActionExecutionContext(
- executor, actionInputFileCache, metadataHandler, fileOutErr, clientEnv, null, env);
+ public ActionInputPrefetcher getActionInputPrefetcher() {
+ return actionInputPrefetcher;
}
public ActionInputFileCache getActionInputFileCache() {
@@ -224,6 +224,7 @@ public class ActionExecutionContext implements Closeable {
return new ActionExecutionContext(
executor,
actionInputFileCache,
+ actionInputPrefetcher,
metadataHandler,
fileOutErr,
clientEnv,
diff --git a/src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java b/src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java
index bd44d70446..ef87660e9e 100644
--- a/src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java
+++ b/src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java
@@ -681,6 +681,7 @@ public class ExecutionTool {
: ModifiedFileSet.NOTHING_MODIFIED,
options.finalizeActions,
fileCache,
+ prefetcher,
request.getBuildOptions().progressReportInterval);
}
diff --git a/src/main/java/com/google/devtools/build/lib/buildtool/SkyframeBuilder.java b/src/main/java/com/google/devtools/build/lib/buildtool/SkyframeBuilder.java
index dc398a474d..c8cde04074 100644
--- a/src/main/java/com/google/devtools/build/lib/buildtool/SkyframeBuilder.java
+++ b/src/main/java/com/google/devtools/build/lib/buildtool/SkyframeBuilder.java
@@ -22,6 +22,7 @@ import com.google.devtools.build.lib.actions.ActionCacheChecker;
import com.google.devtools.build.lib.actions.ActionExecutionException;
import com.google.devtools.build.lib.actions.ActionExecutionStatusReporter;
import com.google.devtools.build.lib.actions.ActionInputFileCache;
+import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.BuildFailedException;
import com.google.devtools.build.lib.actions.Executor;
@@ -70,6 +71,7 @@ public class SkyframeBuilder implements Builder {
private final boolean finalizeActionsToOutputService;
private final ModifiedFileSet modifiedOutputFiles;
private final ActionInputFileCache fileCache;
+ private final ActionInputPrefetcher actionInputPrefetcher;
private final ActionCacheChecker actionCacheChecker;
private final int progressReportInterval;
@@ -77,7 +79,7 @@ public class SkyframeBuilder implements Builder {
public SkyframeBuilder(SkyframeExecutor skyframeExecutor, ActionCacheChecker actionCacheChecker,
boolean keepGoing, int numJobs, ModifiedFileSet modifiedOutputFiles,
boolean finalizeActionsToOutputService, ActionInputFileCache fileCache,
- int progressReportInterval) {
+ ActionInputPrefetcher actionInputPrefetcher, int progressReportInterval) {
this.skyframeExecutor = skyframeExecutor;
this.actionCacheChecker = actionCacheChecker;
this.keepGoing = keepGoing;
@@ -85,6 +87,7 @@ public class SkyframeBuilder implements Builder {
this.finalizeActionsToOutputService = finalizeActionsToOutputService;
this.modifiedOutputFiles = modifiedOutputFiles;
this.fileCache = fileCache;
+ this.actionInputPrefetcher = actionInputPrefetcher;
this.progressReportInterval = progressReportInterval;
}
@@ -103,7 +106,7 @@ public class SkyframeBuilder implements Builder {
TopLevelArtifactContext topLevelArtifactContext)
throws BuildFailedException, AbruptExitException, TestExecException, InterruptedException {
skyframeExecutor.prepareExecution(modifiedOutputFiles, lastExecutionTimeRange);
- skyframeExecutor.setFileCache(fileCache);
+ skyframeExecutor.configureActionExecutor(fileCache, actionInputPrefetcher);
// Note that executionProgressReceiver accesses builtTargets concurrently (after wrapping in a
// synchronized collection), so unsynchronized access to this variable is unsafe while it runs.
ExecutionProgressReceiver executionProgressReceiver =
diff --git a/src/main/java/com/google/devtools/build/lib/remote/RemoteActionContextProvider.java b/src/main/java/com/google/devtools/build/lib/remote/RemoteActionContextProvider.java
index d48cd8c0d6..99448b8377 100644
--- a/src/main/java/com/google/devtools/build/lib/remote/RemoteActionContextProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/remote/RemoteActionContextProvider.java
@@ -39,7 +39,6 @@ final class RemoteActionContextProvider extends ActionContextProvider {
private final RemoteActionCache cache;
private final GrpcRemoteExecutor executor;
-
private RemoteSpawnRunner spawnRunner;
private RemoteSpawnStrategy spawnStrategy;
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java
index be611c8757..1f4b1188c4 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeActionExecutor.java
@@ -35,6 +35,7 @@ import com.google.devtools.build.lib.actions.ActionExecutionStatusReporter;
import com.google.devtools.build.lib.actions.ActionGraph;
import com.google.devtools.build.lib.actions.ActionInput;
import com.google.devtools.build.lib.actions.ActionInputFileCache;
+import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.ActionLogBufferPathGenerator;
import com.google.devtools.build.lib.actions.ActionLookupData;
import com.google.devtools.build.lib.actions.ActionLookupValue;
@@ -142,6 +143,7 @@ public final class SkyframeActionExecutor implements ActionExecutionContextFacto
private boolean keepGoing;
private boolean hadExecutionError;
private ActionInputFileCache perBuildFileCache;
+ private ActionInputPrefetcher actionInputPrefetcher;
/** These variables are nulled out between executions. */
private ProgressSupplier progressSupplier;
private ActionCompletedReceiver completionReceiver;
@@ -463,6 +465,7 @@ public final class SkyframeActionExecutor implements ActionExecutionContextFacto
return new ActionExecutionContext(
executorEngine,
new DelegatingPairFileCache(graphFileCache, perBuildFileCache),
+ actionInputPrefetcher,
metadataHandler,
fileOutErr,
clientEnv,
@@ -571,6 +574,7 @@ public final class SkyframeActionExecutor implements ActionExecutionContextFacto
ActionExecutionContext.forInputDiscovery(
executorEngine,
new DelegatingPairFileCache(graphFileCache, perBuildFileCache),
+ actionInputPrefetcher,
metadataHandler,
actionLogBufferPathGenerator.generate(),
clientEnv,
@@ -605,8 +609,9 @@ public final class SkyframeActionExecutor implements ActionExecutionContextFacto
return hadExecutionError && !keepGoing;
}
- void setFileCache(ActionInputFileCache fileCache) {
+ void configure(ActionInputFileCache fileCache, ActionInputPrefetcher actionInputPrefetcher) {
this.perBuildFileCache = fileCache;
+ this.actionInputPrefetcher = actionInputPrefetcher;
}
private class ActionRunner implements Callable<ActionExecutionValue> {
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 b37a1ed163..c1feb56a85 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
@@ -41,6 +41,7 @@ import com.google.devtools.build.lib.actions.ActionExecutionContextFactory;
import com.google.devtools.build.lib.actions.ActionExecutionStatusReporter;
import com.google.devtools.build.lib.actions.ActionGraph;
import com.google.devtools.build.lib.actions.ActionInputFileCache;
+import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.ActionLogBufferPathGenerator;
import com.google.devtools.build.lib.actions.ActionLookupValue;
import com.google.devtools.build.lib.actions.Artifact;
@@ -522,8 +523,9 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
Preconditions.checkState(active);
}
- public void setFileCache(ActionInputFileCache fileCache) {
- this.skyframeActionExecutor.setFileCache(fileCache);
+ public void configureActionExecutor(
+ ActionInputFileCache fileCache, ActionInputPrefetcher actionInputPrefetcher) {
+ this.skyframeActionExecutor.configure(fileCache, actionInputPrefetcher);
}
public void dump(boolean summarize, PrintStream out) {
diff --git a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneActionContextProvider.java b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneActionContextProvider.java
index 9300b5f9b7..ba42ed9965 100644
--- a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneActionContextProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneActionContextProvider.java
@@ -13,13 +13,10 @@
// limitations under the License.
package com.google.devtools.build.lib.standalone;
-import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableList;
import com.google.devtools.build.lib.actions.Action;
import com.google.devtools.build.lib.actions.ActionContext;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
-import com.google.devtools.build.lib.actions.ActionInputFileCache;
-import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.ArtifactResolver;
import com.google.devtools.build.lib.actions.ExecutionStrategy;
@@ -67,19 +64,12 @@ public class StandaloneActionContextProvider extends ActionContextProvider {
}
private final CommandEnvironment env;
- private ActionInputPrefetcher actionInputPrefetcher;
public StandaloneActionContextProvider(CommandEnvironment env) {
this.env = env;
}
@Override
- public void init(
- ActionInputFileCache actionInputFileCache, ActionInputPrefetcher actionInputPrefetcher) {
- this.actionInputPrefetcher = Preconditions.checkNotNull(actionInputPrefetcher);
- }
-
- @Override
public Iterable<? extends ActionContext> getActionContexts() {
ExecutionOptions executionOptions = env.getOptions().getOptions(ExecutionOptions.class);
LocalExecutionOptions localExecutionOptions =
@@ -98,7 +88,6 @@ public class StandaloneActionContextProvider extends ActionContextProvider {
return ImmutableList.of(
new StandaloneSpawnStrategy(
env.getExecRoot(),
- actionInputPrefetcher,
localExecutionOptions,
executionOptions.verboseFailures,
env.getRuntime().getProductName(),
diff --git a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java
index 82794d14a4..f62e2b7bdf 100644
--- a/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategy.java
@@ -17,7 +17,6 @@ import com.google.common.eventbus.EventBus;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.ActionInput;
import com.google.devtools.build.lib.actions.ActionInputFileCache;
-import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.ActionStatusMessage;
import com.google.devtools.build.lib.actions.Artifact.ArtifactExpander;
import com.google.devtools.build.lib.actions.ExecException;
@@ -53,15 +52,12 @@ import java.util.concurrent.atomic.AtomicInteger;
@ExecutionStrategy(name = { "standalone", "local" }, contextType = SpawnActionContext.class)
public class StandaloneSpawnStrategy implements SpawnActionContext {
private final boolean verboseFailures;
- private final ActionInputPrefetcher actionInputPrefetcher;
private final LocalSpawnRunner localSpawnRunner;
private final AtomicInteger execCount = new AtomicInteger();
public StandaloneSpawnStrategy(
- Path execRoot, ActionInputPrefetcher actionInputPrefetcher,
- LocalExecutionOptions localExecutionOptions, boolean verboseFailures, String productName,
- ResourceManager resourceManager) {
- this.actionInputPrefetcher = actionInputPrefetcher;
+ Path execRoot, LocalExecutionOptions localExecutionOptions, boolean verboseFailures,
+ String productName, ResourceManager resourceManager) {
this.verboseFailures = verboseFailures;
LocalEnvProvider localEnvProvider = OS.getCurrent() == OS.DARWIN
? new XCodeLocalEnvProvider()
@@ -93,7 +89,7 @@ public class StandaloneSpawnStrategy implements SpawnActionContext {
@Override
public void prefetchInputs(Iterable<ActionInput> inputs) throws IOException {
if (Spawns.shouldPrefetchInputsForLocalExecution(spawn)) {
- actionInputPrefetcher.prefetchFiles(inputs);
+ actionExecutionContext.getActionInputPrefetcher().prefetchFiles(inputs);
}
}
diff --git a/src/test/java/com/google/devtools/build/lib/actions/ExecutableSymlinkActionTest.java b/src/test/java/com/google/devtools/build/lib/actions/ExecutableSymlinkActionTest.java
index ee86d56a13..00f1211554 100644
--- a/src/test/java/com/google/devtools/build/lib/actions/ExecutableSymlinkActionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/actions/ExecutableSymlinkActionTest.java
@@ -53,6 +53,7 @@ public class ExecutableSymlinkActionTest {
return new ActionExecutionContext(
executor,
new SingleBuildFileCache(execRoot.getPathString(), execRoot.getFileSystem()),
+ ActionInputPrefetcher.NONE,
null, outErr, ImmutableMap.<String, String>of(), null);
}
diff --git a/src/test/java/com/google/devtools/build/lib/actions/util/ActionsTestUtil.java b/src/test/java/com/google/devtools/build/lib/actions/util/ActionsTestUtil.java
index fbab01ae3a..d1b796b5c0 100644
--- a/src/test/java/com/google/devtools/build/lib/actions/util/ActionsTestUtil.java
+++ b/src/test/java/com/google/devtools/build/lib/actions/util/ActionsTestUtil.java
@@ -30,6 +30,7 @@ import com.google.devtools.build.lib.actions.ActionAnalysisMetadata;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.ActionGraph;
import com.google.devtools.build.lib.actions.ActionInputHelper;
+import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.ActionOwner;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.Artifact.ArtifactExpander;
@@ -102,6 +103,7 @@ public final class ActionsTestUtil {
return new ActionExecutionContext(
executor,
new SingleBuildFileCache(execRoot.getPathString(), execRoot.getFileSystem()),
+ ActionInputPrefetcher.NONE,
metadataHandler,
fileOutErr,
ImmutableMap.<String, String>copyOf(clientEnv),
@@ -116,6 +118,7 @@ public final class ActionsTestUtil {
return ActionExecutionContext.forInputDiscovery(
executor,
new SingleBuildFileCache(execRoot.getPathString(), execRoot.getFileSystem()),
+ ActionInputPrefetcher.NONE,
metadataHandler,
fileOutErr,
ImmutableMap.<String, String>of(),
@@ -126,8 +129,8 @@ public final class ActionsTestUtil {
public static ActionExecutionContext createContext(EventHandler eventHandler) {
DummyExecutor dummyExecutor = new DummyExecutor(eventHandler);
return new ActionExecutionContext(
- dummyExecutor, null, null, null, ImmutableMap.<String, String>of(),
- createDummyArtifactExpander());
+ dummyExecutor, null, ActionInputPrefetcher.NONE, null, null,
+ ImmutableMap.<String, String>of(), createDummyArtifactExpander());
}
private static ArtifactExpander createDummyArtifactExpander() {
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/actions/FileWriteActionTestCase.java b/src/test/java/com/google/devtools/build/lib/analysis/actions/FileWriteActionTestCase.java
index 2eb06f24c3..18da00814e 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/actions/FileWriteActionTestCase.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/actions/FileWriteActionTestCase.java
@@ -21,6 +21,7 @@ import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Sets;
import com.google.devtools.build.lib.actions.Action;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
+import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.ActionOwner;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.Executor;
@@ -52,8 +53,8 @@ public abstract class FileWriteActionTestCase extends BuildViewTestCase {
@Before
public final void createExecutorAndContext() throws Exception {
executor = new TestExecutorBuilder(directories, binTools).build();
- context = new ActionExecutionContext(executor, null, null, new FileOutErr(),
- ImmutableMap.<String, String>of(), null);
+ context = new ActionExecutionContext(executor, null, ActionInputPrefetcher.NONE, null,
+ new FileOutErr(), ImmutableMap.<String, String>of(), null);
}
protected abstract Action createAction(
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/actions/ParamFileWriteActionTest.java b/src/test/java/com/google/devtools/build/lib/analysis/actions/ParamFileWriteActionTest.java
index 8711b47a4b..0520b7ae3c 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/actions/ParamFileWriteActionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/actions/ParamFileWriteActionTest.java
@@ -20,6 +20,7 @@ import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.lib.actions.Action;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.ActionInputHelper;
+import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.Artifact.ArtifactExpander;
import com.google.devtools.build.lib.actions.Artifact.SpecialArtifact;
@@ -160,7 +161,7 @@ public class ParamFileWriteActionTest extends BuildViewTestCase {
};
Executor executor = new TestExecutorBuilder(directories, binTools).build();
- return new ActionExecutionContext(executor, null, null, new FileOutErr(),
- ImmutableMap.<String, String>of(), artifactExpander);
+ return new ActionExecutionContext(executor, null, ActionInputPrefetcher.NONE, null,
+ new FileOutErr(), ImmutableMap.<String, String>of(), artifactExpander);
}
}
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/actions/PopulateTreeArtifactActionTest.java b/src/test/java/com/google/devtools/build/lib/analysis/actions/PopulateTreeArtifactActionTest.java
index e4b42a7c14..ffc6596441 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/actions/PopulateTreeArtifactActionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/actions/PopulateTreeArtifactActionTest.java
@@ -24,6 +24,7 @@ import com.google.devtools.build.lib.actions.Action;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.ActionExecutionException;
import com.google.devtools.build.lib.actions.ActionInput;
+import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.Artifact.SpecialArtifact;
import com.google.devtools.build.lib.actions.Artifact.SpecialArtifactType;
@@ -324,6 +325,7 @@ public class PopulateTreeArtifactActionTest extends BuildViewTestCase {
return new ActionExecutionContext(
executor,
null,
+ ActionInputPrefetcher.NONE,
new TestMetadataHandler(storingExpandedTreeFileArtifacts),
null,
ImmutableMap.<String, String>of(),
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/actions/SymlinkActionTest.java b/src/test/java/com/google/devtools/build/lib/analysis/actions/SymlinkActionTest.java
index ef88e3e8b9..e0ae5308af 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/actions/SymlinkActionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/actions/SymlinkActionTest.java
@@ -18,6 +18,7 @@ import static com.google.devtools.build.lib.actions.util.ActionsTestUtil.NULL_AC
import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
+import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.Executor;
import com.google.devtools.build.lib.analysis.util.BuildViewTestCase;
@@ -72,8 +73,8 @@ public class SymlinkActionTest extends BuildViewTestCase {
@Test
public void testSymlink() throws Exception {
Executor executor = new TestExecutorBuilder(directories, null).build();
- action.execute(new ActionExecutionContext(executor, null, null, null,
- ImmutableMap.<String, String>of(), null));
+ action.execute(new ActionExecutionContext(executor, null, ActionInputPrefetcher.NONE, null,
+ null, ImmutableMap.<String, String>of(), null));
assertThat(output.isSymbolicLink()).isTrue();
assertThat(output.resolveSymbolicLinks()).isEqualTo(input);
assertThat(action.getPrimaryInput()).isEqualTo(inputArtifact);
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/actions/TemplateExpansionActionTest.java b/src/test/java/com/google/devtools/build/lib/analysis/actions/TemplateExpansionActionTest.java
index 84ba3db8b5..b68b4bff05 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/actions/TemplateExpansionActionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/actions/TemplateExpansionActionTest.java
@@ -21,6 +21,7 @@ import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Lists;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
+import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.Executor;
import com.google.devtools.build.lib.actions.Root;
@@ -170,8 +171,8 @@ public class TemplateExpansionActionTest extends FoundationTestCase {
}
private ActionExecutionContext createContext(Executor executor) {
- return new ActionExecutionContext(executor, null, null, new FileOutErr(),
- ImmutableMap.<String, String>of(), null);
+ return new ActionExecutionContext(executor, null, ActionInputPrefetcher.NONE, null,
+ new FileOutErr(), ImmutableMap.<String, String>of(), null);
}
private void executeTemplateExpansion(String expected) throws Exception {
diff --git a/src/test/java/com/google/devtools/build/lib/rules/cpp/LTOBackendActionTest.java b/src/test/java/com/google/devtools/build/lib/rules/cpp/LTOBackendActionTest.java
index 4b2bebf212..9e87bc22d8 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/cpp/LTOBackendActionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/cpp/LTOBackendActionTest.java
@@ -20,6 +20,7 @@ import com.google.common.collect.ImmutableSet;
import com.google.devtools.build.lib.actions.AbstractAction;
import com.google.devtools.build.lib.actions.Action;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
+import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.Executor;
import com.google.devtools.build.lib.actions.util.ActionsTestUtil;
@@ -75,8 +76,8 @@ public class LTOBackendActionTest extends BuildViewTestCase {
@Before
public final void createExecutorAndContext() throws Exception {
executor = new TestExecutorBuilder(directories, binTools).build();
- context = new ActionExecutionContext(executor, null, null, new FileOutErr(),
- ImmutableMap.<String, String>of(), null);
+ context = new ActionExecutionContext(executor, null, ActionInputPrefetcher.NONE, null,
+ new FileOutErr(), ImmutableMap.<String, String>of(), null);
}
@Test
diff --git a/src/test/java/com/google/devtools/build/lib/rules/objc/BazelJ2ObjcLibraryTest.java b/src/test/java/com/google/devtools/build/lib/rules/objc/BazelJ2ObjcLibraryTest.java
index 0a3e2a7068..4c562df429 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/objc/BazelJ2ObjcLibraryTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/objc/BazelJ2ObjcLibraryTest.java
@@ -22,6 +22,7 @@ import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Iterables;
import com.google.devtools.build.lib.actions.AbstractAction;
import com.google.devtools.build.lib.actions.ActionExecutionContext;
+import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.CommandAction;
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
@@ -673,7 +674,8 @@ public class BazelJ2ObjcLibraryTest extends J2ObjcLibraryTest {
ActionExecutionContext dummyActionExecutionContext =
new ActionExecutionContext(
- null, null, null, null, ImmutableMap.<String, String>of(), DUMMY_ARTIFACT_EXPANDER);
+ null, null, ActionInputPrefetcher.NONE, null, null, ImmutableMap.<String, String>of(),
+ DUMMY_ARTIFACT_EXPANDER);
ByteArrayOutputStream moduleMapStream = new ByteArrayOutputStream();
ByteArrayOutputStream umbrellaHeaderStream = new ByteArrayOutputStream();
moduleMapAction.newDeterministicWriter(dummyActionExecutionContext)
@@ -715,7 +717,8 @@ public class BazelJ2ObjcLibraryTest extends J2ObjcLibraryTest {
ActionExecutionContext dummyActionExecutionContext =
new ActionExecutionContext(
- null, null, null, null, ImmutableMap.<String, String>of(), DUMMY_ARTIFACT_EXPANDER);
+ null, null, ActionInputPrefetcher.NONE, null, null, ImmutableMap.<String, String>of(),
+ DUMMY_ARTIFACT_EXPANDER);
ByteArrayOutputStream moduleMapStream = new ByteArrayOutputStream();
ByteArrayOutputStream umbrellaHeaderStream = new ByteArrayOutputStream();
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/TimestampBuilderTestCase.java b/src/test/java/com/google/devtools/build/lib/skyframe/TimestampBuilderTestCase.java
index 1713e7e87d..64ee5df3e2 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/TimestampBuilderTestCase.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/TimestampBuilderTestCase.java
@@ -32,6 +32,7 @@ import com.google.devtools.build.lib.actions.ActionExecutionContext;
import com.google.devtools.build.lib.actions.ActionExecutionException;
import com.google.devtools.build.lib.actions.ActionExecutionStatusReporter;
import com.google.devtools.build.lib.actions.ActionInputFileCache;
+import com.google.devtools.build.lib.actions.ActionInputPrefetcher;
import com.google.devtools.build.lib.actions.ActionLogBufferPathGenerator;
import com.google.devtools.build.lib.actions.ActionLookupData;
import com.google.devtools.build.lib.actions.ActionLookupValue;
@@ -176,7 +177,7 @@ public abstract class TimestampBuilderTestCase extends FoundationTestCase {
ActionInputFileCache cache = new SingleBuildFileCache(
rootDirectory.getPathString(), scratch.getFileSystem());
- skyframeActionExecutor.setFileCache(cache);
+ skyframeActionExecutor.configure(cache, ActionInputPrefetcher.NONE);
final InMemoryMemoizingEvaluator evaluator =
new InMemoryMemoizingEvaluator(
diff --git a/src/test/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategyTest.java b/src/test/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategyTest.java
index 0b40e50ee6..0aa7695b5d 100644
--- a/src/test/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategyTest.java
+++ b/src/test/java/com/google/devtools/build/lib/standalone/StandaloneSpawnStrategyTest.java
@@ -128,8 +128,8 @@ public class StandaloneSpawnStrategyTest {
ImmutableMap.<String, SpawnActionContext>of(
"",
new StandaloneSpawnStrategy(
- execRoot, ActionInputPrefetcher.NONE, localExecutionOptions,
- /*verboseFailures=*/false, "mock-product-name", resourceManager)),
+ execRoot, localExecutionOptions, /*verboseFailures=*/false, "mock-product-name",
+ resourceManager)),
ImmutableList.<ActionContextProvider>of());
executor.getExecRoot().createDirectory();
@@ -167,6 +167,7 @@ public class StandaloneSpawnStrategyTest {
return new ActionExecutionContext(
executor,
new SingleBuildFileCache(execRoot.getPathString(), execRoot.getFileSystem()),
+ ActionInputPrefetcher.NONE,
null,
outErr,
ImmutableMap.<String, String>of(),