нужна ли EhCache определенная конфигурация для хранения на диске?

#java #ehcache

Вопрос:

Я попытался использовать EhCache для хранения 100000 строк, когда каждая строка представляет собой Json, который весит 4 МБ (всего 400 ГБ). (и ключ имеет номер от 1 до 100000)
Для его решения я использовал EhCache с этой программной конфигурацией:

 CacheManager cacheManager = CacheManagerBuilder.newCacheManagerBuilder()
                .with(CacheManagerBuilder.persistence(<PATH_TO_PERSISTENCE_DIR))
                .withCache("session", CacheConfigurationBuilder.newCacheConfigurationBuilder(Integer.class, String.class,
                        ResourcePoolsBuilder.heap(1000)
                                .disk(600, MemoryUnit.GB)
                ).withExpiry(ExpiryPolicyBuilder.timeToLiveExpiration(Duration.ofSeconds(20))))
                .build();

        cacheManager.init();
        Cache<Integer, String> sessionCache = cacheManager.getCache("session", Integer.class, String.class);
 

Разрешение после ~ 12 ГБ Кэш выдает исключение OOM и не может добавлять новые элементы.

Как я делаю что-то не так? Есть ограничение, которого я не видел? (На моем компьютере 32 ГБ оперативной памяти и ~1 ТБ свободного места)