I've raised this as a global issue across JBoss projects/products with the relevant
groups internally at JBoss, as I believe that we will hit this problem elsewhere.
I think a mapping document is a good first step. I'll raise this with Misha who is
providing docs support for EDG.
On 16 Sep 2011, at 07:55, Manik Surtani wrote:
Looks good, but one concern I have is that this config schema uses
different terms from what Infinispan uses and can lead to confusion. Pete, Tristan and I
were talking about converging EAP/EDG schemas for Infinispan with Infinispan's
upstream schemas at some point, but until then, perhaps a document mapping the equivalents
could be helpful for users trying to configure stuff.
On 15 Sep 2011, at 16:34, Paul Ferraro wrote:
> Hi all,
>
> In AS 7.0, only the those cache store implementations packaged in
> infinispan-core were usable by default. While the Infinispan subsystem
> schema allowed users to use any cache store implementation (via <store
> class="..."/>), they need to manually add the relevant jars to the
> org.infinispan module, and update the module.xml file accordingly so
> that the subsystem's module classloader is aware of these cache store
> classes.
>
> To simplify the use of other common cache store implementations, I'm in
> the process of working on the following jira, which aims to include the
> jdbc, remote, and cloud cache store jars in the org.infinispan module by
> default:
>
https://issues.jboss.org/browse/AS7-1713
>
> As well as including the relevant jars, we would also like to simplify
> their definition (like we did for <file-store/>, such that users don't
> need to specify class names, provide as many sensible defaults as
> possible, and take care of any required service dependencies.
>
> I've created a draft of what I thought could be workable schema for the
> remote and jdbc cache stores and would like some feedback.
>
> The amended Infinispan subsystem schema can be found here:
>
https://github.com/pferraro/jboss-as/blob/master/build/src/main/resources...
>
> For the jdbc cache stores, which come in 3 flavors, I've consolidated
> them into a single configuration element <jdbc-store/>, where the
> variant is implied the defined tables. After providing default values
> for all the required fields, we arrive at the following minimal
> configuration:
> e.g.
> <jdbc-store datasource="java:jboss/jdbc/somedatabase"/>
>
> I started with the assumption that the database resource will always
> come from an AS-managed DataSource.
>
> To use a string-based jdbc store, we specify the type of table to use:
> e.g.
>
> <jdbc-store datasource="java:jboss/jdbc/somedatabase">
> <entry-table/>
> </jdbc-store>
>
> Likewise, if we want to use a binary jdbc store:
> e.g.
> <jdbc-store datasource="java:jboss/jdbc/somedatabase">
> <bucket-table/>
> </jdbc-store>
>
> Using both <entry-table/> and <bucket-table/> (or neither) indicates the
> use of a mixed jdbc store.
>
> The tables themselves are fully customizable (shown with their default
> values):
> e.g.
> <jdbc-store datasource="java:jboss/jdbc/somedatabase">
> <bucket-table prefix="ispn_bucket" batch-size="100"
fetch-size="100">
> <id-column name="id" type="VARCHAR"/>
> <data-column name="datum" type="BINARY"/>
> <timestamp-column name="version" type="BIGINT"/>
> </bucket-table>
> <entry-table prefix="ispn_entry" batch-size="100"
fetch-size="100">
> <id-column name="id" type="VARCHAR"/>
> <data-column name="datum" type="BINARY"/>
> <timestamp-column name="version" type="BIGINT"/>
> </entry-table>
> </jdbc-store>
>
>
> The schema for the remote cache store is far simpler. You can specify a
> specific remote cache name, server list, and hot rod client properties
> are directly enumerated:
> e.g.
> <remote-store cache="some-named-cache"
servers="127.0.0.1:11311">
> <property
name="infinispan.client.hotrod.request_balancing_strategy">...</property>
> </remote-store>
>
> If the cache attribute is omitted, we assume the default cache is to be
> used.
>
> Unfortunately, there doesn't seem to be a way to integrate the thread
> pools used by RemoteCache/RemoteCacheManager with the AS7 threading
> subsystem. In order to do this, RemoteCacheStoreConfig would need
> methods for providing ExecutorFactory implementations, similar to the
> way GlobalConfiguration works.
>
> I haven't started on the cloud-based store yet, as it's kind of a
> dependency nightmare.
>
> Thoughts?
>
> Paul
>
> _______________________________________________
> infinispan-dev mailing list
> infinispan-dev(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/infinispan-dev
--
Manik Surtani
manik(a)jboss.org
twitter.com/maniksurtani
Lead, Infinispan
http://www.infinispan.org
_______________________________________________
infinispan-dev mailing list
infinispan-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev