[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 edited comment on AS7-3488 at 3/5/12 8:02 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 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 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