} finally {
// cleanup tmp caches across cluster
EmbeddedCacheManager cm = cache.getCacheManager();
String intermediateCache = getIntermediateCacheName();
if (useIntermediatePerTaskCache()) {
cm.removeCache(intermediateCache);
} else {
//let's make sure shared cache is not destroyed and that we have keys to remove
Cache<KOut, VOut> sharedTmpCache = cm.getCache(intermediateCache);
if (sharedTmpCache != null && allMapPhasesResponses != null) {
for (KOut k : allMapPhasesResponses) {