Class StoreMigrationUtils

java.lang.Object
com.linkedin.venice.controller.multitaskscheduler.StoreMigrationUtils

public class StoreMigrationUtils extends Object
  • Method Details

    • isClonedStoreOnline

      protected static boolean isClonedStoreOnline(ControllerClient srcControllerClient, ControllerClient destControllerClient, MigrationRecord record)
    • checkSystemStore

      protected static boolean checkSystemStore(boolean enabled, VeniceSystemStoreType type, String primaryStoreName, ControllerClient srcClient, ControllerClient destClient)
      Check if the system store is ready in the destination cluster.
      Parameters:
      enabled - Whether the feature flag for the system store is enabled on the source store.
      type - The type of the system store to check (e.g., META_STORE, DAVINCI_PUSH_STATUS_STORE).
      primaryStoreName - The name of the primary store for which the system store is being checked.
      srcClient - The controller client for the source cluster.
      destClient - The controller client for the destination cluster.
      Returns:
      True if the system store is ready, false otherwise.
    • getLatestOnlineVersionNum

      protected static OptionalInt getLatestOnlineVersionNum(List<Version> versions)
    • isUpToDate

      protected static boolean isUpToDate(OptionalInt srcVersion, OptionalInt destVersion)
    • applyPauseIfNeeded

      protected static boolean applyPauseIfNeeded(MigrationRecord rec)
      Checks whether this migration run has to be paused / resumed.
      Parameters:
      rec - current migration rec
      Returns:
      true -> rec is (now) paused, caller should abort further work false -> rec is not paused
    • checkRetryLimit

      public static void checkRetryLimit(MigrationRecord record, int maxRetries)