mirror of
https://github.com/apache/druid.git
synced 2025-02-17 07:25:02 +00:00
Fix MoveTask serde and ArchiveTask id creation
This commit is contained in:
parent
e1b4652100
commit
1ff855d744
@ -45,7 +45,11 @@ public class ArchiveTask extends AbstractFixedIntervalTask
|
||||
@JsonProperty("interval") Interval interval
|
||||
)
|
||||
{
|
||||
super(id, dataSource, interval);
|
||||
super(
|
||||
TaskUtils.makeId(id, "archive", dataSource, interval),
|
||||
dataSource,
|
||||
interval
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -112,4 +112,10 @@ public class MoveTask extends AbstractFixedIntervalTask
|
||||
|
||||
return TaskStatus.success(getId());
|
||||
}
|
||||
|
||||
@JsonProperty
|
||||
public Map<String, Object> getTargetLoadSpec()
|
||||
{
|
||||
return targetLoadSpec;
|
||||
}
|
||||
}
|
||||
|
@ -294,7 +294,58 @@ public class TaskSerdeTest
|
||||
Assert.assertEquals(task.getGroupId(), task2.getGroupId());
|
||||
Assert.assertEquals(task.getDataSource(), task2.getDataSource());
|
||||
Assert.assertEquals(task.getInterval(), task2.getInterval());
|
||||
Assert.assertEquals(task.getSegments(), ((AppendTask) task2).getSegments());
|
||||
Assert.assertEquals(task.getSegments(), task2.getSegments());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testArchiveTaskSerde() throws Exception
|
||||
{
|
||||
final ArchiveTask task = new ArchiveTask(
|
||||
null,
|
||||
"foo",
|
||||
new Interval("2010-01-01/P1D")
|
||||
);
|
||||
|
||||
final ObjectMapper jsonMapper = new DefaultObjectMapper();
|
||||
final String json = jsonMapper.writeValueAsString(task);
|
||||
|
||||
Thread.sleep(100); // Just want to run the clock a bit to make sure the task id doesn't change
|
||||
final ArchiveTask task2 = (ArchiveTask) jsonMapper.readValue(json, Task.class);
|
||||
|
||||
Assert.assertEquals("foo", task.getDataSource());
|
||||
Assert.assertEquals(new Interval("2010-01-01/P1D"), task.getInterval());
|
||||
|
||||
Assert.assertEquals(task.getId(), task2.getId());
|
||||
Assert.assertEquals(task.getGroupId(), task2.getGroupId());
|
||||
Assert.assertEquals(task.getDataSource(), task2.getDataSource());
|
||||
Assert.assertEquals(task.getInterval(), task2.getInterval());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testMoveTaskSerde() throws Exception
|
||||
{
|
||||
final MoveTask task = new MoveTask(
|
||||
null,
|
||||
"foo",
|
||||
new Interval("2010-01-01/P1D"),
|
||||
ImmutableMap.<String, Object>of("bucket", "hey", "baseKey", "what")
|
||||
);
|
||||
|
||||
final ObjectMapper jsonMapper = new DefaultObjectMapper();
|
||||
final String json = jsonMapper.writeValueAsString(task);
|
||||
|
||||
Thread.sleep(100); // Just want to run the clock a bit to make sure the task id doesn't change
|
||||
final MoveTask task2 = (MoveTask) jsonMapper.readValue(json, Task.class);
|
||||
|
||||
Assert.assertEquals("foo", task.getDataSource());
|
||||
Assert.assertEquals(new Interval("2010-01-01/P1D"), task.getInterval());
|
||||
Assert.assertEquals(ImmutableMap.<String, Object>of("bucket", "hey", "baseKey", "what"), task.getTargetLoadSpec());
|
||||
|
||||
Assert.assertEquals(task.getId(), task2.getId());
|
||||
Assert.assertEquals(task.getGroupId(), task2.getGroupId());
|
||||
Assert.assertEquals(task.getDataSource(), task2.getDataSource());
|
||||
Assert.assertEquals(task.getInterval(), task2.getInterval());
|
||||
Assert.assertEquals(task.getTargetLoadSpec(), task2.getTargetLoadSpec());
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -78,9 +78,7 @@ import io.druid.timeline.DataSegment;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
import org.easymock.EasyMock;
|
||||
import org.joda.time.DateTime;
|
||||
import org.joda.time.Duration;
|
||||
import org.joda.time.Interval;
|
||||
import org.joda.time.Period;
|
||||
import org.junit.After;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Before;
|
||||
|
Loading…
x
Reference in New Issue
Block a user