private void maybeThrowTimeoutException(final List<Set<String>> topicStillToProcess,
                                            final long deadline,
                                            final String errorMessage) {
        if (topicStillToProcess.stream().anyMatch(resultSet -> !resultSet.isEmpty())) {
            final long now = time.milliseconds();
            if (now >= deadline) {
                log.error(errorMessage);
                throw new TimeoutException(errorMessage);
            }
        }
    }
Sets up internal topics.

Either the given topic are all created or the method fails with an exception.

@param topicConfigs internal topics to setup
streams/src/main/java/org/apache/kafka/streams/processor/internals/InternalTopicManager.java