aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Ulf Adams <ulfjack@google.com>2017-03-07 15:51:39 +0000
committerGravatar Vladimir Moskva <vladmos@google.com>2017-03-07 17:14:37 +0000
commit17e2033e34074e8b8de8944e79783f05092762ab (patch)
tree670a32146b9090373a26af16f78620cce4dea48e
parent6f9e25464893195a83e162c570d7128037b2a0e5 (diff)
Don't update the action locality for actions with a null owner
-- PiperOrigin-RevId: 149418372 MOS_MIGRATED_REVID=149418372
-rw-r--r--src/main/java/com/google/devtools/build/lib/actions/ActionStatusMessage.java6
-rw-r--r--src/test/java/com/google/devtools/build/lib/actions/ActionExecutionStatusReporterTest.java2
-rw-r--r--src/test/java/com/google/devtools/build/lib/runtime/ExperimentalStateTrackerTest.java1
3 files changed, 9 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/actions/ActionStatusMessage.java b/src/main/java/com/google/devtools/build/lib/actions/ActionStatusMessage.java
index a457801697..f9a26544cd 100644
--- a/src/main/java/com/google/devtools/build/lib/actions/ActionStatusMessage.java
+++ b/src/main/java/com/google/devtools/build/lib/actions/ActionStatusMessage.java
@@ -14,6 +14,8 @@
package com.google.devtools.build.lib.actions;
+import com.google.common.base.Preconditions;
+
/**
* A message used to update in-flight action status. An action's status may change low down in the
* execution stack (for instance, from running remotely to running locally), so this message can be
@@ -48,22 +50,26 @@ public class ActionStatusMessage {
/** Creates "Analyzing" status message. */
public static ActionStatusMessage analysisStrategy(ActionExecutionMetadata action) {
+ Preconditions.checkNotNull(action.getOwner());
return new ActionStatusMessage(action, "Analyzing", null);
}
/** Creates "Preparing" status message. */
public static ActionStatusMessage preparingStrategy(ActionExecutionMetadata action) {
+ Preconditions.checkNotNull(action.getOwner());
return new ActionStatusMessage(action, PREPARING, null);
}
/** Creates "Scheduling" status message. */
public static ActionStatusMessage schedulingStrategy(ActionExecutionMetadata action) {
+ Preconditions.checkNotNull(action.getOwner());
return new ActionStatusMessage(action, "Scheduling", null);
}
/** Creates "Running (strategy)" status message. */
public static ActionStatusMessage runningStrategy(
ActionExecutionMetadata action, String strategy) {
+ Preconditions.checkNotNull(action.getOwner());
return new ActionStatusMessage(action, String.format("Running (%s)", strategy), strategy);
}
}
diff --git a/src/test/java/com/google/devtools/build/lib/actions/ActionExecutionStatusReporterTest.java b/src/test/java/com/google/devtools/build/lib/actions/ActionExecutionStatusReporterTest.java
index 0f01e91f6f..6a67892f88 100644
--- a/src/test/java/com/google/devtools/build/lib/actions/ActionExecutionStatusReporterTest.java
+++ b/src/test/java/com/google/devtools/build/lib/actions/ActionExecutionStatusReporterTest.java
@@ -21,6 +21,7 @@ import com.google.common.base.Splitter;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Iterables;
import com.google.common.eventbus.EventBus;
+import com.google.devtools.build.lib.actions.util.ActionsTestUtil;
import com.google.devtools.build.lib.events.EventKind;
import com.google.devtools.build.lib.events.util.EventCollectionApparatus;
import com.google.devtools.build.lib.util.Clock;
@@ -72,6 +73,7 @@ public class ActionExecutionStatusReporterTest {
private Action mockAction(String progressMessage) {
Action action = Mockito.mock(Action.class);
+ when(action.getOwner()).thenReturn(ActionsTestUtil.NULL_ACTION_OWNER);
when(action.getProgressMessage()).thenReturn(progressMessage);
if (progressMessage == null) {
when(action.prettyPrint()).thenReturn("default message");
diff --git a/src/test/java/com/google/devtools/build/lib/runtime/ExperimentalStateTrackerTest.java b/src/test/java/com/google/devtools/build/lib/runtime/ExperimentalStateTrackerTest.java
index 954710e331..5954f43aa8 100644
--- a/src/test/java/com/google/devtools/build/lib/runtime/ExperimentalStateTrackerTest.java
+++ b/src/test/java/com/google/devtools/build/lib/runtime/ExperimentalStateTrackerTest.java
@@ -425,6 +425,7 @@ public class ExperimentalStateTrackerTest extends FoundationTestCase {
Path path = outputBase.getRelative(new PathFragment(primaryOutput));
Artifact artifact = new Artifact(path, Root.asSourceRoot(path));
ActionExecutionMetadata actionMetadata = Mockito.mock(ActionExecutionMetadata.class);
+ when(actionMetadata.getOwner()).thenReturn(Mockito.mock(ActionOwner.class));
when(actionMetadata.getPrimaryOutput()).thenReturn(artifact);
ExperimentalStateTracker stateTracker = new ExperimentalStateTracker(clock);