Skip to content

Commit bf62013

Browse files
committed
Add null check and throw exception
1 parent 57f248f commit bf62013

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

indexing-service/src/main/java/org/apache/druid/indexing/common/actions/UpdateLocationAction.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import com.fasterxml.jackson.annotation.JsonProperty;
2424
import com.fasterxml.jackson.core.type.TypeReference;
2525
import com.google.common.base.Optional;
26+
import org.apache.druid.error.InvalidInput;
2627
import org.apache.druid.indexer.TaskLocation;
2728
import org.apache.druid.indexing.common.task.Task;
2829
import org.apache.druid.indexing.overlord.TaskRunner;
@@ -42,6 +43,7 @@ public UpdateLocationAction(
4243
@JsonProperty("location") TaskLocation location
4344
)
4445
{
46+
InvalidInput.conditionalException(location != null, "No task location specified");
4547
this.location = location;
4648
}
4749

indexing-service/src/test/java/org/apache/druid/indexing/common/actions/UpdateLocationActionTest.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222
import com.fasterxml.jackson.core.JsonProcessingException;
2323
import com.google.common.base.Optional;
24+
import org.apache.druid.error.DruidException;
2425
import org.apache.druid.indexer.TaskLocation;
2526
import org.apache.druid.indexing.common.task.NoopTask;
2627
import org.apache.druid.indexing.common.task.Task;
@@ -82,4 +83,13 @@ public void testSerde() throws JsonProcessingException
8283
final TaskAction<?> deserialized = TestHelper.JSON_MAPPER.readValue(json, TaskAction.class);
8384
Assert.assertEquals(original, deserialized);
8485
}
86+
87+
@Test
88+
public void test_actionWithNullLocation_throwsException()
89+
{
90+
Assert.assertThrows(
91+
DruidException.class,
92+
() -> new UpdateLocationAction(null)
93+
);
94+
}
8595
}

0 commit comments

Comments
 (0)