diff --git a/processing/src/main/java/io/druid/query/metadata/SegmentMetadataQueryQueryToolChest.java b/processing/src/main/java/io/druid/query/metadata/SegmentMetadataQueryQueryToolChest.java index 9144f01e763e..b6d9fd99a498 100644 --- a/processing/src/main/java/io/druid/query/metadata/SegmentMetadataQueryQueryToolChest.java +++ b/processing/src/main/java/io/druid/query/metadata/SegmentMetadataQueryQueryToolChest.java @@ -149,6 +149,8 @@ public SegmentAnalysis apply(SegmentAnalysis arg1, SegmentAnalysis arg2) List newIntervals = null; if (query.hasInterval()) { + //List returned by arg1.getIntervals() is immutable, so a new list needs to + //be created. newIntervals = new ArrayList<>(arg1.getIntervals()); newIntervals.addAll(arg2.getIntervals()); } diff --git a/processing/src/test/java/io/druid/query/metadata/SegmentMetadataQueryTest.java b/processing/src/test/java/io/druid/query/metadata/SegmentMetadataQueryTest.java index 5289e3439ae8..671b3bbf4eb6 100644 --- a/processing/src/test/java/io/druid/query/metadata/SegmentMetadataQueryTest.java +++ b/processing/src/test/java/io/druid/query/metadata/SegmentMetadataQueryTest.java @@ -164,7 +164,7 @@ public void testSegmentMetadataQueryWithDefaultAnalysisMerge() testQuery, Maps.newHashMap() ), - "failed SegmentMetadata bySegment query" + "failed SegmentMetadata merging query" ); exec.shutdownNow(); }