[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:51: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 edited comment on AS7-3488 at 3/5/12 8:50 PM:
------------------------------------------------------------------
Note to myself:
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 will correspond to the default cache of DefaultCacheManager, 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 none the less - but perhaps not the one desired.
was (Author: rachmato):
Note to myself:
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 none 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