aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java
diff options
context:
space:
mode:
authorGravatar tomlu <tomlu@google.com>2017-11-29 14:01:21 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2017-11-29 14:03:30 -0800
commit3d1a194ff9e76f25f1a7242ff2d021523ba8e4a0 (patch)
tree9fec583a59b8ee6ee0f4fac513d5471956dfe1d3 /src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java
parent8f8b8859fc7d85feee97481443fb11c0b7ae03ce (diff)
Add ActionKeyContext to Action#getKey.
This key context can be used by actions to share partial key computations, for instance when computing MD5s for nested sets. RELNOTES: None PiperOrigin-RevId: 177359607
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java
index aa48b30fe0..a1ba4e5b68 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeBuildView.java
@@ -25,6 +25,7 @@ import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import com.google.common.eventbus.EventBus;
import com.google.devtools.build.lib.actions.ActionAnalysisMetadata;
+import com.google.devtools.build.lib.actions.ActionKeyContext;
import com.google.devtools.build.lib.actions.ActionLookupValue;
import com.google.devtools.build.lib.actions.ArtifactFactory;
import com.google.devtools.build.lib.actions.ArtifactOwner;
@@ -472,7 +473,13 @@ public final class SkyframeBuildView {
boolean extendedSanityChecks = config != null && config.extendedSanityChecks();
boolean allowRegisteringActions = config == null || config.isActionsEnabled();
return new CachingAnalysisEnvironment(
- artifactFactory, owner, isSystemEnv, extendedSanityChecks, eventHandler, env,
+ artifactFactory,
+ skyframeExecutor.getActionKeyContext(),
+ owner,
+ isSystemEnv,
+ extendedSanityChecks,
+ eventHandler,
+ env,
allowRegisteringActions);
}
@@ -618,6 +625,10 @@ public final class SkyframeBuildView {
this.enableAnalysis = enable;
}
+ public ActionKeyContext getActionKeyContext() {
+ return skyframeExecutor.getActionKeyContext();
+ }
+
private class ConfiguredTargetValueProgressReceiver
extends EvaluationProgressReceiver.NullEvaluationProgressReceiver {
@Override