diff options
author | shreyax <shreyax@google.com> | 2018-03-19 20:47:37 -0700 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2018-03-19 20:49:36 -0700 |
commit | 755a0a10e14c4fe4c2ff3b71af9f99d5d1a924cf (patch) | |
tree | 6175f03d4c94d82fcfa226f9df38ea316f7be8d5 /src/main/java/com/google/devtools/build/lib/skyframe/PackageFunction.java | |
parent | 56d1b1c3122a3d1ec111baab339631b8c42c2c31 (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.java | 5 |
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); |