[infinispan-issues] [JBoss JIRA] (ISPN-11642) Remote JCacheManager doesn't apply configuration from URI

Nathan Mittlestat (Jira) issues at jboss.org
Tue May 19 10:50:31 EDT 2020


    [ https://issues.redhat.com/browse/ISPN-11642?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14105238#comment-14105238 ] 

Nathan Mittlestat commented on ISPN-11642:
------------------------------------------

Hi Tristan.  Thanks for the update.  To follow up, is there a plan to support cache names with "." in them?  Also, can we apply a generic template as the example shows or globally to all caches created through a hotrod client?  i.e. `<replicated-cache-configuration name="com.myproject.*"/>`.

Finally, our use case involves creating/deleting caches as applications are deployed/undeployed.  Can we dynamically update a CacheManager's vendorProperties?  Or would we be required to create a new CacheManager every time we want to add a new cache?  We don't know what caches will be created at the time the CacheManager is initialized.  That is why we have been trying to apply config like this:

```xml
<infinispan>
 <cache-container>
  <replicated-cache-configuration name="com.myproject.*"/>
 </cache-container>
</infinispan>
```

Thank you for your help as always.

> Remote JCacheManager doesn't apply configuration from URI
> ---------------------------------------------------------
>
>                 Key: ISPN-11642
>                 URL: https://issues.redhat.com/browse/ISPN-11642
>             Project: Infinispan
>          Issue Type: Bug
>          Components: Remote Protocols
>    Affects Versions: 10.1.6.Final
>            Reporter: Nathan Mittlestat
>            Assignee: Tristan Tarrant
>            Priority: Major
>             Fix For: 10.1.7.Final, 11.0.0.Dev05
>
>
> Our project is using JCache API's backed by Infinspan.  This is a client-server scenario where we are configuring the Hot Rod Java Client to connect to an Infinispan server.
> We are using _javax.cache.spi.CachingProvider.getCacheManager(URI, ClassLoader, Properties)_ to obtain a _CacheManager_.  The URI passed points to an infinispan XML that specifies replicated-cache-configuration as part of the configuration.  However the cache created from _CacheManager.createCache()_ ends up being a local cache.  This proves to be a problem when connecting to a cluster of Infinispan servers, as when other connections attempt to utilize the cached data, they connect to a different Infinispn sever that doesn't have the cached data. We have verified the XML file pointed to by the URI is on the ClassLoader passed to the _CacheManager_, and still see the same results.
> When we attempt this same scenario using embedded mode instead of client server mode, the configuration in the URI is applied correctly.  We have even been able to create a cluster of embedded Infinispan servers via JGroups and confirmed the caches are replicated and not local.
> We have also attempted this scenario using Infinispan's proprietary APIs:
> _RemoteCacheManager.administration().getOrCreateCache(String name, BasicConfiguration configuration)_
> The configuration object passed to _RemoteCacheManagerAdmin.getOrCreateCache()_ loads the same Infinispan XML configuration used in the failing remote JCache scenario (as a _XMlStringConfiguration_ object).



--
This message was sent by Atlassian Jira
(v7.13.8#713008)


More information about the infinispan-issues mailing list