ControllerResult<Map<ConfigResource, ApiError>> incrementalAlterConfigs(
        Map<ConfigResource, Map<String, Entry<OpType, String>>> configChanges,
        boolean newlyCreatedResource
    ) {
        List<ApiMessageAndVersion> outputRecords =
                BoundedList.newArrayBacked(MAX_RECORDS_PER_USER_OP);
        Map<ConfigResource, ApiError> outputResults = new HashMap<>();
        for (Entry<ConfigResource, Map<String, Entry<OpType, String>>> resourceEntry :
                configChanges.entrySet()) {
            ApiError apiError = incrementalAlterConfigResource(resourceEntry.getKey(),
                resourceEntry.getValue(),
                newlyCreatedResource,
                outputRecords);
            outputResults.put(resourceEntry.getKey(), apiError);
        }
        return ControllerResult.atomicOf(outputRecords, outputResults);
    }
Determine the result of applying a batch of incremental configuration changes.  Note
that this method does not change the contents of memory.  It just generates a
result, that you can replay later if you wish using replay().

Note that there can only be one result per ConfigResource.  So if you try to modify
several keys and one modification fails, the whole ConfigKey fails and nothing gets
changed.

@param configChanges     Maps each resource to a map from config keys to
                         operation data.
@return                  The result.
metadata/src/main/java/org/apache/kafka/controller/ConfigurationControlManager.java