Add some debugging info to ArtifactFactory, and allow tests to access the ArtifactResolverSupplier in SkyframeExecutor.
PiperOrigin-RevId: 201705857
diff --git a/src/main/java/com/google/devtools/build/lib/actions/ArtifactFactory.java b/src/main/java/com/google/devtools/build/lib/actions/ArtifactFactory.java
index 11b2992..dad4779 100644
--- a/src/main/java/com/google/devtools/build/lib/actions/ArtifactFactory.java
+++ b/src/main/java/com/google/devtools/build/lib/actions/ArtifactFactory.java
@@ -171,7 +171,11 @@
sourceArtifactRoots, "Not initialized for %s %s %s", execPath, root, owner);
return getArtifact(
Preconditions.checkNotNull(
- sourceArtifactRoots.get(root), "%s has no ArtifactRoot (%s)", root, execPath),
+ sourceArtifactRoots.get(root),
+ "%s has no ArtifactRoot (%s) in %s",
+ root,
+ execPath,
+ sourceArtifactRoots),
execPath,
owner,
null);
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 fc95c3b..1dc3328 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
@@ -810,6 +810,11 @@
}
@VisibleForTesting
+ public ArtifactResolverSupplier getArtifactResolverSupplierForTesting() {
+ return artifactFactory;
+ }
+
+ @VisibleForTesting
@Nullable
public WorkspaceStatusAction getLastWorkspaceStatusAction() throws InterruptedException {
WorkspaceStatusValue workspaceStatusValue =