mirror of https://github.com/apache/druid.git
MSQ ignores tombstone segments for downloads. (#14342)
This commit is contained in:
parent
0cde3a8b52
commit
8d256e35b4
|
@ -103,6 +103,7 @@ public class TableInputSpecSlicer implements InputSpecSlicer
|
|||
.flatMap(
|
||||
holder ->
|
||||
StreamSupport.stream(holder.getObject().spliterator(), false)
|
||||
.filter(chunk -> !chunk.getObject().isTombstone())
|
||||
.map(
|
||||
chunk ->
|
||||
new DataSegmentWithInterval(
|
||||
|
|
|
@ -29,6 +29,7 @@ import org.apache.druid.testing.InitializedNullHandlingTest;
|
|||
import org.apache.druid.timeline.DataSegment;
|
||||
import org.apache.druid.timeline.SegmentTimeline;
|
||||
import org.apache.druid.timeline.partition.DimensionRangeShardSpec;
|
||||
import org.apache.druid.timeline.partition.TombstoneShardSpec;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
@ -79,13 +80,25 @@ public class TableInputSpecSlicerTest extends InitializedNullHandlingTest
|
|||
BYTES_PER_SEGMENT
|
||||
);
|
||||
|
||||
private static final DataSegment SEGMENT3 = new DataSegment(
|
||||
DATASOURCE,
|
||||
Intervals.of("2001/2002"),
|
||||
"1",
|
||||
Collections.emptyMap(),
|
||||
Collections.emptyList(),
|
||||
Collections.emptyList(),
|
||||
TombstoneShardSpec.INSTANCE,
|
||||
null,
|
||||
null,
|
||||
BYTES_PER_SEGMENT
|
||||
);
|
||||
private SegmentTimeline timeline;
|
||||
private TableInputSpecSlicer slicer;
|
||||
|
||||
@Before
|
||||
public void setUp()
|
||||
{
|
||||
timeline = SegmentTimeline.forSegments(ImmutableList.of(SEGMENT1, SEGMENT2));
|
||||
timeline = SegmentTimeline.forSegments(ImmutableList.of(SEGMENT1, SEGMENT2, SEGMENT3));
|
||||
DataSegmentTimelineView timelineView = (dataSource, intervals) -> {
|
||||
if (DATASOURCE.equals(dataSource)) {
|
||||
return Optional.of(timeline);
|
||||
|
|
Loading…
Reference in New Issue