]
Paul Ferraro moved JBEAP-11153 to WFLY-8844:
--------------------------------------------
Project: WildFly (was: JBoss Enterprise Application Platform)
Key: WFLY-8844 (was: JBEAP-11153)
Workflow: GIT Pull Request workflow (was: CDW with loose statuses v1)
Component/s: Clustering
(was: Clustering)
Affects Version/s: 11.0.0.Alpha1
(was: 7.1.0.DR18)
Wrong eviction strategy used when using local-cache
---------------------------------------------------
Key: WFLY-8844
URL:
https://issues.jboss.org/browse/WFLY-8844
Project: WildFly
Issue Type: Bug
Components: Clustering
Affects Versions: 11.0.0.Alpha1
Reporter: Paul Ferraro
Assignee: Paul Ferraro
When following the steps to reproduce for JBEAP-10582, I configured "ejb"
cache-container in standalone-ha.xml this way:
{code:xml}
<cache-container name="ejb" aliases="sfsb"
default-cache="passivation"
module="org.wildfly.clustering.ejb.infinispan">
<local-cache name="passivation">
<locking isolation="REPEATABLE_READ"/>
<transaction mode="BATCH"/>
<eviction strategy="LRU" max-entries="100"/>
<expiration max-idle="30000"/>
<file-store passivation="true" purge="false"/>
</local-cache>
</cache-container>
{code}
Then I started EAP (with ejb application deployed) and got this error message:
{code}
12:03:11,997 INFO [org.jboss.as.ejb3.deployment] (MSC service thread 1-6) WFLYEJB0473:
JNDI bindings for session bean named 'HelloBean' in deployment unit
'deployment "server.jar"' are as follows:
java:global/server/HelloBean!ejb.HelloBeanRemote
java:app/server/HelloBean!ejb.HelloBeanRemote
java:module/HelloBean!ejb.HelloBeanRemote
java:jboss/exported/server/HelloBean!ejb.HelloBeanRemote
java:global/server/HelloBean
java:app/server/HelloBean
java:module/HelloBean
12:03:12,089 INFO [org.jboss.weld.Version] (MSC service thread 1-6) WELD-000900: 2.4.3
(redhat)
12:03:12,167 WARN [org.wildfly.clustering.ejb.infinispan] (MSC service thread 1-5)
WFLYCLEJBINF0010: Disabling expiration from
org.wildfly.clustering.infinispan.default-cache-configuration.ejb. SFSB expiration should
be configured per ยง4.3.11 of the EJB specification.
12:03:12,167 WARN [org.wildfly.clustering.ejb.infinispan] (MSC service thread 1-5)
WFLYCLEJBINF0009: Disabling eviction from
org.wildfly.clustering.infinispan.default-cache-configuration.ejb. SFSB passivation
should be configured via the associated EJB subsytem passivation-store.
12:03:12,325 INFO [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 68)
WFLYCLINF0002: Started client-mappings cache from ejb container
12:03:12,374 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 68)
MSC000001: Failed to start service org.wildfly.clustering.infinispan.cache.ejb.server.jar:
org.jboss.msc.service.StartException in service
org.wildfly.clustering.infinispan.cache.ejb.server.jar:
org.infinispan.commons.CacheConfigurationException: Unknown eviction strategy MANUAL
at
org.wildfly.clustering.service.FunctionalValueService.start(FunctionalValueService.java:70)
at
org.wildfly.clustering.service.AsynchronousServiceBuilder.lambda$start$0(AsynchronousServiceBuilder.java:99)
at
org.wildfly.clustering.service.AsynchronousServiceBuilder$$Lambda$578/785687163.run(Unknown
Source)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
at org.jboss.threads.JBossThread.run(JBossThread.java:320)
Caused by: org.infinispan.commons.CacheConfigurationException: Unknown eviction strategy
MANUAL
at
org.infinispan.factories.DataContainerFactory.construct(DataContainerFactory.java:74)
at
org.infinispan.factories.AbstractComponentRegistry.getOrCreateComponent(AbstractComponentRegistry.java:297)
at
org.infinispan.factories.ComponentRegistry.getOrCreateComponent(ComponentRegistry.java:156)
at
org.infinispan.factories.AbstractComponentRegistry.invokeInjectionMethod(AbstractComponentRegistry.java:246)
at
org.infinispan.factories.AbstractComponentRegistry.access$000(AbstractComponentRegistry.java:71)
at
org.infinispan.factories.AbstractComponentRegistry$Component.injectDependencies(AbstractComponentRegistry.java:787)
at
org.infinispan.factories.AbstractComponentRegistry.registerComponentInternal(AbstractComponentRegistry.java:219)
at
org.infinispan.factories.ComponentRegistry.registerComponentInternal(ComponentRegistry.java:193)
at
org.infinispan.factories.AbstractComponentRegistry.registerComponent(AbstractComponentRegistry.java:171)
at
org.infinispan.factories.AbstractComponentRegistry.getOrCreateComponent(AbstractComponentRegistry.java:300)
at
org.infinispan.factories.ComponentRegistry.getOrCreateComponent(ComponentRegistry.java:156)
at
org.infinispan.factories.AbstractComponentRegistry.invokeInjectionMethod(AbstractComponentRegistry.java:246)
at
org.infinispan.factories.AbstractComponentRegistry.access$000(AbstractComponentRegistry.java:71)
at
org.infinispan.factories.AbstractComponentRegistry$Component.injectDependencies(AbstractComponentRegistry.java:787)
at
org.infinispan.factories.AbstractComponentRegistry.registerComponentInternal(AbstractComponentRegistry.java:219)
at
org.infinispan.factories.ComponentRegistry.registerComponentInternal(ComponentRegistry.java:193)
at
org.infinispan.factories.AbstractComponentRegistry.registerComponent(AbstractComponentRegistry.java:171)
at
org.infinispan.factories.AbstractComponentRegistry.getOrCreateComponent(AbstractComponentRegistry.java:300)
at
org.infinispan.factories.ComponentRegistry.getOrCreateComponent(ComponentRegistry.java:156)
at
org.infinispan.factories.AbstractComponentRegistry.invokeInjectionMethod(AbstractComponentRegistry.java:246)
at
org.infinispan.factories.AbstractComponentRegistry.access$000(AbstractComponentRegistry.java:71)
at
org.infinispan.factories.AbstractComponentRegistry$Component.injectDependencies(AbstractComponentRegistry.java:787)
at
org.infinispan.factories.AbstractComponentRegistry.registerComponentInternal(AbstractComponentRegistry.java:219)
at
org.infinispan.factories.ComponentRegistry.registerComponentInternal(ComponentRegistry.java:193)
at
org.infinispan.factories.AbstractComponentRegistry.registerComponent(AbstractComponentRegistry.java:171)
at
org.infinispan.factories.AbstractComponentRegistry.getOrCreateComponent(AbstractComponentRegistry.java:300)
at
org.infinispan.factories.ComponentRegistry.getOrCreateComponent(ComponentRegistry.java:156)
at
org.infinispan.factories.AbstractComponentRegistry.invokeInjectionMethod(AbstractComponentRegistry.java:246)
at
org.infinispan.factories.AbstractComponentRegistry.access$000(AbstractComponentRegistry.java:71)
at
org.infinispan.factories.AbstractComponentRegistry$Component.injectDependencies(AbstractComponentRegistry.java:787)
at
org.infinispan.factories.AbstractComponentRegistry.registerComponentInternal(AbstractComponentRegistry.java:219)
at
org.infinispan.factories.ComponentRegistry.registerComponentInternal(ComponentRegistry.java:193)
at
org.infinispan.factories.AbstractComponentRegistry.registerComponent(AbstractComponentRegistry.java:171)
at
org.infinispan.factories.InternalCacheFactory.bootstrap(InternalCacheFactory.java:132)
at
org.infinispan.factories.InternalCacheFactory.createAndWire(InternalCacheFactory.java:73)
at
org.infinispan.factories.InternalCacheFactory.createCache(InternalCacheFactory.java:56)
at
org.infinispan.manager.DefaultCacheManager.wireAndStartCache(DefaultCacheManager.java:625)
at
org.infinispan.manager.DefaultCacheManager.createCache(DefaultCacheManager.java:585)
at
org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:451)
at
org.jboss.as.clustering.infinispan.DefaultCacheContainer.getCache(DefaultCacheContainer.java:108)
at
org.jboss.as.clustering.infinispan.DefaultCacheContainer.getCache(DefaultCacheContainer.java:103)
at
org.wildfly.clustering.infinispan.spi.service.CacheBuilder.lambda$build$0(CacheBuilder.java:83)
at
org.wildfly.clustering.infinispan.spi.service.CacheBuilder$$Lambda$672/643844604.get(Unknown
Source)
at
org.wildfly.clustering.service.SuppliedValueService.lambda$new$0(SuppliedValueService.java:42)
at
org.wildfly.clustering.service.SuppliedValueService$$Lambda$605/94666937.apply(Unknown
Source)
at
org.wildfly.clustering.service.FunctionalValueService.start(FunctionalValueService.java:68)
... 6 more
12:03:12,592 ERROR [org.jboss.as.controller.management-operation] (Controller Boot
Thread) WFLYCTL0013: Operation ("deploy") failed - address:
([("deployment" => "server.jar")]) - failure description:
{"WFLYCTL0080: Failed services" =>
{"org.wildfly.clustering.infinispan.cache.ejb.server.jar" =>
"org.infinispan.commons.CacheConfigurationException: Unknown eviction strategy
MANUAL
Caused by: org.infinispan.commons.CacheConfigurationException: Unknown eviction
strategy MANUAL"}}
{code}
I think this WARN message is important (and the fact that MANUAL eviction is then used
which results in the above mentioned error):
{code}
12:03:12,167 WARN [org.wildfly.clustering.ejb.infinispan] (MSC service thread 1-5)
WFLYCLEJBINF0009: Disabling eviction from
org.wildfly.clustering.infinispan.default-cache-configuration.ejb. SFSB passivation
should be configured via the associated EJB subsytem passivation-store.
{code}