Always create a `CrossServerUnshareableActionExecutionValue` if the `ActionLookupData` key is marked as never shareable.
It does not make sense for an unshareable key to produce a shareable value. I will enforce this in an upcoming change.
PiperOrigin-RevId: 416328205
diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/ArtifactFunctionTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/ArtifactFunctionTest.java
index 531a76b..37edcb0 100644
--- a/src/test/java/com/google/devtools/build/lib/skyframe/ArtifactFunctionTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skyframe/ArtifactFunctionTest.java
@@ -153,9 +153,7 @@
actions.add(action);
file(input2.getPath(), "contents");
file(input1.getPath(), "source contents");
- evaluate(
- Iterables.toArray(
- Artifact.keys(ImmutableSet.of(input2, input1, input2, tree)), SkyKey.class));
+ evaluate(Iterables.toArray(Artifact.keys(ImmutableSet.of(input2, input1, tree)), SkyKey.class));
SkyValue value = evaluateArtifactValue(output);
ArrayList<Pair<Artifact, ?>> inputs = new ArrayList<>();
inputs.addAll(((RunfilesArtifactValue) value).getFileArtifacts());
@@ -341,8 +339,8 @@
ImmutableMap.of(artifact1, metadata1, artifact3, FileArtifactValue.DEFAULT_MIDDLEMAN),
ImmutableMap.of(treeArtifact, tree),
ImmutableList.of(filesetOutputSymlink),
- null,
- true);
+ /*discoveredModules=*/ null,
+ /*shareable=*/ false);
new SerializationTester(actionExecutionValue)
.addDependency(FileSystem.class, root.getFileSystem())
.addDependency(
@@ -532,11 +530,11 @@
throw new IllegalStateException(e);
}
return ActionExecutionValue.create(
- artifactData,
- treeArtifactData,
+ ImmutableMap.copyOf(artifactData),
+ ImmutableMap.copyOf(treeArtifactData),
/*outputSymlinks=*/ null,
/*discoveredModules=*/ null,
- /*actionDependsOnBuildId=*/ false);
+ /*shareable=*/ true);
}
}
}