Fixed DestinationCache to avoid ConcurrentModificationException

Moved the cached destinations removal outside the for loops.

Since updateCache is a LinkedHashMap with accessOrder=true,
a simple access with updateCache.get() modify the map.
By iterating over updateCache.entrySet(), we avoid this update.

Issue: SPR-11755