Package com.linkedin.davinci.client
Class AvroSpecificSeekableDaVinciClient<K,V extends org.apache.avro.specific.SpecificRecord>
java.lang.Object
com.linkedin.davinci.client.AvroGenericDaVinciClient<K,V>
com.linkedin.davinci.client.AvroSpecificSeekableDaVinciClient<K,V>
- All Implemented Interfaces:
DaVinciClient<K,,V> SeekableDaVinciClient<K,,V> AvroGenericReadComputeStoreClient<K,,V> AvroGenericStoreClient<K,,V> Closeable,AutoCloseable
public class AvroSpecificSeekableDaVinciClient<K,V extends org.apache.avro.specific.SpecificRecord>
extends AvroGenericDaVinciClient<K,V>
implements SeekableDaVinciClient<K,V>
-
Field Summary
Fields inherited from class com.linkedin.davinci.client.AvroGenericDaVinciClient
DEFAULT_CHUNK_SPLIT_THRESHOLD, logger, READ_CHUNK_EXECUTOR, storeBackend, subscription -
Constructor Summary
ConstructorsConstructorDescriptionAvroSpecificSeekableDaVinciClient(DaVinciConfig daVinciConfig, ClientConfig clientConfig, VeniceProperties backendConfig, Optional<Set<String>> managedClients, ICProvider icProvider, Executor readChunkExecutorForLargeRequest) -
Method Summary
Modifier and TypeMethodDescriptionseekToBeginningOfPush(Set<Integer> partitions) Seek to the begining of the push, for the specified partitions.seekToCheckpoint(Set<VeniceChangeCoordinate> checkpoints) Seek the provided checkpoints for the specified partitions.Seek to the end of the last push for all subscribed partitions.seekToTail(Set<Integer> partitions) Seek to the end of the last push for the specified partitions.seekToTimestamp(Long timestamp) Seek to the specified timestamp for all subscribed partitions.seekToTimestamps(Map<Integer, Long> timestamps) Seek to the specified timestamps for partitions and corresponding timestamps in the map.Methods inherited from class com.linkedin.davinci.client.AvroGenericDaVinciClient
addPartitionsToSubscription, batchGet, close, compute, compute, computeWithKeyPrefixFilter, discoverService, get, get, getAvroChunkingAdapter, getBackend, getGenericRecordChunkingAdapter, getKeySchema, getLatestValueSchema, getPartitionCount, getSchemaReader, getStoreName, getStoreVersion, initBackend, isPartitionReadyToServe, isPartitionSubscribed, isProjectionFieldValidationEnabled, isReady, seekToTimestamps, split, start, streamingBatchGet, subscribe, subscribe, subscribeAll, throwIfNotReady, toString, unsubscribe, unsubscribe, unsubscribeAllMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.linkedin.venice.client.store.AvroGenericReadComputeStoreClient
compute, compute, compute, computeAggregationMethods inherited from interface com.linkedin.venice.client.store.AvroGenericStoreClient
batchGet, close, get, get, getKeySchema, getLatestValueSchema, getStoreName, start, streamingBatchGet, streamingBatchGetMethods inherited from interface com.linkedin.davinci.client.DaVinciClient
getPartitionCount, subscribe, subscribeAll, unsubscribe, unsubscribeAll
-
Constructor Details
-
AvroSpecificSeekableDaVinciClient
public AvroSpecificSeekableDaVinciClient(DaVinciConfig daVinciConfig, ClientConfig clientConfig, VeniceProperties backendConfig, Optional<Set<String>> managedClients, ICProvider icProvider, Executor readChunkExecutorForLargeRequest)
-
-
Method Details
-
seekToTimestamps
Description copied from interface:SeekableDaVinciClientSeek to the specified timestamps for partitions and corresponding timestamps in the map.- Specified by:
seekToTimestampsin interfaceSeekableDaVinciClient<K,V extends org.apache.avro.specific.SpecificRecord> - Overrides:
seekToTimestampsin classAvroGenericDaVinciClient<K,V extends org.apache.avro.specific.SpecificRecord>
-
seekToTimestamp
Description copied from interface:SeekableDaVinciClientSeek to the specified timestamp for all subscribed partitions.- Specified by:
seekToTimestampin interfaceSeekableDaVinciClient<K,V extends org.apache.avro.specific.SpecificRecord>
-
seekToBeginningOfPush
Description copied from interface:SeekableDaVinciClientSeek to the begining of the push, for the specified partitions. Same as unsubscribe and subscribe.- Specified by:
seekToBeginningOfPushin interfaceSeekableDaVinciClient<K,V extends org.apache.avro.specific.SpecificRecord> - Returns:
-
seekToCheckpoint
Description copied from interface:SeekableDaVinciClientSeek the provided checkpoints for the specified partitions. Note about checkpoints: Checkpoints have the following properties and should be considered: - Checkpoints are NOT comparable or valid across partitions. - Checkpoints are NOT comparable or valid across regions - Checkpoints are NOT comparable across store versions - It is not possible to determine the number of events between two checkpoints - It is possible that a checkpoint is no longer on retention. In such case, we will return an exception to the caller.- Specified by:
seekToCheckpointin interfaceSeekableDaVinciClient<K,V extends org.apache.avro.specific.SpecificRecord> - Overrides:
seekToCheckpointin classAvroGenericDaVinciClient<K,V extends org.apache.avro.specific.SpecificRecord> - Returns:
- a future which completes when seek has completed for all partitions
-
seekToTail
Description copied from interface:SeekableDaVinciClientSeek to the end of the last push for all subscribed partitions.- Specified by:
seekToTailin interfaceSeekableDaVinciClient<K,V extends org.apache.avro.specific.SpecificRecord> - Returns:
- a future which completes when the operation has succeeded for all partitions.
-
seekToTail
Description copied from interface:SeekableDaVinciClientSeek to the end of the last push for the specified partitions.- Specified by:
seekToTailin interfaceSeekableDaVinciClient<K,V extends org.apache.avro.specific.SpecificRecord> - Parameters:
partitions- the set of partitions to seek with- Returns:
- a future which completes when the operation has succeeded for all partitions.
-