Несколько приложений Grails создают конфликты Ehcache - PullRequest
3 голосов
/ 13 мая 2010

Я запускаю несколько приложений Grails на одном из моих серверов. Я использую Grails 1.2.2. Я использую конфигурацию кэша по умолчанию в DataSource.groovy. Когда я пытаюсь запустить два приложения Grails, кажется, что они оба используют / пишут в:

/ TMP / org.hibernate.cache.UpdateTimestampsCache.data

Когда я смотрю, как настроить Ehcache с файлом ehcache.xml с этой страницы:

http://ehcache.org/documentation/grails.html

Я не вижу никакой информации об указании местоположений и / или имен или временных файлов.

Как избежать этой проблемы при запуске нескольких приложений Grails на одном сервере (без отключения кэша)?

Уточнение: в связи с ответом Дипака

Поскольку я развертываю это как войну, это будет примером того, что я бы добавил в блок сред Config.groovy?

environments {
    production {
        java.io.tmpdir = /tmp/myapp-prod.tmp
    }
}

Ответы [ 2 ]

5 голосов
/ 13 мая 2010

Я сталкивался с этой проблемой раньше. Я просто указал другое местоположение для системного свойства java.io.tmpdir при запуске встроенного сервера grails. Например.

Grails -Djava.io.tmpdir = / home / dmittal / tmp run-app

Вам необходимо указать другое местоположение временного каталога для разных приложений Grails.

0 голосов
/ 06 января 2011

Добавьте следующее в файл ehcache.xml (мой находится в корневом каталоге проекта), чтобы настроить путь к хранилищу ehCache diskStore:

<diskStore path="java.io.tmpdir"/>
...