docs: private void rollbackDestination() {
          int partitionId = getPartitionId();
          InternalPartitionServiceImpl partitionService = getService();
          PartitionReplicaManager replicaManager = partitionService.getReplicaManager();
          ILogger logger = getLogger();
  
          int destinationCurrentReplicaIndex = migrationInfo.getDestinationCurrentReplicaIndex();
          if (destinationCurrentReplicaIndex == -1) {
              clearPartitionReplicaVersions(partitionId);
              if (logger.isFinestEnabled()) {
                  logger.finest("Replica versions are cleared in destination after failed migration. partitionId="
                          + partitionId);
              }
          } else {
              int replicaOffset = migrationInfo.getDestinationCurrentReplicaIndex() <= 1 ? 1 : migrationInfo
                      .getDestinationCurrentReplicaIndex();
  
              for (ServiceNamespace namespace : replicaManager.getNamespaces(partitionId)) {
                  long[] versions = updatePartitionReplicaVersions(replicaManager, partitionId, namespace, replicaOffset - 1);
  
                  if (logger.isFinestEnabled()) {
                      logger.finest("Replica versions are rolled back in destination after failed migration. partitionId="
                              + partitionId + " namespace: " + namespace + " replica versions=" + Arrays.toString(versions));
                  }
              }
          }
      }