I was running refreshes like every 5 minutes. I did have a look through the code and found that it was doing alot more cache writes then i expected when doing updates, i've optimized (dont delete/write if i dont have to etc) that so I will let you know how that goes after testing.
The selfpopulatingcaches don't actually have much in them, but there refreshes update some elements in other caches (pretty convoluted i know it just evolved that way when i went to bigmemory).
So I found the offline compactor, when i run it over my cache data it does significantly reduce it's size. So I think we can assume that the compactor threads are never running for whatever reason. Is there any way to progamatically trigger the compaction? Or do I need to roll my own?