private static Uuid remoteLogSegmentIdFromRemoteIndexFileName(String fileName) {
        int underscoreIndex = fileName.indexOf("_");
        int dotIndex = fileName.indexOf(".");
        return Uuid.fromString(fileName.substring(underscoreIndex + 1, dotIndex));
    }
Executes each entry in `actions` list even if one or more throws an exception. If any of them throws
an IOException, it will be rethrown and adds all other encountered exceptions as suppressed to that IOException.
Otherwise, it throws KafkaException wrapped with the first exception and the remaining exceptions are added as
suppressed to the KafkaException.

@param actions actions to be executes
@throws IOException Any IOException encountered while executing those actions.
@throws KafkaException Any other non IOExceptions are wrapped and thrown as KafkaException
storage/src/main/java/org/apache/kafka/storage/internals/log/RemoteIndexCache.java