Class UnifiedIndexerAppenderatorsManager.LimitedPoolIndexMerger

  • All Implemented Interfaces:
    org.apache.druid.segment.IndexMerger
    Enclosing class:
    UnifiedIndexerAppenderatorsManager

    public static class UnifiedIndexerAppenderatorsManager.LimitedPoolIndexMerger
    extends Object
    implements org.apache.druid.segment.IndexMerger
    This wrapper around IndexMerger limits concurrent calls to the merge/persist methods used by StreamAppenderator with a shared executor service. Merge/persist methods that are not used by AppenderatorImpl will throw an exception if called.
    • Field Summary

      • Fields inherited from interface org.apache.druid.segment.IndexMerger

        INVALID_ROW, log, SERIALIZER_UTILS, UNLIMITED_MAX_COLUMNS_TO_MERGE
    • Constructor Summary

      Constructors 
      Constructor Description
      LimitedPoolIndexMerger​(org.apache.druid.segment.IndexMerger baseMerger, com.google.common.util.concurrent.ListeningExecutorService mergeExecutor)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      File merge​(List<org.apache.druid.segment.IndexableAdapter> indexes, boolean rollup, org.apache.druid.query.aggregation.AggregatorFactory[] metricAggs, File outDir, org.apache.druid.data.input.impl.DimensionsSpec dimensionsSpec, org.apache.druid.segment.IndexSpec indexSpec, int maxColumnsToMerge)  
      File mergeQueryableIndex​(List<org.apache.druid.segment.QueryableIndex> indexes, boolean rollup, org.apache.druid.query.aggregation.AggregatorFactory[] metricAggs, org.apache.druid.data.input.impl.DimensionsSpec dimensionsSpec, File outDir, org.apache.druid.segment.IndexSpec indexSpec, org.apache.druid.segment.IndexSpec indexSpecForIntermediatePersists, org.apache.druid.segment.ProgressIndicator progress, org.apache.druid.segment.writeout.SegmentWriteOutMediumFactory segmentWriteOutMediumFactory, int maxColumnsToMerge)  
      File persist​(org.apache.druid.segment.incremental.IncrementalIndex index, org.joda.time.Interval dataInterval, File outDir, org.apache.druid.segment.IndexSpec indexSpec, org.apache.druid.segment.ProgressIndicator progress, org.apache.druid.segment.writeout.SegmentWriteOutMediumFactory segmentWriteOutMediumFactory)  
      • Methods inherited from interface org.apache.druid.segment.IndexMerger

        mergeQueryableIndex, persist, persist
    • Constructor Detail

      • LimitedPoolIndexMerger

        public LimitedPoolIndexMerger​(org.apache.druid.segment.IndexMerger baseMerger,
                                      com.google.common.util.concurrent.ListeningExecutorService mergeExecutor)
    • Method Detail

      • persist

        public File persist​(org.apache.druid.segment.incremental.IncrementalIndex index,
                            org.joda.time.Interval dataInterval,
                            File outDir,
                            org.apache.druid.segment.IndexSpec indexSpec,
                            org.apache.druid.segment.ProgressIndicator progress,
                            @Nullable
                            org.apache.druid.segment.writeout.SegmentWriteOutMediumFactory segmentWriteOutMediumFactory)
        Specified by:
        persist in interface org.apache.druid.segment.IndexMerger
      • merge

        public File merge​(List<org.apache.druid.segment.IndexableAdapter> indexes,
                          boolean rollup,
                          org.apache.druid.query.aggregation.AggregatorFactory[] metricAggs,
                          File outDir,
                          org.apache.druid.data.input.impl.DimensionsSpec dimensionsSpec,
                          org.apache.druid.segment.IndexSpec indexSpec,
                          int maxColumnsToMerge)
        Specified by:
        merge in interface org.apache.druid.segment.IndexMerger
      • mergeQueryableIndex

        public File mergeQueryableIndex​(List<org.apache.druid.segment.QueryableIndex> indexes,
                                        boolean rollup,
                                        org.apache.druid.query.aggregation.AggregatorFactory[] metricAggs,
                                        @Nullable
                                        org.apache.druid.data.input.impl.DimensionsSpec dimensionsSpec,
                                        File outDir,
                                        org.apache.druid.segment.IndexSpec indexSpec,
                                        org.apache.druid.segment.IndexSpec indexSpecForIntermediatePersists,
                                        org.apache.druid.segment.ProgressIndicator progress,
                                        @Nullable
                                        org.apache.druid.segment.writeout.SegmentWriteOutMediumFactory segmentWriteOutMediumFactory,
                                        int maxColumnsToMerge)
        Specified by:
        mergeQueryableIndex in interface org.apache.druid.segment.IndexMerger