aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/ActionInputMapHelper.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/ActionInputMapHelper.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/ActionInputMapHelper.java40
1 files changed, 3 insertions, 37 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ActionInputMapHelper.java b/src/main/java/com/google/devtools/build/lib/skyframe/ActionInputMapHelper.java
index abc7208088..072c019be4 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/ActionInputMapHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/ActionInputMapHelper.java
@@ -17,39 +17,25 @@ import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
import com.google.devtools.build.lib.actions.ActionInputMap;
-import com.google.devtools.build.lib.actions.ActionLookupValue.ActionLookupKey;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.FileArtifactValue;
-import com.google.devtools.build.lib.actions.FilesetOutputSymlink;
import com.google.devtools.build.lib.util.Pair;
-import com.google.devtools.build.skyframe.SkyFunction.Environment;
-import com.google.devtools.build.skyframe.SkyKey;
import com.google.devtools.build.skyframe.SkyValue;
import java.util.Collection;
import java.util.Map;
class ActionInputMapHelper {
- // Adds a value obtained by an Artifact skyvalue lookup to the action input map. May do Skyframe
- // lookups.
+ // Adds a value obtained by an Artifact skyvalue lookup to the action input map
static void addToMap(
ActionInputMap inputMap,
Map<Artifact, Collection<Artifact>> expandedArtifacts,
- Map<Artifact, ImmutableList<FilesetOutputSymlink>> expandedFilesets,
Artifact key,
- SkyValue value,
- Environment env) throws InterruptedException {
+ SkyValue value) {
if (value instanceof AggregatingArtifactValue) {
AggregatingArtifactValue aggregatingValue = (AggregatingArtifactValue) value;
for (Pair<Artifact, FileArtifactValue> entry : aggregatingValue.getFileArtifacts()) {
- Artifact artifact = entry.first;
- inputMap.put(artifact, entry.second);
- if (artifact.isFileset()) {
- ImmutableList<FilesetOutputSymlink> expandedFileset = getFilesets(env, artifact);
- if (expandedFileset != null) {
- expandedFilesets.put(artifact, expandedFileset);
- }
- }
+ inputMap.put(entry.first, entry.second);
}
for (Pair<Artifact, TreeArtifactValue> entry : aggregatingValue.getTreeArtifacts()) {
expandTreeArtifactAndPopulateArtifactData(
@@ -84,26 +70,6 @@ class ActionInputMapHelper {
}
}
- static ImmutableList<FilesetOutputSymlink> getFilesets(Environment env,
- Artifact actionInput) throws InterruptedException {
- Preconditions.checkState(actionInput.isFileset(), actionInput);
- ActionLookupKey filesetActionLookupKey = (ActionLookupKey) actionInput.getArtifactOwner();
- // Index 0 for the Fileset ConfiguredTarget indicates the SkyframeFilesetManifestAction where
- // we compute the fileset's outputSymlinks.
- SkyKey filesetActionKey = ActionExecutionValue.key(filesetActionLookupKey, 0);
- ActionExecutionValue filesetValue = (ActionExecutionValue) env.getValue(filesetActionKey);
- if (filesetValue == null) {
- // At this point skyframe does not guarantee that the filesetValue will be ready, since
- // the current action does not directly depend on the outputs of the
- // SkyframeFilesetManifestAction whose ActionExecutionValue (filesetValue) is needed here.
- // TODO(kush): Get rid of this hack by making the outputSymlinks available in the Fileset
- // artifact, which this action depends on, so its value will be guaranteed to be present.
- // Also, unify handling of Fileset with Artifact expansion.
- return null;
- }
- return filesetValue.getOutputSymlinks();
- }
-
private static void expandTreeArtifactAndPopulateArtifactData(
Artifact treeArtifact,
TreeArtifactValue value,