You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ibatis.apache.org by "Carl Allain (JIRA)" <ib...@incubator.apache.org> on 2008/12/16 00:05:44 UTC
[jira] Created: (IBATIS-564) Properties from a CacheModel
definition are set for the next CacheModel definition
Properties from a CacheModel definition are set for the next CacheModel definition
----------------------------------------------------------------------------------
Key: IBATIS-564
URL: https://issues.apache.org/jira/browse/IBATIS-564
Project: iBatis for Java
Issue Type: Bug
Components: SQL Maps
Affects Versions: 2.3.2
Environment: Windows
Reporter: Carl Allain
Priority: Minor
I use my own CacheController implementation
If I have this:
<cacheModel id="cacheModel1" readOnly="true" serialize="false" type="MyAdvancedCacheController">
<flushInterval hours="24" />
<property name="myProperty1" value="myPropertyValue1-1" />
<property name="myProperty2" value="myPropertyValue2-1" />
</cacheModel>
<cacheModel id="cacheModel2" readOnly="true" serialize="false" type="MyAdvancedCacheController">
<flushInterval hours="24" />
<property name="myProperty1" value="myPropertyValue1-3" />
</cacheModel>
MyCacheController.setProperties(Properties props) is called with
myProperty1=myPropertyValue1-1
myProperty2=myPropertyValue2-1
for the 1st MyAdvancedCacheController instance created for cacheModel1
BUT
MyCacheController.setProperties(Properties props) is called with
myProperty1=myPropertyValue1-1
myProperty2=myPropertyValue2-1
for the 2nd MyAdvancedCacheController instance created for cacheModel2!!!
Of course, I don't expect myProperty2=myPropertyValue2-1 to be applied to the 2nd MyAdvancedCacheController instance.
The workaround is to set a dummy property myProperty2 with a no-op value (ex: an empty string value) on the second CacheModel definition and handle it as a null in our CacheController instance.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (IBATIS-564) Properties from a CacheModel
definition are set for the next CacheModel definition
Posted by "Carl Allain (JIRA)" <ib...@incubator.apache.org>.
[ https://issues.apache.org/jira/browse/IBATIS-564?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12656791#action_12656791 ]
Carl Allain commented on IBATIS-564:
------------------------------------
The bug applies withing a single SqlMap config file. Properties from one CacheModel does not carry over definitions in distinct SqlMaps.
> Properties from a CacheModel definition are set for the next CacheModel definition
> ----------------------------------------------------------------------------------
>
> Key: IBATIS-564
> URL: https://issues.apache.org/jira/browse/IBATIS-564
> Project: iBatis for Java
> Issue Type: Bug
> Components: SQL Maps
> Affects Versions: 2.3.2
> Environment: Windows
> Reporter: Carl Allain
> Priority: Minor
>
> I use my own CacheController implementation
> If I have this:
> <cacheModel id="cacheModel1" readOnly="true" serialize="false" type="MyAdvancedCacheController">
> <flushInterval hours="24" />
> <property name="myProperty1" value="myPropertyValue1-1" />
> <property name="myProperty2" value="myPropertyValue2-1" />
> </cacheModel>
> <cacheModel id="cacheModel2" readOnly="true" serialize="false" type="MyAdvancedCacheController">
> <flushInterval hours="24" />
> <property name="myProperty1" value="myPropertyValue1-3" />
> </cacheModel>
> MyCacheController.setProperties(Properties props) is called with
> myProperty1=myPropertyValue1-1
> myProperty2=myPropertyValue2-1
> for the 1st MyAdvancedCacheController instance created for cacheModel1
> BUT
> MyCacheController.setProperties(Properties props) is called with
> myProperty1=myPropertyValue1-1
> myProperty2=myPropertyValue2-1
> for the 2nd MyAdvancedCacheController instance created for cacheModel2!!!
> Of course, I don't expect myProperty2=myPropertyValue2-1 to be applied to the 2nd MyAdvancedCacheController instance.
> The workaround is to set a dummy property myProperty2 with a no-op value (ex: an empty string value) on the second CacheModel definition and handle it as a null in our CacheController instance.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.