public class TierFetcher extends Object implements kafka.server.BrokerReconfigurable
Modifier and Type | Field and Description |
---|---|
static scala.collection.Set<String> |
reconfigurableConfigs |
kafka.tier.fetcher.TierFetcherMetrics |
tierFetcherMetrics |
Constructor and Description |
---|
TierFetcher(org.apache.kafka.common.utils.Time time,
TierFetcherConfig tierFetcherConfig,
TierObjectStore tierObjectStore,
org.apache.kafka.server.util.KafkaScheduler scheduler,
org.apache.kafka.common.metrics.Metrics metrics,
org.apache.kafka.common.utils.LogContext logContext) |
Modifier and Type | Method and Description |
---|---|
PendingFetch |
buildFetch(List<kafka.tier.fetcher.TierFetchMetadata> tierFetchMetadataList,
org.apache.kafka.common.IsolationLevel isolationLevel,
Consumer<kafka.server.DelayedOperationKey> fetchCompletionCallback,
int maxPartitionFetchBytesOverride) |
void |
close()
Seal the TierFetcher from accepting new fetches, and cancel all in-progress fetches.
|
PendingFetch |
fetch(List<kafka.tier.fetcher.TierFetchMetadata> tierFetchMetadataList,
org.apache.kafka.common.IsolationLevel isolationLevel,
Consumer<kafka.server.DelayedOperationKey> fetchCompletionCallback,
int maxPartitionFetchBytesOverride)
Execute a read for a single partition from Tiered Storage.
|
PendingOffsetForTimestamp |
fetchOffsetForTimestamp(Map<org.apache.kafka.common.TopicPartition,kafka.common.TierUnfetchedTimestampAndOffset> tierTimestampAndOffsets,
Consumer<kafka.server.DelayedOperationKey> fetchCompletionCallback) |
MemoryTracker |
memoryTracker() |
scala.collection.Set<String> |
reconfigurableConfigs() |
void |
reconfigure(kafka.server.KafkaConfig oldConfig,
kafka.server.KafkaConfig newConfig) |
void |
validateReconfiguration(kafka.server.KafkaConfig newConfig) |
public final kafka.tier.fetcher.TierFetcherMetrics tierFetcherMetrics
public static scala.collection.Set<String> reconfigurableConfigs
public TierFetcher(org.apache.kafka.common.utils.Time time, TierFetcherConfig tierFetcherConfig, TierObjectStore tierObjectStore, org.apache.kafka.server.util.KafkaScheduler scheduler, org.apache.kafka.common.metrics.Metrics metrics, org.apache.kafka.common.utils.LogContext logContext)
public void close()
public PendingFetch buildFetch(List<kafka.tier.fetcher.TierFetchMetadata> tierFetchMetadataList, org.apache.kafka.common.IsolationLevel isolationLevel, Consumer<kafka.server.DelayedOperationKey> fetchCompletionCallback, int maxPartitionFetchBytesOverride)
public PendingFetch fetch(List<kafka.tier.fetcher.TierFetchMetadata> tierFetchMetadataList, org.apache.kafka.common.IsolationLevel isolationLevel, Consumer<kafka.server.DelayedOperationKey> fetchCompletionCallback, int maxPartitionFetchBytesOverride)
tierFetchMetadataList
- List containing metadata for partitions requiring tier fetch. Currently, only the
first partition in this list is fetched from tiered storage.isolationLevel
- The isolation level for this fetch.fetchCompletionCallback
- The callback to invoke when this fetch is complete.maxPartitionFetchBytesOverride
- Override for the max partition fetch bytes. We will fetch up to the override
bytes, even if it exceeds the consumer's configured `max.partition.fetch.bytes`.public PendingOffsetForTimestamp fetchOffsetForTimestamp(Map<org.apache.kafka.common.TopicPartition,kafka.common.TierUnfetchedTimestampAndOffset> tierTimestampAndOffsets, Consumer<kafka.server.DelayedOperationKey> fetchCompletionCallback)
public MemoryTracker memoryTracker()
public scala.collection.Set<String> reconfigurableConfigs()
reconfigurableConfigs
in interface kafka.server.BrokerReconfigurable
public void validateReconfiguration(kafka.server.KafkaConfig newConfig)
validateReconfiguration
in interface kafka.server.BrokerReconfigurable
public void reconfigure(kafka.server.KafkaConfig oldConfig, kafka.server.KafkaConfig newConfig)
reconfigure
in interface kafka.server.BrokerReconfigurable