aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/CompletionFunction.java
diff options
context:
space:
mode:
authorGravatar felly <felly@google.com>2018-08-14 17:53:30 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-08-14 17:55:14 -0700
commit8dece49bed76b5f372ff5d3a3f25a32b2a9c1f52 (patch)
treeff4520a4d8a6ddd06a51cbe938408ee78e7fcbe8 /src/main/java/com/google/devtools/build/lib/skyframe/CompletionFunction.java
parent2734ceb1f890d1e953acd13d4dbe6c26c0c5d2e2 (diff)
Automated rollback of commit 37bd5f665aa614c6dc640c9d19852dd8d5efb0d8.
*** Reason for rollback *** Rollforward with fix: Don't use Immutable map builder to agggregate Filesets. We may reach the same one via direct and indirect runfiles, so we need to allow for duplicate entries. *** Original change description *** Automated rollback of commit 3bace1b937934fb2cea6260067ecc1cdbe526847. *** Reason for rollback *** b/112583337 RELNOTES: None *** Original change description *** Track Fileset in artifact expansion. PiperOrigin-RevId: 208748163
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/CompletionFunction.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/CompletionFunction.java12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/CompletionFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/CompletionFunction.java
index 57a9d47206..237915aeb0 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/CompletionFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/CompletionFunction.java
@@ -13,11 +13,13 @@
// limitations under the License.
package com.google.devtools.build.lib.skyframe;
+import com.google.common.collect.ImmutableList;
import com.google.devtools.build.lib.actions.ActionExecutionException;
import com.google.devtools.build.lib.actions.ActionInputMap;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.ArtifactPathResolver;
import com.google.devtools.build.lib.actions.ArtifactSkyKey;
+import com.google.devtools.build.lib.actions.FilesetOutputSymlink;
import com.google.devtools.build.lib.actions.MissingInputFileException;
import com.google.devtools.build.lib.analysis.AspectCompleteEvent;
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
@@ -326,9 +328,11 @@ public final class CompletionFunction<TValue extends SkyValue, TResult extends S
boolean createPathResolver = pathResolverFactory.shouldCreatePathResolverForArtifactValues();
ActionInputMap inputMap = null;
Map<Artifact, Collection<Artifact>> expandedArtifacts = null;
+ Map<Artifact, ImmutableList<FilesetOutputSymlink>> expandedFilesets = null;
if (createPathResolver) {
inputMap = new ActionInputMap(inputDeps.size());
expandedArtifacts = new HashMap<>();
+ expandedFilesets = new HashMap<>();
}
int missingCount = 0;
@@ -341,7 +345,13 @@ public final class CompletionFunction<TValue extends SkyValue, TResult extends S
try {
SkyValue artifactValue = depsEntry.getValue().get();
if (createPathResolver && artifactValue != null) {
- ActionInputMapHelper.addToMap(inputMap, expandedArtifacts, input, artifactValue);
+ ActionInputMapHelper.addToMap(
+ inputMap,
+ expandedArtifacts,
+ expandedFilesets,
+ input,
+ artifactValue,
+ env);
}
} catch (MissingInputFileException e) {
missingCount++;