Interface StoreMetadata
-
- All Superinterfaces:
java.lang.AutoCloseable
,java.io.Closeable
,SchemaReader
- All Known Implementing Classes:
AbstractStoreMetadata
,DaVinciClientBasedMetadata
,RequestBasedMetadata
,ThinClientBasedMetadata
,VeniceClientBasedMetadata
public interface StoreMetadata extends SchemaReader
This interface defines the APIs to retrieve store metadata and routing data, and it also includes the feedback APIs:trackHealthBasedOnRequestToInstance(java.lang.String, int, int, java.util.concurrent.CompletableFuture<com.linkedin.venice.client.store.transport.TransportClientResponse>)
to decide the healthiness of each replica.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description int
getBatchGetLimit()
VeniceCompressor
getCompressor(CompressionStrategy compressionStrategy, int version)
int
getCurrentStoreVersion()
InstanceHealthMonitor
getInstanceHealthMonitor()
int
getPartitionId(int version, byte[] key)
int
getPartitionId(int version, java.nio.ByteBuffer key)
java.util.List<java.lang.String>
getReplicas(int version, int partitionId)
default java.util.List<java.lang.String>
getReplicas(long requestId, int version, int partitionId, int requiredReplicaCount)
This function is expected to return fully qualified URI, such as: "https://fake.host:8888".java.util.List<java.lang.String>
getReplicas(long requestId, int version, int partitionId, int requiredReplicaCount, java.util.Set<java.lang.String> excludedInstances)
java.lang.String
getStoreName()
default boolean
isReady()
void
start()
ChainedCompletableFuture<java.lang.Integer,java.lang.Integer>
trackHealthBasedOnRequestToInstance(java.lang.String instance, int version, int partitionId, java.util.concurrent.CompletableFuture<TransportClientResponse> transportFuture)
-
Methods inherited from interface com.linkedin.venice.schema.SchemaReader
getKeySchema, getLatestUpdateSchema, getLatestValueSchema, getLatestValueSchemaId, getUpdateSchema, getValueSchema, getValueSchemaId
-
-
-
-
Method Detail
-
getStoreName
java.lang.String getStoreName()
-
getCurrentStoreVersion
int getCurrentStoreVersion()
-
getPartitionId
int getPartitionId(int version, java.nio.ByteBuffer key)
-
getPartitionId
int getPartitionId(int version, byte[] key)
-
getReplicas
java.util.List<java.lang.String> getReplicas(int version, int partitionId)
-
getReplicas
default java.util.List<java.lang.String> getReplicas(long requestId, int version, int partitionId, int requiredReplicaCount)
This function is expected to return fully qualified URI, such as: "https://fake.host:8888".- Parameters:
version
-partitionId
-- Returns:
-
getReplicas
java.util.List<java.lang.String> getReplicas(long requestId, int version, int partitionId, int requiredReplicaCount, java.util.Set<java.lang.String> excludedInstances)
-
trackHealthBasedOnRequestToInstance
ChainedCompletableFuture<java.lang.Integer,java.lang.Integer> trackHealthBasedOnRequestToInstance(java.lang.String instance, int version, int partitionId, java.util.concurrent.CompletableFuture<TransportClientResponse> transportFuture)
-
getInstanceHealthMonitor
InstanceHealthMonitor getInstanceHealthMonitor()
-
getCompressor
VeniceCompressor getCompressor(CompressionStrategy compressionStrategy, int version)
-
getBatchGetLimit
int getBatchGetLimit()
-
start
void start()
-
isReady
default boolean isReady()
-
-