Срок действия записи в кэш с мягкой блокировкой истек - PullRequest
6 голосов
/ 15 апреля 2011

Hibernate 3.3.x, ehcache 2.2.x

Следующая ошибка возникает, когда я пытаюсь опубликовать множество пользователей за один раз.Любая идея о том, почему это произойдет и как это исправить?Есть ли способ отключить этот кеш до массовой загрузки пользователей, если да, то как мне это сделать?

17:17:50,140 WARN [AbstractReadWriteEhcacheAccessStrategy] Cache
persistence.unit:unitName=my.ear/my-ejb-1.0.0.jar#my.com.mycompany.User.phones Key com.mycompany.User.phones#9915 Lockable : null

A soft-locked cache entry was expired by the underlying Ehcache.
If this happens regularly you should consider increasing the cache timeouts and/or capacity limits

EDIT1:

Эта ошибка возникает, когдаЯ стараюсь загружать много пользователей в базу данных с помощью вызовов JPA.Я не закрываю менеджер кеша через отрывную ловушку.

Ответы [ 3 ]

2 голосов
/ 06 мая 2011

Из описания выглядит, что кэш второго уровня для ваших сущностей заполняется, а некоторые из них преждевременно выселяются из базового ehcache.Делаете ли вы flush & clear в спящем режиме Session периодически во время массовой вставки, как указано в документации ?

1 голос
/ 09 мая 2011

Вы также можете захотеть использовать Сеанс без состояния . Если нет, то, как сказал @Binil Thomas, вам придется flush и clear сеанс, чтобы освободить ресурсы.

0 голосов
/ 09 мая 2011

Увеличьте maxElementsInMemory до 0. Для получения дополнительной информации см. Это

...