docs: public void setMigratePartitionLeaderStatus(boolean migratePartitionLeader) {
          if (!migratePartitionLeader) {
              m_migratePartitionLeaderStatus = MigratePartitionLeaderStatus.NONE;
              m_newLeaderHSID = Long.MIN_VALUE;
              return;
          }
  
          //The previous leader has already drained all txns
          if (m_migratePartitionLeaderStatus == MigratePartitionLeaderStatus.TXN_DRAINED) {
              m_migratePartitionLeaderStatus = MigratePartitionLeaderStatus.NONE;
              tmLog.info("MigratePartitionLeader transactions on previous partition leader are drained. New leader:" +
                              CoreUtils.hsIdToString(m_hsId) + " status:" + m_migratePartitionLeaderStatus);
              return;
          }
  
          //Wait for the notification from old partition leader
          m_migratePartitionLeaderStatus = MigratePartitionLeaderStatus.TXN_RESTART;
          tmLog.info("MigratePartitionLeader restart txns on new leader:" + CoreUtils.hsIdToString(m_hsId) + " status:" + m_migratePartitionLeaderStatus);
      }