Interface StoreMetadata

All Superinterfaces:
AutoCloseable, Closeable, SchemaReader
All Known Implementing Classes:
AbstractStoreMetadata, RequestBasedMetadata

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 Details

    • getClusterName

      String getClusterName()
    • getStoreName

      String getStoreName()
    • getCurrentStoreVersion

      int getCurrentStoreVersion()
    • getPartitionId

      int getPartitionId(int version, ByteBuffer key)
    • getPartitionId

      int getPartitionId(int version, byte[] key)
    • getReplicas

      List<String> getReplicas(int version, int partitionId)
    • getReplicas

      default List<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

      List<String> getReplicas(long requestId, int version, int partitionId, int requiredReplicaCount, Set<String> excludedInstances)
    • trackHealthBasedOnRequestToInstance

      ChainedCompletableFuture<Integer,Integer> trackHealthBasedOnRequestToInstance(String instance, int version, int partitionId, CompletableFuture<TransportClientResponse> transportFuture)
    • getInstanceHealthMonitor

      InstanceHealthMonitor getInstanceHealthMonitor()
    • getCompressor

      VeniceCompressor getCompressor(CompressionStrategy compressionStrategy, int version)
    • getBatchGetLimit

      int getBatchGetLimit()
    • start

      void start()
    • isReady

      default boolean isReady()