On Thu, 2011-09-01 at 13:12 +0200, Galder ZamarreƱo wrote:
Hey Paul,
As shown by Martin in
https://issues.jboss.org/browse/JBPAPP-6718 , it's clear that
the AS7 Infinispan subsystem is not yet ready to read configurations for stores other than
the FileCacheStore, so I'd assume we'd need to create a new JIRA on AS7 to deal
with configuration of:
- JDBCCacheStore
- RemoteCacheStore
- CloudCacheStore
As I mentioned in the jira, all EDG needs to do to support these is add
the appopriate dependencies to the org.jboss.as.infinispan's module.xml.
Looking at what you've done for the FCS, you seem to enable
different type of configs, i.e.
<file-store fetch-state="false" passivation="false"
path="path" preload="true" purge="false"
relative-to="jboss.server.temp.dir" shared="true"
singleton="true"/>
vs
<store class="org.infinispan.loaders.file.FileCacheStore"
fetch-state="true" passivation="true" preload="false"
purge="true" shared="false" singleton="false">
<property name="location">${java.io.tmpdir}</property>
</store>
I suspect the idea is to lean towards more strictly typed configurations as shown in 1st
example?
There few a couple motivations at play here:
The first was to comply with the AS7 configuration schema requirements,
such that users should not need to define class names in the
configuration file, unless referring to their own classes, or for less
common use cases.
This could have been achieved by enumerating the supported stores:
e.g.
<store type="file"/>
<store type="jdbc"/>
or via separate elements:
<file-store/>
<jdbc-store/>
The motivation for going with the separate element approach was to make
the supported cache store properties explicit, such that some properties
could explicitly reference other subsystems. For example, <file-store>
leverage the paths subsystem (e.g. via the relative-to and path
attributes) for defining the file system location - the advantage of
which is the ability to manage paths from the cli/console.
Several of these cache stores will also want to reference other AS
services, e.g. JDBC cache store will want to reference a JCA data
source.
That said, for AS 7.1, I think we should figure out which cache stores
constitute common use cases, expand the infinispan schema to support
them, and fully document how one would go about using an adhoc cache
store implementation.
Also, doing this would probably mean that these cache store jars and
their dependencies make it to AS7, right?
Correct.
Did you have any other plans for this? Or maybe you have other jiras
already for this?
I don't believe one exists yet. I'll create the relevant AS7 jiras for
these today.
Cheers,
--
Galder ZamarreƱo
Sr. Software Engineer
Infinispan, JBoss Cache