Class CoordinatorSegmentMetadataCache
- java.lang.Object
-
- org.apache.druid.segment.metadata.AbstractSegmentMetadataCache<DataSourceInformation>
-
- org.apache.druid.segment.metadata.CoordinatorSegmentMetadataCache
-
public class CoordinatorSegmentMetadataCache extends AbstractSegmentMetadataCache<DataSourceInformation>
Coordinator-side cache of segment metadata that combines segments to build datasources. The cache provides metadata about a datasource, seeDataSourceInformation.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.druid.segment.metadata.AbstractSegmentMetadataCache
AbstractSegmentMetadataCache.ColumnTypeMergePolicy, AbstractSegmentMetadataCache.FirstTypeMergePolicy, AbstractSegmentMetadataCache.LeastRestrictiveTypeMergePolicy
-
-
Field Summary
-
Fields inherited from class org.apache.druid.segment.metadata.AbstractSegmentMetadataCache
callbackExec, dataSourcesNeedingRebuild, emitter, isServerViewInitialized, lock, mutableSegments, ROW_SIGNATURE_INTERNER, SEGMENT_ORDER, segmentMetadataInfo, segmentsNeedingRefresh, tables
-
-
Constructor Summary
Constructors Constructor Description CoordinatorSegmentMetadataCache(QueryLifecycleFactory queryLifecycleFactory, CoordinatorServerView serverView, SegmentMetadataCacheConfig config, Escalator escalator, InternalQueryConfig internalQueryConfig, org.apache.druid.java.util.emitter.service.ServiceEmitter emitter, CentralizedDatasourceSchemaConfig centralizedDatasourceSchemaConfig)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidrefresh(Set<org.apache.druid.timeline.SegmentId> segmentsToRefresh, Set<String> dataSourcesToRebuild)Executes SegmentMetadataQuery to fetch schema information for each segment in the refresh list.-
Methods inherited from class org.apache.druid.segment.metadata.AbstractSegmentMetadataCache
addSegment, awaitInitialization, buildDataSourceRowSignature, doInLock, getAvailableSegmentMetadata, getDatasource, getDataSourceInformationMap, getDatasourceNames, getDataSourcesNeedingRebuild, getMutableSegments, getSegmentMetadataSnapshot, getSegmentsNeedingRefresh, getTotalSegments, markDataSourceAsNeedRebuild, refreshSegments, removeSegment, removeServerSegment, runSegmentMetadataQuery, setAvailableSegmentMetadata, start, stop
-
-
-
-
Constructor Detail
-
CoordinatorSegmentMetadataCache
@Inject public CoordinatorSegmentMetadataCache(QueryLifecycleFactory queryLifecycleFactory, CoordinatorServerView serverView, SegmentMetadataCacheConfig config, Escalator escalator, InternalQueryConfig internalQueryConfig, org.apache.druid.java.util.emitter.service.ServiceEmitter emitter, CentralizedDatasourceSchemaConfig centralizedDatasourceSchemaConfig)
-
-
Method Detail
-
refresh
public void refresh(Set<org.apache.druid.timeline.SegmentId> segmentsToRefresh, Set<String> dataSourcesToRebuild) throws IOException
Executes SegmentMetadataQuery to fetch schema information for each segment in the refresh list. The schema information for individual segments is combined to construct a table schema, which is then cached.- Specified by:
refreshin classAbstractSegmentMetadataCache<DataSourceInformation>- Parameters:
segmentsToRefresh- segments for which the schema might have changeddataSourcesToRebuild- datasources for which the schema might have changed- Throws:
IOException- when querying segment from data nodes and tasks
-
-