aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/PackageFunction.java
diff options
context:
space:
mode:
authorGravatar shreyax <shreyax@google.com>2018-03-19 20:47:37 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-03-19 20:49:36 -0700
commit755a0a10e14c4fe4c2ff3b71af9f99d5d1a924cf (patch)
tree6175f03d4c94d82fcfa226f9df38ea316f7be8d5 /src/main/java/com/google/devtools/build/lib/skyframe/PackageFunction.java
parent56d1b1c3122a3d1ec111baab339631b8c42c2c31 (diff)
Automated rollback of commit 72d28f3efc2842510a34cacd930c0204143f7412.
Fix skylark caching to properly include transitive dependencies when there is a diamond-like dependency in the loaded bzl files. Also add guards to make sure we're not attempting to cache skylark files that transitively request a dependency that is in error. *** Reason for rollback *** Looking for source of non-determinism *** Original change description *** Automated rollback of commit 7ba939dfd5df48903929e9c14ebd0449656403e4. *** Reason for rollback *** Likely cause for non-determinism in skyframe *** Original change description *** Cache SkylarkLookupImportValues in memory so that we don't recompute them multiple times. PiperOrigin-RevId: 189686604
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/PackageFunction.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/PackageFunction.java5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/PackageFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/PackageFunction.java
index 8a6f603ca7..d69dd83137 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/PackageFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/PackageFunction.java
@@ -77,7 +77,6 @@ import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
-import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
@@ -750,12 +749,10 @@ public class PackageFunction implements SkyFunction {
}
} else {
// Inlining calls to SkylarkImportLookupFunction
- LinkedHashMap<Label, SkylarkImportLookupValue> alreadyVisitedImports =
- Maps.newLinkedHashMapWithExpectedSize(importLookupKeys.size());
for (SkyKey importLookupKey : importLookupKeys) {
SkyValue skyValue =
skylarkImportLookupFunctionForInlining.computeWithInlineCalls(
- importLookupKey, env, alreadyVisitedImports);
+ importLookupKey, env, importLookupKeys.size());
if (skyValue == null) {
Preconditions.checkState(
env.valuesMissing(), "no skylark import value for %s", importLookupKey);