Ошибка в ehcache "singleton CacheManager"
Иногда наблюдаю в логах непонятную активность с повторяющимися сообщениями от hibernate о ненайденых настройках кэша. Что самое страшное эти сообщения дублируются сотнями, что говорит о ненормальности работы сервера и кэша ehcache.
Вчера в логах встретилось следующее сообщение:
cheManager using the diskStorePath "/usr/local/tomcat/temp" which is already use
d by an existing CacheManager.
The source of the configuration was classpath.
The diskStore path for this CacheManager will be set to /usr/local/tomcat/temp/e
hcache_auto_created_1249728036213.
To avoid this warning consider using the CacheManager factory methods to create
a singleton CacheManager or specifying a separate ehcache configuration (ehcache
.xml) for each CacheManager instance.
Погуглив на эту тему, выяснил что оказывается старый метод кэширования был зависим от приложения, что и создавало тучи папок "ehcache_auto_created_" во временной папке томката. Лекарство от недуга, уже придумано в EhCache 1.2, для этого правим hibernate.cfg.xml file:
<property name="hibernate.cache.provider_class">
net.sf.ehcache.hibernate.SingletonEhCacheProvider
</property>
И получаем единый кэш на весь экземпляр Tomcat.