EDIT: Issueshttps://dev.e-taxonomy.eu/redmine/https://dev.e-taxonomy.eu/redmine/redmine/favicon.ico?14691914852023-01-04T21:10:11ZEDIT Project Management
Redmine task #10218 (New): Unify cache handling in CDM platformhttps://dev.e-taxonomy.eu/redmine/issues/102182023-01-04T21:10:11ZAndreas Müller
<p>Currently ehCache is used in different ways throughout the platform.</p>
<ul>
<li>transient entity cache - used by TaxEditor (+ Vaadin?)</li>
<li>term cache/proxy - should cache terms locally for 120 min <del>but not configured correctly</del> (<a class="issue tracker-4 status-5 priority-10 priority-lowest closed" title="bug: Cache configuration for term cache not correctly initialized in taxeditor (Closed)" href="https://dev.e-taxonomy.eu/redmine/issues/10214">#10214</a>)</li>
<li>modelCache (CdmRemotCacheManager) + CacheLoader</li>
<li>cdmlib-remote/test - springframework - EhCacheManagerFactoryBean</li>
<li>cdmlib-remote: taxonOqiPmhController - uses springmodules ehcache API (<a class="issue tracker-6 status-2 priority-12 priority-high14" title="task: replace spring-modules-cache by up to date implementation (In Progress)" href="https://dev.e-taxonomy.eu/redmine/issues/3408">#3408</a>)</li>
<li>more?</li>
</ul>
<p>Additionally there are lots of classes for wrapping, adapting, proxying and loading. Many of them in cdmlib-cache but also some in taxeditor (CdmServiceCachingProxy, RemoteInvocationTermCacher, CachedCommonServiceImple).</p>
<p>In some context spring EhCache module is used in others it is not. </p>
<p>Critical is also the handling of EhCacheConfiguration as spring bean which creates the cacheManager and tries to configure the disk storage which does currently not always work as expected. See comments in code.</p>
<p>We should fully implement this after upgrading to ehcache 3.x</p>
<p>Generally there should be 1 cache manager with diskstorage defined in spring configuration depending on application (taxeditor, cdmserver, other).<br>
Also it should depend on instance. If 2 TaxEditor instances are open they should not use the same disk storange. We could use random uuid or startup date to distinguish disk storage.</p>
<p>... </p>
bug #10214 (Closed): Cache configuration for term cache not correctly initialized in taxeditorhttps://dev.e-taxonomy.eu/redmine/issues/102142022-12-21T12:13:16ZAndreas Müller
<p>This results in short time-to-live and time-to-idle values (and maybe others) as values are taken from default ehCache configuration instead of cdm EhCacheConfiguration and has 2 min instead of 2 h.</p>
<p>The reason is that currently the class EhCacheConfiguration in method cacheManager() calls CacheManager.create(config). However, if the CacheManager singleton has already been created previously the passed configuration parameter has no effect.</p>
<p>If CacheManager.create() is called a singleton with a default cache configuration is created. This configuration can not be exchanged anymore later.</p>
<p>In TaxEditor the CacheManager singleton is already created when CdmRemoteCacheManager is initialized (contructor line 65) which is prior to calling CdmCacherBase.getDefaultCacheConfiguration().</p>
<p>CdmTransientEntityCache: the transient entity cache works already correctly as it creates a cache with a given configuration in its constructor</p>
<p>Solutions:</p>
<ul>
<li>do not use the CacheManager singleton (but be careful to be thread safe) => no real reason for doing so</li>
<li>use a specific cache configuration when the cdmDefaultCache is created (this seems to happen in CdmCacherBase.getDefaultCache()) => chosen solution, similar to transient entity cache</li>
<li>... </li>
</ul>
<p>NOTE: do also adapt path to taxeditor ehcache in DiskStoreConfiguration of setUpCacheManager() configuration after the above is fixed => moved to <a class="issue tracker-6 status-1 priority-11 priority-default" title="task: Unify cache handling in CDM platform (New)" href="https://dev.e-taxonomy.eu/redmine/issues/10218">#10218</a></p>
task #9207 (Duplicate): update ehcache dependency and handle hibernate-ehcachehttps://dev.e-taxonomy.eu/redmine/issues/92072020-08-25T15:56:48ZAndreas Müller
<p>The latest version of ehcache-core is 3.8.1 but has a different groupId since version 3.0 so we need to check if this is still working together.</p>
<p><del>Also we should check if cdmlib-remote dependency hibernate-ehcache is really needed. It relates to the similar library ehcache (not -core) and therefore many classes are duplicated.<br>
Removing hibernate-ehcache from maven pom does not create any compile problems.</del> => seems to be fixed in the meanwhile, hibernate-ehcache is not a dependency anymore</p>
bug #8696 (New): ehcahe discstore conflict when using the taxeditor with multiple users on the sa...https://dev.e-taxonomy.eu/redmine/issues/86962019-11-18T21:07:30ZAndreas Kohlbecker
<p>The diskstore must be created in user specific subfolders of the system temp folder.</p>
<p>We should consider creating also timestamped subfolders or ehcache diskstore folders to avoid problems with multiple Taxeditor instances being run be the same user. </p>
<pre>login : admin
editor version : 5.11.0
server : api.cybertaxonomy.org (cybertaxonomy.org) / cichorieae
schema version : 5.11.2.0.20191109
os : Linux 5.0.0-32-generic amd64
java : 1.8.0_131
org.eclipse.swt.SWTException: Failed to execute runnable (net.sf.ehcache.CacheException: java.io.FileNotFoundException: /tmp/cdm%0044efault%0043ache.data (Permission denied))
at org.eclipse.swt.SWT.error(SWT.java:4533)
at org.eclipse.swt.SWT.error(SWT.java:4448)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4536)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4154)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.block(ModalContext.java:165)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:369)
at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:481)
at eu.etaxonomy.taxeditor.store.CdmStoreConnector.start(CdmStoreConnector.java:147)
at eu.etaxonomy.taxeditor.store.CdmStore.connect(CdmStore.java:261)
at eu.etaxonomy.taxeditor.store.CdmStore.connect(CdmStore.java:216)
at eu.etaxonomy.taxeditor.ui.dialog.RemotingLoginDialog.connect(RemotingLoginDialog.java:914)
at eu.etaxonomy.taxeditor.ui.dialog.RemotingLoginDialog.access$16(RemotingLoginDialog.java:900)
at eu.etaxonomy.taxeditor.ui.dialog.RemotingLoginDialog$11$1.run(RemotingLoginDialog.java:663)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:182)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4536)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4154)
at eu.etaxonomy.taxeditor.ui.dialog.RemotingLoginDialog.open(RemotingLoginDialog.java:214)
at eu.etaxonomy.taxeditor.ui.dialog.RemotingLoginDialog.open(RemotingLoginDialog.java:189)
at eu.etaxonomy.taxeditor.ui.dialog.RemotingLoginDialog.open(RemotingLoginDialog.java:180)
at eu.etaxonomy.taxeditor.handler.e4.ReconnectHandlerE4.execute(ReconnectHandlerE4.java:41)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:55)
at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:282)
at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:264)
at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132)
at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:152)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:494)
at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:488)
at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:210)
at org.eclipse.e4.ui.workbench.renderers.swt.HandledContributionItem.executeItem(HandledContributionItem.java:433)
at org.eclipse.e4.ui.workbench.renderers.swt.AbstractContributionItem.handleWidgetSelection(AbstractContributionItem.java:454)
at org.eclipse.e4.ui.workbench.renderers.swt.AbstractContributionItem$3.handleEvent(AbstractContributionItem.java:482)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5227)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1340)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4561)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4151)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1121)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1022)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:150)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:693)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:610)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
at eu.etaxonomy.taxeditor.Application.start(Application.java:24)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:673)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:610)
at org.eclipse.equinox.launcher.Main.run(Main.java:1519)
at org.eclipse.equinox.launcher.Main.main(Main.java:1492)
Caused by: net.sf.ehcache.CacheException: java.io.FileNotFoundException: /tmp/cdm%0044efault%0043ache.data (Permission denied)
at net.sf.ehcache.store.disk.DiskStorageFactory.<init>(DiskStorageFactory.java:144)
at net.sf.ehcache.store.disk.DiskStore.create(DiskStore.java:134)
at net.sf.ehcache.store.DiskBackedMemoryStore.createDiskStore(DiskBackedMemoryStore.java:61)
at net.sf.ehcache.store.DiskBackedMemoryStore.create(DiskBackedMemoryStore.java:49)
at net.sf.ehcache.Cache.initialise(Cache.java:1097)
at net.sf.ehcache.CacheManager.initializeEhcache(CacheManager.java:1306)
at net.sf.ehcache.CacheManager.addCacheNoCheck(CacheManager.java:1337)
at net.sf.ehcache.CacheManager.addCache(CacheManager.java:1235)
at net.sf.ehcache.CacheManager.addCache(CacheManager.java:1177)
at eu.etaxonomy.cdm.api.cache.CdmCacher.getDefaultCache(CdmCacher.java:95)
at eu.etaxonomy.cdm.api.cache.CdmCacher.getCacheElement(CdmCacher.java:114)
at eu.etaxonomy.cdm.api.cache.CdmCacher.load(CdmCacher.java:127)
at eu.etaxonomy.cdm.model.term.DefinedTermBase.getTermByClassAndUUID_aroundBody20(DefinedTermBase.java:562)
at eu.etaxonomy.cdm.model.term.DefinedTermBase.getTermByClassAndUUID(DefinedTermBase.java:1)
at eu.etaxonomy.cdm.model.name.Rank.getTermByUuid(Rank.java:227)
at eu.etaxonomy.cdm.model.name.Rank.initDefaultTerms_aroundBody174(Rank.java:1013)
at eu.etaxonomy.cdm.model.name.Rank.initDefaultTerms(Rank.java:1)
at eu.etaxonomy.taxeditor.store.CdmStoreConnector$1$2.run(CdmStoreConnector.java:211)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:182)
... 61 more
Caused by: java.io.FileNotFoundException: /tmp/cdm%0044efault%0043ache.data (Permission denied)
at java.io.RandomAccessFile.open0(Native Method)
at java.io.RandomAccessFile.open(RandomAccessFile.java:316)
at java.io.RandomAccessFile.<init>(RandomAccessFile.java:243)
at net.sf.ehcache.store.disk.DiskStorageFactory.allocateRandomAccessFiles(DiskStorageFactory.java:206)
at net.sf.ehcache.store.disk.DiskStorageFactory.<init>(DiskStorageFactory.java:142)
... 80 more
</pre> bug #8243 (Resolved): Cdm Cache uses a lot of disk spacehttps://dev.e-taxonomy.eu/redmine/issues/82432019-04-16T09:48:41ZPatrick Plitzner
<p>Recently Tilo experienced a sudden system freeze when his main partition went from ~3GB free disk space to 100% full in seconds.<br>
We found out that it was the CDM cache file that took +2,5GB disk space.</p>
<p>This is not a problem per se but the users should be informed about the cache and it should be reflected in the specs.</p>
<p><img src="https://dev.e-taxonomy.eu/redmine/attachments/download/1588/picture710-1.png" alt="" /></p>
<p>He was working in the Additivity context with the FeatureTreeEditor, TermEditor, DatasetEditor and the CharacterMatrix.</p>
bug #7742 (Closed): vaadin view presenters not disposing ehcaches and object references in event ...https://dev.e-taxonomy.eu/redmine/issues/77422018-09-07T09:32:47ZAndreas Kohlbeckerbug #7729 (New): potential ehcache CacheConfiguration problemhttps://dev.e-taxonomy.eu/redmine/issues/77292018-09-06T16:18:31ZAndreas Kohlbecker
<p>the below warnings are reported frequently. <del>Interestingly it happens often short before the server freezes due to out of memory problems of the OS.</del> this was more or less coincidental </p>
<pre>[phycobank_production] 2018-09-06 17:38:26,835 WARN qtp1321530272-616 [net.sf.ehcache.config.CacheConfiguration] - Cache: eu.etaxonomy.cdm.vaadin.view.name.TaxonNameEditorPresenter436387578 has a maxElementsInMemory of 0. This might lead to performance degradation or OutOfMemoryError at Terracotta client.From Ehcache 2.0 onwards this has been changed to mean a store with no capacity limit. Set it to 1 if you want no elements cached in memory
[phycobank_production] 2018-09-06 17:38:26,976 WARN qtp1321530272-616 [net.sf.ehcache.config.CacheConfiguration] - Cache: cdmModelGetMethodsCache has a maxElementsInMemory of 0. This might lead to performance degradation or OutOfMemoryError at Terracotta client.From Ehcache 2.0 onwards this has been changed to mean a store with no capacity limit. Set it to 1 if you want no elements cached in memory
[phycobank_production] 2018-09-06 17:38:26,999 INFO qtp1321530272-616 [eu.etaxonomy.cdm.cache.CdmTransientEntityCacher] - Cdm Entity with id : 273 already exists in permanent cache. Ignoring put.
[phycobank_production] 2018-09-06 17:38:27,011 INFO qtp1321530272-616 [eu.etaxonomy.cdm.cache.CdmTransientEntityCacher] - Cdm Entity with id : 955 already exists in permanent cache. Ignoring put.
[phycobank_production] 2018-09-06 17:38:27,025 INFO qtp1321530272-616 [eu.etaxonomy.cdm.cache.CdmTransientEntityCacher] - Cdm Entity with id : 790 already exists in permanent cache. Ignoring put.
[phycobank_production] 2018-09-06 17:38:32,615 WARN qtp1321530272-617 [net.sf.ehcache.config.CacheConfiguration] - Cache: eu.etaxonomy.cdm.vaadin.view.reference.ReferenceEditorPresenter76780358 has a maxElementsInMemory of 0. This might lead to performance degradation or OutOfMemoryError at Terracotta client.From Ehcache 2.0 onwards this has been changed to mean a store with no capacity limit. Set it to 1 if you want no elements cached in memory
1
[phycobank_production] 2018-09-06 17:38:48,467 INFO qtp1321530272-617 [eu.etaxonomy.cdm.cache.CdmTransientEntityCacher] - Cdm Entity with id : 273 already exists in permanent cache. Ignoring put.
</pre> feature request #5848 (Closed): Problem with writing ehCache folder on network drive using UNC pa...https://dev.e-taxonomy.eu/redmine/issues/58482016-05-31T15:37:54ZPatrick Plitzner
<p>When a user has its home folder set to a network drive the creation of the data model fails (Right-click in data source view->Create data model)</p>
<p>The ehCache folder is set in <code>cdmlib-remote/src/main/resources/eu/etaxonomy/cdm/remote/ehcache.xml</code> it uses the java property <code>user.home</code> </p>
<pre><diskStore path="user.home/.cdm-server-ehcache" />
</pre>
<p>In contrast to that the .cdmLibrary is created correctly on the network drive.</p>
<p>When setting the <code>-Duser.home</code> parameter to a local path with write permission when launching the editor everything works fine.</p>
<p>see also <a class="issue tracker-5 status-7 priority-15 priority-high11 closed" title="feature request: Write permission error with temporary cdmserver echache dir (Duplicate)" href="https://dev.e-taxonomy.eu/redmine/issues/3580">#3580</a></p>
<p>Ben had this problem. see stack trace below</p>
<pre>org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'taxonOaiPmhController': Injection of autowired dependencies failed;
nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire method: public void eu.etaxonomy.cdm.remote.controller.oaipmh.AbstractOaiPmhController.setCacheProviderFacade(org.springmodules.cache.provider.CacheProviderFacade);
nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cacheProviderFacade' defined in class path resource [eu/etaxonomy/cdm/remote.xml]: Cannot resolve reference to bean 'cacheManager' while setting bean property 'cacheManager';
nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cacheManager' defined in class path resource [eu/etaxonomy/cdm/remote.xml]: Invocation of init method failed; nested exception is net.sf.ehcache.CacheException: Disk store path can't be created: \nwz.wwu.de\dfs\home\b\bstoe_01\.cdm-server-ehcache
</pre> feature request #3580 (Duplicate): Write permission error with temporary cdmserver echache dirhttps://dev.e-taxonomy.eu/redmine/issues/35802013-07-03T10:13:40ZCherian Mathew
<p>The setting for the ehcache found in ehcache.xml (<a href="http://dev.e-taxonomy.eu/trac/browser/trunk/cdmlib/cdmlib-remote/src/main/resources/eu/etaxonomy/cdm/remote/ehcache.xml">http://dev.e-taxonomy.eu/trac/browser/trunk/cdmlib/cdmlib-remote/src/main/resources/eu/etaxonomy/cdm/remote/ehcache.xml</a>) points to the os tmp folder. This cache folder is created whenever a spring configuration instance is launched and can cause problems when these configurations are running under different users. e.g.</p>
<ul>
<li><p>in the case of developers running the cdmserver (which launches the configuration for user 'cdm') and an instance of the Editor (which also tries to launch the configuration for the os user)</p></li>
<li><p>in the case of ulteo where multiple users are running Editors (each of which launch spring configurations trying to write to /tmp/cdm-server-ehcache)</p></li>
</ul>
<hr>
<p>potentially a duplicate of <a class="issue tracker-4 status-5 priority-10 priority-lowest closed" title="bug: ehcache diskStore conflict? (Closed)" href="https://dev.e-taxonomy.eu/redmine/issues/2939">#2939</a></p>
bug #2939 (Closed): ehcache diskStore conflict?https://dev.e-taxonomy.eu/redmine/issues/29392012-06-28T09:36:51ZAndreas Kohlbecker
<p>when running tests on the integration server where already a cdmserver instance is running write permission problems are reported regarding the ehcache diskStore, is this a conflict of multiple vm instances using the same disk store location?</p>
<pre>2016-12-19 15:38:09,969 WARN [net.sf.ehcache.DiskStorePathManager] - diskStorePath '/home/andreas/.cdm-server-ehcache' is already used by an existing CacheManager either in the same VM or in a different process.
The diskStore path for this CacheManager will be set to /home/andreas/.cdm-server-ehcache/ehcache_auto_created8966675037271472395diskstore.
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.
</pre>
<p>solution: use timestamp prefix for diskStore?</p>
<p>in /cdmlib-remote/src/main/resources/eu/etaxonomy/cdm/remote/ehcache.xml</p>
<pre><diskStore path="java.io.tmpdir/cdm-server-ehcache" />
</pre>
<p>should become something like</p>
<pre><diskStore path="java.io.tmpdir/cdm-server-ehcache/20120010298321730/" />
</pre>
<p>could this be achieved by using the <code>ehcache.disk.store.dir</code> property? setting it during app-context startup to a unique subfolder of /tmp/</p>
<p><strong>NOTE:</strong> there is a class <code>eu.etaxonomy.cdm.api.cache.CdmCacher</code> providing a static method <code>getDefaultCacheManager()</code></p>
<p>further reading: </p>
<ul>
<li><p><a href="http://ehcache.org/documentation/2.4/faq#why-cant-i-run-multiple-applications-using-ehcache-on-one-machine">http://ehcache.org/documentation/2.4/faq#why-cant-i-run-multiple-applications-using-ehcache-on-one-machine</a></p></li>
<li><p><a href="http://ehcache.org/ehcache.xml">http://ehcache.org/ehcache.xml</a></p></li>
<li><p><a href="http://ehcache.org/documentation/user-guide/storage-options#DiskStore">http://ehcache.org/documentation/user-guide/storage-options#DiskStore</a></p></li>
<li><p><a href="http://stackoverflow.com/questions/9985676/spring-wired-ehcache-disk-store-create-collision-in-multi-threaded-app">http://stackoverflow.com/questions/9985676/spring-wired-ehcache-disk-store-create-collision-in-multi-threaded-app</a></p></li>
</ul>
<hr>
<p>there is a new related ticket on the ehcache file store location: <a class="issue tracker-5 status-7 priority-15 priority-high11 closed" title="feature request: Write permission error with temporary cdmserver echache dir (Duplicate)" href="https://dev.e-taxonomy.eu/redmine/issues/3580">#3580</a> possibly a duplicate</p>
bug #1753 (Worksforme): error in server due to level2 cachehttps://dev.e-taxonomy.eu/redmine/issues/17532010-05-19T14:22:49ZAndreas Kohlbecker
<pre>
2010-05-19 16:16:23,986 INFO [eu.etaxonomy.cdm.api.application.CdmApplicationUtils] - Resource directory: /opt/cdmserver/.cdmLibrary/writableResources
2010-05-19 16:16:30,574 ERROR [net.sf.ehcache.Cache] - Unable to set localhost. This prevents creation of a GUID. Cause was: edit: edit
java.net.UnknownHostException: edit: edit
at java.net.InetAddress.getLocalHost(InetAddress.java:1353)
at net.sf.ehcache.Cache.<clinit>(Cache.java:95)
at net.sf.ehcache.config.ConfigurationHelper.createCache(ConfigurationHelper.java:291)
at net.sf.ehcache.config.ConfigurationHelper.createDefaultCache(ConfigurationHelper.java:241)
at net.sf.ehcache.CacheManager.configure(CacheManager.java:262)
at net.sf.ehcache.CacheManager.init(CacheManager.java:196)
at net.sf.ehcache.CacheManager.<init>(CacheManager.java:172)
at net.sf.ehcache.CacheManager.create(CacheManager.java:438)
at org.springframework.cache.ehcache.EhCacheManagerFactoryBean.afterPropertiesSet(EhCacheManagerFactoryBean.java:103)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1460)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1398)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:512)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1305)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1067)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:511)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:820)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:762)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:680)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredMethodElement.inject(AutowiredAnnotationBeanPostProcessor.java:556)
at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:280)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1055)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:511)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:557)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:842)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:416)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:261)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:192)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:645)
at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:189)
at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:978)
at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:586)
at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:349)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCollection.java:165)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:162)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:92)
at org.eclipse.jetty.server.Server.doStart(Server.java:228)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:55)
at eu.etaxonomy.cdm.server.Bootloader.main(Bootloader.java:329)
2010-05-19 16:16:31.782:INFO:/diptera:Initializing Spring FrameworkServlet 'cdmrest'
2010-05-19 16:16:33,286 INFO [eu.etaxonomy.cdm.remote.config.DataSourceConfig] - using jndi datasource 'jdbc/diptera'
2010-05-19 16:16:35.746:INFO:/cichorieae:Initializing Spring root WebApplicationContext
2010-05-19 16:16:40,402 INFO [eu.etaxonomy.cdm.remote.config.DataSourceConfig] - using jndi datasource 'jdbc/cichorieae'
2010-05-19 16:16:53,710 WARN [eu.etaxonomy.cdm.strategy.cache.name.BacterialNameDefaultCacheStrategy] - BacterialNameDefaultCacheStrategy not yet really implemented. Its just a copy from BotanicalNameDefaultCacheStrategy right now !!
2010-05-19 16:17:09,778 INFO [eu.etaxonomy.cdm.database.PersistentTermInitializer] - PersistentTermInitializer.omit == false, initializing 35 term classes
2010-05-19 16:17:21,830 INFO [eu.etaxonomy.cdm.api.application.CdmApplicationUtils] - Resource directory: /opt/cdmserver/.cdmLibrary/writableResources
</pre>