Fix build view to re-enable analysis when post-configuring targets after an error.
There are apparently some cases where there is no cached version and this was causing hard server crashes.
Unfortunately I can't create a reproducing test case.
@@ -495,8 +495,14 @@ public final class SkyframeBuildView {
if (!badActions.isEmpty()) {
// In order to determine the set of configured targets transitively error free from action
// conflict issues, we run a post-processing update() that uses the bad action map.
- EvaluationResult<PostConfiguredTargetValue> actionConflictResult =
+ EvaluationResult<PostConfiguredTargetValue> actionConflictResult;
+ enableAnalysis(true);
+ try {
+ actionConflictResult =
skyframeExecutor.postConfigureTargets(eventHandler, ctKeys, keepGoing, badActions);
+ } finally {
+ enableAnalysis(false);
+ }
cts = Lists.newArrayListWithCapacity(ctKeys.size());
for (ConfiguredTargetKey value : ctKeys) {
