aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar mschaller <mschaller@google.com>2018-06-29 19:45:47 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-06-29 19:47:09 -0700
commit1e54246d27417dd69aa5553da9e945254c492cd0 (patch)
treec9acdd14b6f80f21c36585dccb7c996eb54210c5
parent8ae7a3ba8c68278b362f6c0e5aa127c96f8f6025 (diff)
Fix comment re: keep-going eval of SkyFunctions in error w undone deps
The ParallelEvaluator doesn't let such a SkyFunction complete; it has no control over whether the SkyFunction throws. RELNOTES: None. PiperOrigin-RevId: 202743267
-rw-r--r--src/main/java/com/google/devtools/build/skyframe/AbstractParallelEvaluator.java10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/main/java/com/google/devtools/build/skyframe/AbstractParallelEvaluator.java b/src/main/java/com/google/devtools/build/skyframe/AbstractParallelEvaluator.java
index 793b206b65..31477b0ccb 100644
--- a/src/main/java/com/google/devtools/build/skyframe/AbstractParallelEvaluator.java
+++ b/src/main/java/com/google/devtools/build/skyframe/AbstractParallelEvaluator.java
@@ -397,11 +397,11 @@ public abstract class AbstractParallelEvaluator {
} catch (final SkyFunctionException builderException) {
ReifiedSkyFunctionException reifiedBuilderException =
new ReifiedSkyFunctionException(builderException, skyKey);
- // In keep-going mode, we do not let SkyFunctions throw errors with missing deps -- we
- // will restart them when their deps are done, so we can have a definitive error and
- // definitive graph structure, thus avoiding non-determinism. It's completely reasonable
- // for SkyFunctions to throw eagerly because they do not know if they are in keep-going
- // mode.
+ // In keep-going mode, we do not let SkyFunctions complete with a thrown error if they
+ // have missing deps. Instead, we wait until their deps are done and restart the
+ // SkyFunction, so we can have a definitive error and definitive graph structure, thus
+ // avoiding non-determinism. It's completely reasonable for SkyFunctions to throw eagerly
+ // because they do not know if they are in keep-going mode.
// Propagated transitive errors are treated the same as missing deps.
if ((!evaluatorContext.keepGoing() || !env.valuesMissing())
&& reifiedBuilderException.getRootCauseSkyKey().equals(skyKey)) {