aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationFunction.java
diff options
context:
space:
mode:
authorGravatar Ulf Adams <ulfjack@google.com>2016-01-25 10:31:46 +0000
committerGravatar Kristina Chodorow <kchodorow@google.com>2016-01-25 16:51:11 +0000
commit25f03d88b28efd47fb5cfefb7a4b477454d8a2d6 (patch)
treea57f9db8c5b1efd6915a4cc43afe7a29258f4751 /src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationFunction.java
parent9668361ba9db4b3d2b05e5e33e2c82a7f1085f2b (diff)
Move analysis root cause tracking to the ConfiguredTargetFunction.
The main remaining problem with interleaved loading and analysis is error handling. When interleaving, we don't run a real loading phase anymore, and loading errors can occur during the analysis phase, and need to be handled there. The plan is to have ConfiguredTargetFunction throw a ConfiguredValueCreationException with a list of all loading root causes, which requires that we also catch ConfiguredValueCreationException here, which in turn breaks analysis root cause handling, as that is currently relying on Skyframe root cause tracking. Moving analysis root cause handling into CTFunction makes it possible to subsequently also implement loading root cause handling here. This is also necessary if we want to have complete root cause handling in the general case: a target may have any number (and combination) of loading and analysis root causes at the same time. For now, we only pass a single analysis root cause, which mirrors the current Skyframe-based implementation. -- MOS_MIGRATED_REVID=112930871
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationFunction.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationFunction.java3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationFunction.java
index 9b5bdad15c..15498ce490 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationFunction.java
@@ -54,8 +54,7 @@ public class BuildConfigurationFunction implements SkyFunction {
}
@Override
- public SkyValue compute(SkyKey skyKey, Environment env) throws InterruptedException,
- SkyFunctionException {
+ public SkyValue compute(SkyKey skyKey, Environment env) throws SkyFunctionException {
BuildConfigurationValue.Key key = (BuildConfigurationValue.Key) skyKey.argument();
Set<Fragment> fragments;
try {