Class DummyForInjectionAppenderatorsManager
- java.lang.Object
-
- org.apache.druid.segment.realtime.appenderator.DummyForInjectionAppenderatorsManager
-
- All Implemented Interfaces:
AppenderatorsManager
public class DummyForInjectionAppenderatorsManager extends Object implements AppenderatorsManager
This implementation is needed because Overlords and MiddleManagers operate on Task objects which can require an AppenderatorsManager to be injected. The methods of this implementation throw exceptions because the Overlord/MM should never be calling the AppenderatorsManager.
-
-
Constructor Summary
Constructors Constructor Description DummyForInjectionAppenderatorsManager()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AppenderatorcreateClosedSegmentsOfflineAppenderatorForTask(String taskId, DataSchema schema, AppenderatorConfig config, FireDepartmentMetrics metrics, org.apache.druid.segment.loading.DataSegmentPusher dataSegmentPusher, com.fasterxml.jackson.databind.ObjectMapper objectMapper, org.apache.druid.segment.IndexIO indexIO, org.apache.druid.segment.IndexMerger indexMerger, org.apache.druid.segment.incremental.RowIngestionMeters rowIngestionMeters, org.apache.druid.segment.incremental.ParseExceptionHandler parseExceptionHandler, boolean useMaxMemoryEstimates)AppenderatorcreateOfflineAppenderatorForTask(String taskId, DataSchema schema, AppenderatorConfig config, FireDepartmentMetrics metrics, org.apache.druid.segment.loading.DataSegmentPusher dataSegmentPusher, com.fasterxml.jackson.databind.ObjectMapper objectMapper, org.apache.druid.segment.IndexIO indexIO, org.apache.druid.segment.IndexMerger indexMerger, org.apache.druid.segment.incremental.RowIngestionMeters rowIngestionMeters, org.apache.druid.segment.incremental.ParseExceptionHandler parseExceptionHandler, boolean useMaxMemoryEstimates)AppenderatorcreateOpenSegmentsOfflineAppenderatorForTask(String taskId, DataSchema schema, AppenderatorConfig config, FireDepartmentMetrics metrics, org.apache.druid.segment.loading.DataSegmentPusher dataSegmentPusher, com.fasterxml.jackson.databind.ObjectMapper objectMapper, org.apache.druid.segment.IndexIO indexIO, org.apache.druid.segment.IndexMerger indexMerger, org.apache.druid.segment.incremental.RowIngestionMeters rowIngestionMeters, org.apache.druid.segment.incremental.ParseExceptionHandler parseExceptionHandler, boolean useMaxMemoryEstimates)Creates an Appenderator suited for batch ingestion.AppenderatorcreateRealtimeAppenderatorForTask(SegmentLoaderConfig segmentLoaderConfig, String taskId, DataSchema schema, AppenderatorConfig config, FireDepartmentMetrics metrics, org.apache.druid.segment.loading.DataSegmentPusher dataSegmentPusher, com.fasterxml.jackson.databind.ObjectMapper objectMapper, org.apache.druid.segment.IndexIO indexIO, org.apache.druid.segment.IndexMerger indexMerger, org.apache.druid.query.QueryRunnerFactoryConglomerate conglomerate, DataSegmentAnnouncer segmentAnnouncer, org.apache.druid.java.util.emitter.service.ServiceEmitter emitter, org.apache.druid.query.QueryProcessingPool queryProcessingPool, org.apache.druid.segment.join.JoinableFactory joinableFactory, Cache cache, CacheConfig cacheConfig, CachePopulatorStats cachePopulatorStats, org.apache.druid.segment.incremental.RowIngestionMeters rowIngestionMeters, org.apache.druid.segment.incremental.ParseExceptionHandler parseExceptionHandler, boolean useMaxMemoryEstimates, CentralizedDatasourceSchemaConfig centralizedDatasourceSchemaConfig)Creates an Appenderator suited for realtime ingestion.<T> org.apache.druid.query.QueryRunner<T>getQueryRunnerForIntervals(org.apache.druid.query.Query<T> query, Iterable<org.joda.time.Interval> intervals)Returns a query runner for the given intervals over the Appenderators managed by this AppenderatorsManager.<T> org.apache.druid.query.QueryRunner<T>getQueryRunnerForSegments(org.apache.druid.query.Query<T> query, Iterable<org.apache.druid.query.SegmentDescriptor> specs)Returns a query runner for the given segment specs over the Appenderators managed by this AppenderatorsManager.voidremoveAppenderatorsForTask(String taskId, String dataSource)Removes any internal Appenderator-tracking state associated with the provided taskId.booleanshouldTaskMakeNodeAnnouncements()As AppenderatorsManager implementions are service dependent (i.e., Peons and Indexers have different impls), this method allows Tasks to know whether they should announce themselves as nodes and segment servers to the rest of the cluster.voidshutdown()Shut down the AppenderatorsManager.
-
-
-
Method Detail
-
createRealtimeAppenderatorForTask
public Appenderator createRealtimeAppenderatorForTask(SegmentLoaderConfig segmentLoaderConfig, String taskId, DataSchema schema, AppenderatorConfig config, FireDepartmentMetrics metrics, org.apache.druid.segment.loading.DataSegmentPusher dataSegmentPusher, com.fasterxml.jackson.databind.ObjectMapper objectMapper, org.apache.druid.segment.IndexIO indexIO, org.apache.druid.segment.IndexMerger indexMerger, org.apache.druid.query.QueryRunnerFactoryConglomerate conglomerate, DataSegmentAnnouncer segmentAnnouncer, org.apache.druid.java.util.emitter.service.ServiceEmitter emitter, org.apache.druid.query.QueryProcessingPool queryProcessingPool, org.apache.druid.segment.join.JoinableFactory joinableFactory, Cache cache, CacheConfig cacheConfig, CachePopulatorStats cachePopulatorStats, org.apache.druid.segment.incremental.RowIngestionMeters rowIngestionMeters, org.apache.druid.segment.incremental.ParseExceptionHandler parseExceptionHandler, boolean useMaxMemoryEstimates, CentralizedDatasourceSchemaConfig centralizedDatasourceSchemaConfig)
Description copied from interface:AppenderatorsManagerCreates an Appenderator suited for realtime ingestion. Note that this method's parameters include objects used for query processing.- Specified by:
createRealtimeAppenderatorForTaskin interfaceAppenderatorsManager
-
createOfflineAppenderatorForTask
public Appenderator createOfflineAppenderatorForTask(String taskId, DataSchema schema, AppenderatorConfig config, FireDepartmentMetrics metrics, org.apache.druid.segment.loading.DataSegmentPusher dataSegmentPusher, com.fasterxml.jackson.databind.ObjectMapper objectMapper, org.apache.druid.segment.IndexIO indexIO, org.apache.druid.segment.IndexMerger indexMerger, org.apache.druid.segment.incremental.RowIngestionMeters rowIngestionMeters, org.apache.druid.segment.incremental.ParseExceptionHandler parseExceptionHandler, boolean useMaxMemoryEstimates)
- Specified by:
createOfflineAppenderatorForTaskin interfaceAppenderatorsManager
-
createOpenSegmentsOfflineAppenderatorForTask
public Appenderator createOpenSegmentsOfflineAppenderatorForTask(String taskId, DataSchema schema, AppenderatorConfig config, FireDepartmentMetrics metrics, org.apache.druid.segment.loading.DataSegmentPusher dataSegmentPusher, com.fasterxml.jackson.databind.ObjectMapper objectMapper, org.apache.druid.segment.IndexIO indexIO, org.apache.druid.segment.IndexMerger indexMerger, org.apache.druid.segment.incremental.RowIngestionMeters rowIngestionMeters, org.apache.druid.segment.incremental.ParseExceptionHandler parseExceptionHandler, boolean useMaxMemoryEstimates)
Description copied from interface:AppenderatorsManagerCreates an Appenderator suited for batch ingestion.- Specified by:
createOpenSegmentsOfflineAppenderatorForTaskin interfaceAppenderatorsManager
-
createClosedSegmentsOfflineAppenderatorForTask
public Appenderator createClosedSegmentsOfflineAppenderatorForTask(String taskId, DataSchema schema, AppenderatorConfig config, FireDepartmentMetrics metrics, org.apache.druid.segment.loading.DataSegmentPusher dataSegmentPusher, com.fasterxml.jackson.databind.ObjectMapper objectMapper, org.apache.druid.segment.IndexIO indexIO, org.apache.druid.segment.IndexMerger indexMerger, org.apache.druid.segment.incremental.RowIngestionMeters rowIngestionMeters, org.apache.druid.segment.incremental.ParseExceptionHandler parseExceptionHandler, boolean useMaxMemoryEstimates)
- Specified by:
createClosedSegmentsOfflineAppenderatorForTaskin interfaceAppenderatorsManager
-
removeAppenderatorsForTask
public void removeAppenderatorsForTask(String taskId, String dataSource)
Description copied from interface:AppenderatorsManagerRemoves any internal Appenderator-tracking state associated with the provided taskId. This method should be called when a task is finished using its Appenderators that were previously created by createRealtimeAppenderatorForTask or createOfflineAppenderatorForTask. The method can be called by the entity managing Tasks when the Tasks finish, such as ThreadingTaskRunner.- Specified by:
removeAppenderatorsForTaskin interfaceAppenderatorsManager
-
getQueryRunnerForIntervals
public <T> org.apache.druid.query.QueryRunner<T> getQueryRunnerForIntervals(org.apache.druid.query.Query<T> query, Iterable<org.joda.time.Interval> intervals)Description copied from interface:AppenderatorsManagerReturns a query runner for the given intervals over the Appenderators managed by this AppenderatorsManager.- Specified by:
getQueryRunnerForIntervalsin interfaceAppenderatorsManager
-
getQueryRunnerForSegments
public <T> org.apache.druid.query.QueryRunner<T> getQueryRunnerForSegments(org.apache.druid.query.Query<T> query, Iterable<org.apache.druid.query.SegmentDescriptor> specs)Description copied from interface:AppenderatorsManagerReturns a query runner for the given segment specs over the Appenderators managed by this AppenderatorsManager.- Specified by:
getQueryRunnerForSegmentsin interfaceAppenderatorsManager
-
shouldTaskMakeNodeAnnouncements
public boolean shouldTaskMakeNodeAnnouncements()
Description copied from interface:AppenderatorsManagerAs AppenderatorsManager implementions are service dependent (i.e., Peons and Indexers have different impls), this method allows Tasks to know whether they should announce themselves as nodes and segment servers to the rest of the cluster. Only Tasks running in Peons (i.e., as separate processes) should make their own individual node announcements.- Specified by:
shouldTaskMakeNodeAnnouncementsin interfaceAppenderatorsManager
-
shutdown
public void shutdown()
Description copied from interface:AppenderatorsManagerShut down the AppenderatorsManager.- Specified by:
shutdownin interfaceAppenderatorsManager
-
-