My first impression was that 100.000 objects can be a lot, try to reduce it to something absurd like 1000 and see if it reproduces. Also you are not overflowing to disk (overflowToDisk=false), that is a hard limit to swapping which would explain the OOM error. Don't use eternal="true" unless you know very well the amount and size of objects you are storing, you are preventing the cache from cleaning up less used objects. Also remember to check -Xmx and -Xms in the JVM.
With the information you provide seems more like a code companion (IA) resoluble question.