NoOpCacheManager#getCacheNames() returns the underlying raw LinkedHashSet without any concurrent access protection. This should rather be aligned with ConcurrentMapCacheManager and CaffeineCacheManager which simply return ConcurrentHashMap#keySet() from there. The returned collection does not come with any ordering guarantees in the production implementations either, so the no-op implementation can easily align there.