Interface Version

All Superinterfaces:
Comparable<Version>, DataModelBackedStructure<StoreVersion>
All Known Implementing Classes:
ReadOnlyStore.ReadOnlyVersion, VersionImpl

public interface Version extends Comparable<Version>, DataModelBackedStructure<StoreVersion>
This interface defines all the public APIs, and if you need to add accessors to some new fields, this interface needs to be changed accordingly.
  • Field Details

    • VERSION_SEPARATOR

      static final String VERSION_SEPARATOR
      See Also:
    • REAL_TIME_TOPIC_SUFFIX

      static final String REAL_TIME_TOPIC_SUFFIX
      See Also:
    • STREAM_REPROCESSING_TOPIC_SUFFIX

      static final String STREAM_REPROCESSING_TOPIC_SUFFIX
      See Also:
    • SEPARATE_REAL_TIME_TOPIC_SUFFIX

      static final String SEPARATE_REAL_TIME_TOPIC_SUFFIX
      See Also:
    • REPLICATION_METADATA_VERSION_ID_UNSET

      static final int REPLICATION_METADATA_VERSION_ID_UNSET
      Special number indicating no replication metadata version is set.
      See Also:
    • VENICE_RE_PUSH_PUSH_ID_PREFIX

      static final String VENICE_RE_PUSH_PUSH_ID_PREFIX
      Prefix used in push id to indicate the version's data source is coming from an existing version topic.
      See Also:
    • VENICE_TTL_RE_PUSH_PUSH_ID_PREFIX

      static final String VENICE_TTL_RE_PUSH_PUSH_ID_PREFIX
      See Also:
  • Method Details

    • getNumber

      int getNumber()
    • setNumber

      void setNumber(int number)
    • getCreatedTime

      long getCreatedTime()
    • getAge

      Duration getAge()
    • setAge

      void setAge(Duration age)
    • getStatus

      VersionStatus getStatus()
    • setStatus

      void setStatus(VersionStatus status)
    • getCompressionStrategy

      CompressionStrategy getCompressionStrategy()
    • setCompressionStrategy

      void setCompressionStrategy(CompressionStrategy compressionStrategy)
    • isLeaderFollowerModelEnabled

      default boolean isLeaderFollowerModelEnabled()
    • isNativeReplicationEnabled

      boolean isNativeReplicationEnabled()
    • setLeaderFollowerModelEnabled

      @Deprecated default void setLeaderFollowerModelEnabled(boolean leaderFollowerModelEnabled)
      Deprecated.
    • setNativeReplicationEnabled

      void setNativeReplicationEnabled(boolean nativeReplicationEnabled)
    • getPushStreamSourceAddress

      String getPushStreamSourceAddress()
    • setPushStreamSourceAddress

      void setPushStreamSourceAddress(String address)
    • setBufferReplayEnabledForHybrid

      void setBufferReplayEnabledForHybrid(boolean bufferReplayEnabledForHybrid)
    • isChunkingEnabled

      boolean isChunkingEnabled()
    • setChunkingEnabled

      void setChunkingEnabled(boolean chunkingEnabled)
    • isRmdChunkingEnabled

      boolean isRmdChunkingEnabled()
    • setRmdChunkingEnabled

      void setRmdChunkingEnabled(boolean rmdChunkingEnabled)
    • getStoreName

      String getStoreName()
    • getPushJobId

      String getPushJobId()
    • setPushJobId

      void setPushJobId(String pushJobId)
    • getPushType

      Version.PushType getPushType()
    • setPushType

      void setPushType(Version.PushType pushType)
    • setPartitionCount

      void setPartitionCount(int partitionCount)
    • getPartitionCount

      int getPartitionCount()
    • getPartitionerConfig

      PartitionerConfig getPartitionerConfig()
    • setPartitionerConfig

      void setPartitionerConfig(PartitionerConfig partitionerConfig)
    • isVersionSwapDeferred

      boolean isVersionSwapDeferred()
    • setVersionSwapDeferred

      void setVersionSwapDeferred(boolean versionSwapDeferred)
    • getReplicationFactor

      int getReplicationFactor()
    • setReplicationFactor

      void setReplicationFactor(int replicationFactor)
    • getMinActiveReplicas

      int getMinActiveReplicas()
    • getNativeReplicationSourceFabric

      String getNativeReplicationSourceFabric()
    • setNativeReplicationSourceFabric

      void setNativeReplicationSourceFabric(String nativeReplicationSourceFabric)
    • isIncrementalPushEnabled

      boolean isIncrementalPushEnabled()
    • setIncrementalPushEnabled

      void setIncrementalPushEnabled(boolean incrementalPushEnabled)
    • isSeparateRealTimeTopicEnabled

      boolean isSeparateRealTimeTopicEnabled()
    • setSeparateRealTimeTopicEnabled

      void setSeparateRealTimeTopicEnabled(boolean separateRealTimeTopicEnabled)
    • isBlobTransferEnabled

      boolean isBlobTransferEnabled()
    • setBlobTransferEnabled

      void setBlobTransferEnabled(boolean blobTransferEnabled)
    • isUseVersionLevelIncrementalPushEnabled

      boolean isUseVersionLevelIncrementalPushEnabled()
    • setUseVersionLevelIncrementalPushEnabled

      void setUseVersionLevelIncrementalPushEnabled(boolean versionLevelIncrementalPushEnabled)
    • isHybrid

      boolean isHybrid()
    • getHybridStoreConfig

      HybridStoreConfig getHybridStoreConfig()
    • setHybridStoreConfig

      void setHybridStoreConfig(HybridStoreConfig hybridConfig)
    • getViewConfigs

      Map<String,ViewConfig> getViewConfigs()
    • setViewConfigs

      void setViewConfigs(Map<String,ViewConfig> viewConfigMap)
    • isUseVersionLevelHybridConfig

      boolean isUseVersionLevelHybridConfig()
    • setUseVersionLevelHybridConfig

      void setUseVersionLevelHybridConfig(boolean versionLevelHybridConfig)
    • isActiveActiveReplicationEnabled

      boolean isActiveActiveReplicationEnabled()
    • setActiveActiveReplicationEnabled

      void setActiveActiveReplicationEnabled(boolean activeActiveReplicationEnabled)
    • getDataRecoveryVersionConfig

      DataRecoveryVersionConfig getDataRecoveryVersionConfig()
    • setDataRecoveryVersionConfig

      void setDataRecoveryVersionConfig(DataRecoveryVersionConfig dataRecoveryVersionConfig)
    • setTargetSwapRegion

      void setTargetSwapRegion(String targetRegion)
    • getTargetSwapRegion

      String getTargetSwapRegion()
    • setTargetSwapRegionWaitTime

      void setTargetSwapRegionWaitTime(int waitTime)
    • getTargetSwapRegionWaitTime

      int getTargetSwapRegionWaitTime()
    • setIsDavinciHeartbeatReported

      void setIsDavinciHeartbeatReported(boolean isReported)
    • getIsDavinciHeartbeatReported

      boolean getIsDavinciHeartbeatReported()
    • getTimestampMetadataVersionId

      @Deprecated default int getTimestampMetadataVersionId()
      Deprecated.
      Use getRmdVersionId() instead
      Get the replication metadata version id.
      Returns:
      the replication metadata version id
    • setTimestampMetadataVersionId

      @Deprecated default void setTimestampMetadataVersionId(int replicationMetadataVersionId)
      Deprecated.
      Set the replication metadata version id.
    • cloneVersion

      Version cloneVersion()
    • setRepushSourceVersion

      void setRepushSourceVersion(int version)
    • getRepushSourceVersion

      int getRepushSourceVersion()
    • getRmdVersionId

      int getRmdVersionId()
    • setRmdVersionId

      void setRmdVersionId(int replicationMetadataVersionId)
    • kafkaTopicName

      String kafkaTopicName()
      Kafka topic name is composed by store name and version.

      The Json deserializer will think it should be a field called kafkaTopicName if we use "getKafkaTopicName" here. So use "kafkaTopicName" directly here to avoid error when deserialize.

      Returns:
      kafka topic name.
    • parseStoreFromVersionTopic

      static String parseStoreFromVersionTopic(String kafkaTopic)
    • parseVersionFromKafkaTopicName

      static int parseVersionFromKafkaTopicName(String kafkaTopic)
      This API works for both version topic and stream-reprocessing topics; other topic names will fail with IllegalArgumentException.
    • parseVersionFromVersionTopicName

      static int parseVersionFromVersionTopicName(String kafkaTopic)
      This API only works for version topic; other topic names will fail with IllegalArgumentException.
    • getLastIndexOfVersionSeparator

      static int getLastIndexOfVersionSeparator(String kafkaTopic)
    • composeKafkaTopic

      static String composeKafkaTopic(String storeName, int versionNumber)
    • composeRealTimeTopic

      static String composeRealTimeTopic(String storeName)
    • composeSeparateRealTimeTopic

      static String composeSeparateRealTimeTopic(String storeName)
    • composeStreamReprocessingTopic

      static String composeStreamReprocessingTopic(String storeName, int versionNumber)
    • composeStreamReprocessingTopicFromVersionTopic

      static String composeStreamReprocessingTopicFromVersionTopic(String versionTopic)
    • composeVersionTopicFromStreamReprocessingTopic

      static String composeVersionTopicFromStreamReprocessingTopic(String kafkaTopic)
    • parseStoreFromRealTimeTopic

      static String parseStoreFromRealTimeTopic(String kafkaTopic)
    • parseStoreFromStreamReprocessingTopic

      static String parseStoreFromStreamReprocessingTopic(String kafkaTopic)
    • parseStoreFromKafkaTopicName

      static String parseStoreFromKafkaTopicName(String kafkaTopic)
      Parse the store name of the given topic accordingly depending on the type of the kafka topic.
      Parameters:
      kafkaTopic - to parse.
      Returns:
      the store name or an empty string if the topic format doesn't match any of the known Venice topic formats.
    • isRealTimeTopic

      static boolean isRealTimeTopic(String kafkaTopic)
    • isStreamReprocessingTopic

      static boolean isStreamReprocessingTopic(String kafkaTopic)
    • isVersionTopicOrStreamReprocessingTopic

      static boolean isVersionTopicOrStreamReprocessingTopic(String kafkaTopic)
      Return true if the input topic name is a version topic or stream-reprocessing topic.
    • isATopicThatIsVersioned

      static boolean isATopicThatIsVersioned(String kafkaTopic)
      Determines if the the inputted topic is a topic which is versioned. Today that includes reprocessing topics, version topics, and view topics. This method is named this way in order to avoid confusion with the isVersionTopic (where the alternative would be isVersionedTopic).
      Parameters:
      kafkaTopic -
      Returns:
    • checkVersionSRTopic

      static boolean checkVersionSRTopic(String kafkaTopic, boolean checkSR)
    • isVersionTopic

      static boolean isVersionTopic(String kafkaTopic)
      Only return true if the input topic name is a version topic.
    • guidBasedDummyPushId

      static String guidBasedDummyPushId()
    • numberBasedDummyPushId

      static String numberBasedDummyPushId(int number)
    • generateRePushId

      static String generateRePushId(String pushId)
    • generateTTLRePushId

      static String generateTTLRePushId(String pushId)
    • isPushIdTTLRePush

      static boolean isPushIdTTLRePush(String pushId)
    • isPushIdRePush

      static boolean isPushIdRePush(String pushId)
    • containsHybridVersion

      static boolean containsHybridVersion(List<Version> versions)