[jboss-jira] [JBoss JIRA] (AS7-3488) Make default-cache attribute of cache-container not required.
Richard Achmatowicz (JIRA)
jira-events at lists.jboss.org
Mon Mar 5 20:02:36 EST 2012
[ https://issues.jboss.org/browse/AS7-3488?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12673818#comment-12673818 ]
Richard Achmatowicz commented on AS7-3488:
------------------------------------------
Note to nmyself:
Looking at the code, if default-cache is not defined as a cache-container attribute, then (briefly):
- CacheContainerAdd will create an EmbeddedCacheManagerConfigurationService with a defaultCache value of null
- DefaultEmbeddedCacheManager, which is an AbstractDelegatingCacheManager, will have a defaultCache value of null
- when we call DefaultEmbeddedCacheManager.getCache(), rather than returning the cache corresponding to cache name defaultCache, it will return the cache corresponding to cache name null, which is __default.
Thus, leaving default-cache undefined may cause no exception to be thrown, but the application gets the DefaultCacheManager's default cache, which is __default. The settings for the default cache will have been specified in the <default> section of the cache manager configuration (as opposed to the <global> section.
So, if the subsystem does not set the default-cache for a cache container, it will get a default cache node the less - but perhaps not the one desired.
> Make default-cache attribute of cache-container not required.
> -------------------------------------------------------------
>
> Key: AS7-3488
> URL: https://issues.jboss.org/browse/AS7-3488
> Project: Application Server 7
> Issue Type: Feature Request
> Components: Domain Management
> Affects Versions: 7.1.0.CR1b
> Reporter: Richard Achmatowicz
> Assignee: Richard Achmatowicz
> Fix For: 7.1.2.Final
>
>
> Can we remove the restriction that default-cache must be set when you create the cache-container? That way, I can just make it so the UI
> forces them to set that value before calling the start operation. So under that covers, the console does this:
> {noformat}
> <!-- user creates a new cache container without specifying default-cache. -->
> /subsystem=infinispan/cache-container=X:add
> <!-- for top-level cache container attributes, user sets them via write-attribute -->
> /subsystem=infinispan/cache-container=X:write-attribute(name=jndi-name,value=W)
> <!-- for nested nested cache-container attributes, user access them as an addressable resource and sets them via write-attribute -->
> /subsystem=infinispan/cache-container=X/transport=TRANSPORT:write-attribute(name=stack, value=udp)
> /subsystem=infinispan/cache-container=X/transport=TRANSPORT:write-attribute(name=lock-timeout, value=100)
> <!-- When user is ready to start the cache-container, prompt for default-cache if not set. -->
> <!-- Then do these two as a batch -->
> /subsystem=infinispan/cache-container=X:write-attribute(name=default-cache, value=Y)
> /subsystem=infinispan/cache-container=X:start(mode=on-demand)
> {noformat}
> Any thoughts on this? The answer has great implications on the UI design.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list