]
Sebastian Łaskawiec updated ISPN-3125:
--------------------------------------
Status: Pull Request Sent (was: Pull Request Sent)
Git Pull Request:
SpringEmbeddedCacheManagerFactoryBean does not allow overrides when
referencing config
--------------------------------------------------------------------------------------
Key: ISPN-3125
URL:
https://issues.jboss.org/browse/ISPN-3125
Project: Infinispan
Issue Type: Bug
Components: Spring Integration
Affects Versions: 5.3.0.Beta2
Reporter: Mike Noordermeer
Assignee: Sebastian Łaskawiec
Priority: Minor
The SpringEmbeddedCacheManager contains the following comment:
bq. A user may further customize the SpringEmbeddedCacheManager's configuration using
explicit setters on this FactoryBean. The properties thus defined will be applied either
to the configuration loaded from Infinispan's configuration file in case one has been
specified, or to a configuration initialized with Infinispan's default settings.
Either way, the net effect is that explicitly set configuration properties take precedence
over both those loaded from a configuration file as well as INFNISPAN's default
settings.
In this current version, setting a configfile + overriding properties does not seem to be
possible. This can also be seen in
{{AbstractEmbeddedCacheManagerFactory.createBackingEmbeddedCacheManager()}}, where the
overrides are only applied iff {{configurationFileLocation == null}}.
I made a little workaround to fix this issue, but it's a mess because the
{{DefaultCacheManager}} does not seem to allow overriding values if it gets its config
from an InputStream. The workaround is available at
https://gist.github.com/MikeN123/5618297
It seems the same issue exists in {{InfinispanNamedEmbeddedCacheFactoryBean}}, there
configuration overrides don't seem to be applied if {{configurationTemplateMode ==
DEFAULT}}, or {{configurationTemplateMode == NAMED}}, whereas the documentation says that
should work.