@Override
    public long scheduleAtomicAppend(
        int epoch,
        OptionalLong requiredEndOffset,
        List<ApiMessageAndVersion> batch
    ) {
        if (batch.isEmpty()) {
            throw new IllegalArgumentException("Batch cannot be empty");
        }
        return shared.tryAppend(nodeId, leader.epoch(), requiredEndOffset, batch);
    }
Shutdown the log manager.

Even though the API suggests a non-blocking shutdown, this method always returns a completed
future. This means that shutdown is a blocking operation.
metadata/src/test/java/org/apache/kafka/metalog/LocalLogManager.java