diff --git a/src/main/java/com/google/devtools/build/lib/actions/Artifact.java b/src/main/java/com/google/devtools/build/lib/actions/Artifact.java index 98a6b58d37711d..93497c7b69ce5f 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/Artifact.java +++ b/src/main/java/com/google/devtools/build/lib/actions/Artifact.java @@ -266,12 +266,12 @@ public MissingExpansionException(String message) { /** Implementation of {@link ArtifactExpander} */ public static class ArtifactExpanderImpl implements ArtifactExpander { - private final Map> expandedInputs; + private final Map> expandedInputs; private final Map archivedTreeArtifacts; private final Map> expandedFilesets; public ArtifactExpanderImpl( - Map> expandedInputs, + Map> expandedInputs, Map archivedTreeArtifacts, Map> expandedFilesets) { this.expandedInputs = expandedInputs; @@ -283,7 +283,7 @@ public ArtifactExpanderImpl( public void expand(Artifact artifact, Collection output) { Preconditions.checkState( artifact.isMiddlemanArtifact() || artifact.isTreeArtifact(), artifact); - ImmutableCollection result = expandedInputs.get(artifact); + ImmutableCollection result = expandedInputs.get(artifact); if (result != null) { output.addAll(result); } diff --git a/src/main/java/com/google/devtools/build/lib/actions/CompletionContext.java b/src/main/java/com/google/devtools/build/lib/actions/CompletionContext.java index cca134db6b4f9d..7fb70e86136c9b 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/CompletionContext.java +++ b/src/main/java/com/google/devtools/build/lib/actions/CompletionContext.java @@ -46,7 +46,7 @@ public class CompletionContext { private final Path execRoot; private final ArtifactPathResolver pathResolver; - private final Map> expandedArtifacts; + private final Map> expandedArtifacts; private final Map> expandedFilesets; private final ActionInputMap inputMap; private final boolean expandFilesets; @@ -54,7 +54,7 @@ public class CompletionContext { private CompletionContext( Path execRoot, - Map> expandedArtifacts, + Map> expandedArtifacts, Map> expandedFilesets, ArtifactPathResolver pathResolver, ActionInputMap inputMap, @@ -70,7 +70,7 @@ private CompletionContext( } public static CompletionContext create( - Map> expandedArtifacts, + Map> expandedArtifacts, Map> expandedFilesets, boolean expandFilesets, boolean fullyResolveFilesetSymlinks, @@ -119,7 +119,8 @@ public void visitArtifacts(Iterable artifacts, ArtifactReceiver receiv visitFileset(artifact, receiver, fullyResolveFilesetLinks ? RESOLVE_FULLY : RESOLVE); } } else if (artifact.isTreeArtifact()) { - ImmutableCollection expandedArtifacts = this.expandedArtifacts.get(artifact); + ImmutableCollection expandedArtifacts = + this.expandedArtifacts.get(artifact); for (Artifact expandedArtifact : expandedArtifacts) { receiver.accept(expandedArtifact); } @@ -162,7 +163,7 @@ public interface ArtifactReceiver { public interface PathResolverFactory { ArtifactPathResolver createPathResolverForArtifactValues( ActionInputMap actionInputMap, - Map> expandedArtifacts, + Map> expandedArtifacts, Map> filesets, String workspaceName) throws IOException; diff --git a/src/main/java/com/google/devtools/build/lib/remote/RemoteOutputService.java b/src/main/java/com/google/devtools/build/lib/remote/RemoteOutputService.java index e5101abed7466b..4bdf23aa4c245e 100644 --- a/src/main/java/com/google/devtools/build/lib/remote/RemoteOutputService.java +++ b/src/main/java/com/google/devtools/build/lib/remote/RemoteOutputService.java @@ -133,7 +133,7 @@ public ArtifactPathResolver createPathResolverForArtifactValues( FileSystem fileSystem, ImmutableList pathEntries, ActionInputMap actionInputMap, - Map> expandedArtifacts, + Map> expandedArtifacts, Map> filesets) { FileSystem remoteFileSystem = new RemoteActionFileSystem( diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionFunction.java index 2870d1c640885d..e14623f12009bf 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionFunction.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/ActionExecutionFunction.java @@ -941,7 +941,7 @@ private enum DiscoveredState { private DiscoveredState addDiscoveredInputs( ActionInputMap inputData, - Map> expandedArtifacts, + Map> expandedArtifacts, Map archivedTreeArtifacts, Iterable discoveredInputs, Environment env, @@ -1051,7 +1051,7 @@ private static class CheckInputResults { /** Metadata about Artifacts consumed by this Action. */ private final ActionInputMap actionInputMap; /** Artifact expansion mapping for Runfiles tree and tree artifacts. */ - private final Map> expandedArtifacts; + private final Map> expandedArtifacts; /** Archived representations for tree artifacts. */ private final Map archivedTreeArtifacts; /** Artifact expansion mapping for Filesets embedded in Runfiles. */ @@ -1062,7 +1062,7 @@ private static class CheckInputResults { CheckInputResults( ActionInputMap actionInputMap, - Map> expandedArtifacts, + Map> expandedArtifacts, Map archivedTreeArtifacts, Map> filesetsInsideRunfiles, Map> topLevelFilesets) { @@ -1077,7 +1077,7 @@ private static class CheckInputResults { private interface AccumulateInputResultsFactory { R create( S actionInputMapSink, - Map> expandedArtifacts, + Map> expandedArtifacts, Map archivedTreeArtifacts, Map> filesetsInsideRunfiles, Map> topLevelFilesets); @@ -1195,7 +1195,7 @@ private R accumulateInputs( ImmutableList allInputsList = allInputs.toList(); S inputArtifactData = actionInputMapSinkFactory.apply(populateInputData ? allInputsList.size() : 0); - Map> expandedArtifacts = + Map> expandedArtifacts = Maps.newHashMapWithExpectedSize(populateInputData ? 128 : 0); Map archivedTreeArtifacts = Maps.newHashMapWithExpectedSize(128); @@ -1389,7 +1389,7 @@ private R accumulateInputsWithNestedSet( Map> topLevelFilesets = Maps.newHashMapWithExpectedSize(0); S inputArtifactData = actionInputMapSinkFactory.apply(allInputsList.size()); - Map> expandedArtifacts = + Map> expandedArtifacts = Maps.newHashMapWithExpectedSize(128); Map archivedTreeArtifacts = Maps.newHashMapWithExpectedSize(128); @@ -1526,7 +1526,7 @@ static class ContinuationState { /** Mutable map containing metadata for known artifacts. */ ActionInputMap inputArtifactData = null; - Map> expandedArtifacts = null; + Map> expandedArtifacts = null; Map archivedTreeArtifacts = null; ImmutableMap> filesetsInsideRunfiles = null; ImmutableMap> topLevelFilesets = null; 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 b0f3df554f83c7..4e6afaff901c92 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 @@ -16,7 +16,6 @@ import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableCollection; import com.google.common.collect.ImmutableList; -import com.google.common.collect.ImmutableSet; import com.google.devtools.build.lib.actions.ActionAnalysisMetadata; import com.google.devtools.build.lib.actions.ActionInputMapSink; import com.google.devtools.build.lib.actions.ActionLookupData; @@ -41,7 +40,7 @@ private ActionInputMapHelper() {} static void addToMap( ActionInputMapSink inputMap, - Map> expandedArtifacts, + Map> expandedArtifacts, Map archivedTreeArtifacts, Map> filesetsInsideRunfiles, Map> topLevelFilesets, @@ -67,7 +66,7 @@ static void addToMap( */ static void addToMap( ActionInputMapSink inputMap, - Map> expandedArtifacts, + Map> expandedArtifacts, Map archivedTreeArtifacts, Map> filesetsInsideRunfiles, Map> topLevelFilesets, @@ -204,7 +203,7 @@ static ImmutableList getFilesets( private static void expandTreeArtifactAndPopulateArtifactData( Artifact treeArtifact, TreeArtifactValue value, - Map> expandedArtifacts, + Map> expandedArtifacts, Map archivedTreeArtifacts, ActionInputMapSink inputMap, Artifact depOwner) { @@ -212,13 +211,11 @@ private static void expandTreeArtifactAndPopulateArtifactData( inputMap.put(treeArtifact, FileArtifactValue.OMITTED_FILE_MARKER, depOwner); return; } - ImmutableSet.Builder children = ImmutableSet.builder(); for (Map.Entry child : value.getChildValues().entrySet()) { - children.add(child.getKey()); inputMap.put(child.getKey(), child.getValue(), depOwner); } - expandedArtifacts.put(treeArtifact, children.build()); + expandedArtifacts.put(treeArtifact, value.getChildren()); // Again, we cache the "digest" of the value for cache checking. inputMap.put(treeArtifact, value.getMetadata(), depOwner); 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 9361a3ce6ab849..251f44217960ee 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 @@ -176,7 +176,7 @@ public SkyValue compute(SkyKey skyKey, Environment env) SourceArtifactException.class); ActionInputMap inputMap = new ActionInputMap(inputDeps.size()); - Map> expandedArtifacts = new HashMap<>(); + Map> expandedArtifacts = new HashMap<>(); Map> expandedFilesets = new HashMap<>(); Map archivedTreeArtifacts = new HashMap<>(); Map> topLevelFilesets = new HashMap<>(); 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 78809cb99ba4a3..ea710948617d33 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 @@ -386,7 +386,7 @@ public boolean shouldCreatePathResolverForArtifactValues() { @Override public ArtifactPathResolver createPathResolverForArtifactValues( ActionInputMap actionInputMap, - Map> expandedArtifacts, + Map> expandedArtifacts, Map> filesets, String workspaceName) throws IOException { diff --git a/src/main/java/com/google/devtools/build/lib/vfs/OutputService.java b/src/main/java/com/google/devtools/build/lib/vfs/OutputService.java index dd1cfce28f761c..4c9f25560ff291 100644 --- a/src/main/java/com/google/devtools/build/lib/vfs/OutputService.java +++ b/src/main/java/com/google/devtools/build/lib/vfs/OutputService.java @@ -203,7 +203,7 @@ default ArtifactPathResolver createPathResolverForArtifactValues( FileSystem fileSystem, ImmutableList pathEntries, ActionInputMap actionInputMap, - Map> expandedArtifacts, + Map> expandedArtifacts, Map> filesets) throws IOException { throw new IllegalStateException("Path resolver not supported by this class");