-
Deprecated Interfaces
-
Deprecated ClassesClassDescriptionSince Druid 0.15.0. Segments generated by Druid 0.15.0 onwards do not use this shard spec.segment lock is deprecated, NumberedOverwriteShardSpec should be only used for backward compatibility.
This shardSpec is used only for the segments created by overwriting tasks with segment lock enabled. When the segment lock is used, there is a concept of atomic update group which is a set of segments atomically becoming queryable together in Brokers. It is a similar concept to the core partition set (explained
NumberedShardSpec), but different in a sense that there is only one core partition set per time chunk while there could be multiple atomic update groups in one time chunk.The atomic update group has the root partition range and the minor version to determine the visibility between atomic update groups; the group of the highest minor version in the same root partition range becomes queryable when they have the same major version (
DataSegment.getVersion()).Note that this shardSpec is used only when you overwrite existing segments with segment lock enabled. If the task doesn't overwrite segments, it will use NumberedShardSpec instead even when segment lock is used. Similar to NumberedShardSpec, the size of the atomic update group is determined when the task publishes segments at the end of ingestion. As a result,
NumberedOverwriteShardSpec.atomicUpdateGroupSizeis set toPartitionIds.UNKNOWN_ATOMIC_UPDATE_GROUP_SIZEfirst, and updated when publishing segments inSegmentPublisherHelper#annotateShardSpec.
-
Deprecated Fields
-
Deprecated MethodsMethodDescriptionuse
PolyBind.createChoiceWithDefault(Binder, String, Key, String)instead.defaultKeyargument is ignored.useExprEval.ofString(String)instead, which is clearer as to typeusecomputeOverriddenContext(getContext(), overrides))instead. This method may be removed in the next minor or major version of Druid.Please useIntGrouper.aggregate(int)instead.Please useIntGrouper.aggregateKeyHash(int)instead.usequeryContext().getBoolean()instead.usequeryContext().getContextHumanReadableBytes()instead.usequeryContext().get<Type>()insteaduseQueryMetrics.filterBundle(FilterBundle.BundleInfo)instead to collect details about filters which were used as value matchers forFilteredOffsetorFilteredVectorOffsetThis method will be removed in a future Druid releaseuseQueryMetrics.filterBundle(FilterBundle.BundleInfo)instead to collect details about filters which were used to constructBitmapOffsetorBitmapVectorOffset. This method will be removed in a future Druid releaseUseQueryRunnerFactory.mergeRunners(QueryProcessingPool, Iterable)instead. Runners generated with createRunner() and combined into an Iterable in (time,shardId) order are passed along to this method with anExecutorService. The method should then return aQueryRunnerthat, when asked, will use theExecutorServiceto run the base QueryRunners in some fashion. The vast majority of the time, this should be implemented withChainedExecutionQueryRunner: return new ChainedExecutionQueryRunner<>(queryExecutor, toolChest.getOrdering(), queryWatcher, queryRunners); Which will allow for parallel execution up to the maximum number of processing threads allowed.useDimensionHandler.makeMerger(String, IndexSpec, SegmentWriteOutMedium, ColumnCapabilities, ProgressIndicator, File, Closer)This method exists for backwards compatiblity with older versions of Druid since this is an unofficial extension point that must be implemented to create custom dimension types, and will be removed in a future release.This method is marked as deprecated in DimensionSelector to minimize the probability of accidental calling. "Polymorphism" of DimensionSelector should be used only when operating onColumnValueSelectorobjects.This method is marked as deprecated in DimensionSelector to minimize the probability of accidental calling. "Polymorphism" of DimensionSelector should be used only when operating onColumnValueSelectorobjects.This method is marked as deprecated in DimensionSelector to minimize the probability of accidental calling. "Polymorphism" of DimensionSelector should be used only when operating onColumnValueSelectorobjects.This method is marked as deprecated in DoubleColumnSelector to minimize the probability of accidental calling. "Polymorphism" of DoubleColumnSelector should be used only when operating onColumnValueSelectorobjects.This method is marked as deprecated in DoubleColumnSelector to minimize the probability of accidental calling. "Polymorphism" of DoubleColumnSelector should be used only when operating onColumnValueSelectorobjects.This method is marked as deprecated in DoubleColumnSelector to minimize the probability of accidental calling. "Polymorphism" of DoubleColumnSelector should be used only when operating onColumnValueSelectorobjects.This method is marked as deprecated in DoubleColumnSelector to minimize the probability of accidental calling. "Polymorphism" of DoubleColumnSelector should be used only when operating onColumnValueSelectorobjects.This method is marked as deprecated in FloatColumnSelector to minimize the probability of accidental calling. "Polymorphism" of FloatColumnSelector should be used only when operating onColumnValueSelectorobjects.This method is marked as deprecated in FloatColumnSelector to minimize the probability of accidental calling. "Polymorphism" of FloatColumnSelector should be used only when operating onColumnValueSelectorobjects.This method is marked as deprecated in FloatColumnSelector to minimize the probability of accidental calling. "Polymorphism" of FloatColumnSelector should be used only when operating onColumnValueSelectorobjects.This method is marked as deprecated in FloatColumnSelector to minimize the probability of accidental calling. "Polymorphism" of FloatColumnSelector should be used only when operating onColumnValueSelectorobjects.backward-compatibiliy shim that should be removed on next major release; useDataSegmentPusher.getStorageDir(DataSegment, boolean)instead.This method is marked as deprecated in LongColumnSelector to minimize the probability of accidental calling. "Polymorphism" of LongColumnSelector should be used only when operating onColumnValueSelectorobjects.This method is marked as deprecated in LongColumnSelector to minimize the probability of accidental calling. "Polymorphism" of LongColumnSelector should be used only when operating onColumnValueSelectorobjects.This method is marked as deprecated in LongColumnSelector to minimize the probability of accidental calling. "Polymorphism" of LongColumnSelector should be used only when operating onColumnValueSelectorobjects.This method is marked as deprecated in LongColumnSelector to minimize the probability of accidental calling. "Polymorphism" of LongColumnSelector should be used only when operating onColumnValueSelectorobjects.org.apache.druid.segment.VirtualColumn.makeVectorObjectSelector(String, VectorColumnSelectorFactory) does nothing.useDataSegment.builder(SegmentId)orDataSegment.builder(DataSegment)instead.
-
Deprecated ConstructorsConstructorDescriptionuse
DataSegment.builder(SegmentId)orDataSegment.builder(DataSegment)instead.useDataSegment.builder(SegmentId)orDataSegment.builder(DataSegment)instead.
ValueIndexes,ValueSetIndexes, orUtf8ValueSetIndexesinstead