-
Bug
-
Resolution: Done
-
Critical
-
2.5.0.Final
At about line 117 of InfinispanRepository, the code does this:
// Remove all cache names that are not valid workspaces ...
if (!nonWorkspaceCacheNames.isEmpty()) cacheNames.removeAll(nowWorkspaceCacheNames);
But cacheNames is returned (earlier in the method) from one of the two CacheManager implementations and turns out to be immutable, making the removeAll method throw an UnsupportedOperationException. The fix is:
// Remove all cache names that are not valid workspaces ...
if (!nonWorkspaceCacheNames.isEmpty())
I had a test case that triggered it, but forgot to save it off. Here's a reference to the ISPN source code though that documents the immutability of the returned value: