You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Karl Klinge (Created) (JIRA)" <ji...@apache.org> on 2012/02/22 16:59:48 UTC
[jira] [Created] (JCS-92) On shutdown .key (empty during runtime)
not written and .data (not empty during runtime) deleted
On shutdown .key (empty during runtime) not written and .data (not empty during runtime) deleted
------------------------------------------------------------------------------------------------
Key: JCS-92
URL: https://issues.apache.org/jira/browse/JCS-92
Project: Commons JCS
Issue Type: Bug
Components: Composite Cache
Affects Versions: jcs-1.3
Environment: win 7x64; jvm 1.6
Reporter: Karl Klinge
On shutdown .key (which is empty during runtime) is not written from memory and .data (not empty during runtime) is deleted.
cache ccf:
#####################################################
############## Default Region Configuration
jcs.default=DC2
jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.default.cacheattributes.MaxObjects=50
jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
#####################################################
############## CACHE REGIONS
jcs.region.sac=DC2
jcs.region.sac.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.sac.cacheattributes.MaxObjects=10
jcs.region.sac.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.sac.elementattributes.IsEternal=true
##jcs.region.sac.elementattributes.MaxLifeSeconds=172800 ## 2 Tage
jcs.region.sac.cacheattributes.DiskUsagePatternName=UPDATE
####################################################
############### AUXILIARY CACHES
# Indexed Disk Cache
jcs.auxiliary.DC2=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheFactory
jcs.auxiliary.DC2.attributes=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes
jcs.auxiliary.DC2.attributes.DiskPath=c:/cache/status
jcs.auxiliary.DC2.attributes.MaxPurgatorySize=1000
jcs.auxiliary.DC2.attributes.MaxKeySize=100000
jcs.auxiliary.DC2.attributes.OptimizeAtRemoveCount=30000
jcs.auxiliary.DC2.attributes.OptimizeOnShutdown=true
jcs.auxiliary.DC2.attributes.MaxRecycleBinSize=1000
Object to write to cache:
key: string
value (all used classes in import implement Serializable):
>>>>>>
package de.spektra.rtd.sdb.condition;
import de.spektra.rtd.model.event.Event;
import de.spektra.rtd.model.event.StatusAlarmCondition;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
/**
*
* @author Klinge
*/
public class DistrictConditions implements Serializable{
//private static final java.util.logging.Logger logger = Logger.getLogger("DistrictCondition");
private Map<String, DistrictObjectTypeConditions> objectTypesConditions;
public DistrictConditions() {
this.objectTypesConditions = new HashMap<String, DistrictObjectTypeConditions>();
}
public ObjectCondition setEvent(Event event) {
String objectType = event.getIdentification().getObjectType();
DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
if (objectTypeConditions == null) {
objectTypeConditions = new DistrictObjectTypeConditions();
this.objectTypesConditions.put(objectType, objectTypeConditions);
}
return objectTypeConditions.setEvent(event);
}
public ObjectCondition getObjectCondtion(String objectType, String identification) {
DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
//logger.log(Level.INFO, "objectTypeConditions: {0}", objectTypeConditions);
return objectTypeConditions.getObjectCondition(identification);
}
public Collection<ObjectCondition> getObjectConditions(Collection<String> objectTypes) {
ArrayList<ObjectCondition> objectConditions = new ArrayList<ObjectCondition>();
for (String objectType: objectTypes) {
DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
if (objectTypeConditions!=null) {
objectConditions.addAll(objectTypeConditions.getObjectConditions());
}
}
return objectConditions;
}
public StatusAlarmCondition getCurrentStatusAlarmCondtition(String objectType, String identification) {
DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
return objectTypeConditions.getCurrentStatusAlarmCondition(identification);
}
public Collection<StatusAlarmCondition> getCurrentStatusAlarmCondtitions(Collection<String> objectTypes) {
ArrayList<StatusAlarmCondition> statusAlarmConditions = new ArrayList<StatusAlarmCondition>();
for (String objectType: objectTypes) {
DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
if (objectTypeConditions!=null) {
statusAlarmConditions.addAll(objectTypeConditions.getCurrentStatusAlarmConditions());
}
}
return statusAlarmConditions;
}
}
<<<<<<<<
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (JCS-92) On shutdown .key (empty during runtime)
not written and .data (not empty during runtime) deleted
Posted by "Thomas Vandahl (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/JCS-92?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13228383#comment-13228383 ]
Thomas Vandahl commented on JCS-92:
-----------------------------------
Did you do a
CompositeCacheManager.getInstance().shutDown();
?
> On shutdown .key (empty during runtime) not written and .data (not empty during runtime) deleted
> ------------------------------------------------------------------------------------------------
>
> Key: JCS-92
> URL: https://issues.apache.org/jira/browse/JCS-92
> Project: Commons JCS
> Issue Type: Bug
> Components: Composite Cache
> Affects Versions: jcs-1.3
> Environment: win 7x64; jvm 1.6
> Reporter: Karl Klinge
>
> On shutdown .key (which is empty during runtime) is not written from memory and .data (not empty during runtime) is deleted.
> cache ccf:
> #####################################################
> ############## Default Region Configuration
> jcs.default=DC2
> jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
> jcs.default.cacheattributes.MaxObjects=50
> jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
> #####################################################
> ############## CACHE REGIONS
> jcs.region.sac=DC2
> jcs.region.sac.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
> jcs.region.sac.cacheattributes.MaxObjects=10
> jcs.region.sac.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
> jcs.region.sac.elementattributes.IsEternal=true
> ##jcs.region.sac.elementattributes.MaxLifeSeconds=172800 ## 2 Tage
> jcs.region.sac.cacheattributes.DiskUsagePatternName=UPDATE
> ####################################################
> ############### AUXILIARY CACHES
> # Indexed Disk Cache
> jcs.auxiliary.DC2=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheFactory
> jcs.auxiliary.DC2.attributes=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes
> jcs.auxiliary.DC2.attributes.DiskPath=c:/cache/status
> jcs.auxiliary.DC2.attributes.MaxPurgatorySize=1000
> jcs.auxiliary.DC2.attributes.MaxKeySize=100000
> jcs.auxiliary.DC2.attributes.OptimizeAtRemoveCount=30000
> jcs.auxiliary.DC2.attributes.OptimizeOnShutdown=true
> jcs.auxiliary.DC2.attributes.MaxRecycleBinSize=1000
> Object to write to cache:
> key: string
> value (all used classes in import implement Serializable):
> >>>>>>
> package de.spektra.rtd.sdb.condition;
> import de.spektra.rtd.model.event.Event;
> import de.spektra.rtd.model.event.StatusAlarmCondition;
> import java.io.Serializable;
> import java.util.ArrayList;
> import java.util.Collection;
> import java.util.HashMap;
> import java.util.Map;
> /**
> *
> * @author Klinge
> */
> public class DistrictConditions implements Serializable{
>
> //private static final java.util.logging.Logger logger = Logger.getLogger("DistrictCondition");
>
> private Map<String, DistrictObjectTypeConditions> objectTypesConditions;
>
> public DistrictConditions() {
> this.objectTypesConditions = new HashMap<String, DistrictObjectTypeConditions>();
> }
>
> public ObjectCondition setEvent(Event event) {
> String objectType = event.getIdentification().getObjectType();
> DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
> if (objectTypeConditions == null) {
> objectTypeConditions = new DistrictObjectTypeConditions();
> this.objectTypesConditions.put(objectType, objectTypeConditions);
> }
> return objectTypeConditions.setEvent(event);
> }
>
>
>
> public ObjectCondition getObjectCondtion(String objectType, String identification) {
> DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
> //logger.log(Level.INFO, "objectTypeConditions: {0}", objectTypeConditions);
> return objectTypeConditions.getObjectCondition(identification);
> }
>
> public Collection<ObjectCondition> getObjectConditions(Collection<String> objectTypes) {
> ArrayList<ObjectCondition> objectConditions = new ArrayList<ObjectCondition>();
> for (String objectType: objectTypes) {
> DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
> if (objectTypeConditions!=null) {
> objectConditions.addAll(objectTypeConditions.getObjectConditions());
> }
> }
> return objectConditions;
> }
>
> public StatusAlarmCondition getCurrentStatusAlarmCondtition(String objectType, String identification) {
> DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
> return objectTypeConditions.getCurrentStatusAlarmCondition(identification);
> }
>
> public Collection<StatusAlarmCondition> getCurrentStatusAlarmCondtitions(Collection<String> objectTypes) {
> ArrayList<StatusAlarmCondition> statusAlarmConditions = new ArrayList<StatusAlarmCondition>();
> for (String objectType: objectTypes) {
> DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
> if (objectTypeConditions!=null) {
> statusAlarmConditions.addAll(objectTypeConditions.getCurrentStatusAlarmConditions());
> }
> }
> return statusAlarmConditions;
> }
>
> }
> <<<<<<<<
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Resolved] (JCS-92) On shutdown .key (empty during runtime)
not written and .data (not empty during runtime) deleted
Posted by "Thomas Vandahl (Resolved) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/JCS-92?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Thomas Vandahl resolved JCS-92.
-------------------------------
Resolution: Cannot Reproduce
Fix Version/s: jcs-1.3
This feature normally works if the cache is shut down properly.
> On shutdown .key (empty during runtime) not written and .data (not empty during runtime) deleted
> ------------------------------------------------------------------------------------------------
>
> Key: JCS-92
> URL: https://issues.apache.org/jira/browse/JCS-92
> Project: Commons JCS
> Issue Type: Bug
> Components: Composite Cache
> Affects Versions: jcs-1.3
> Environment: win 7x64; jvm 1.6
> Reporter: Karl Klinge
> Fix For: jcs-1.3
>
>
> On shutdown .key (which is empty during runtime) is not written from memory and .data (not empty during runtime) is deleted.
> cache ccf:
> #####################################################
> ############## Default Region Configuration
> jcs.default=DC2
> jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
> jcs.default.cacheattributes.MaxObjects=50
> jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
> #####################################################
> ############## CACHE REGIONS
> jcs.region.sac=DC2
> jcs.region.sac.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
> jcs.region.sac.cacheattributes.MaxObjects=10
> jcs.region.sac.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
> jcs.region.sac.elementattributes.IsEternal=true
> ##jcs.region.sac.elementattributes.MaxLifeSeconds=172800 ## 2 Tage
> jcs.region.sac.cacheattributes.DiskUsagePatternName=UPDATE
> ####################################################
> ############### AUXILIARY CACHES
> # Indexed Disk Cache
> jcs.auxiliary.DC2=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheFactory
> jcs.auxiliary.DC2.attributes=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes
> jcs.auxiliary.DC2.attributes.DiskPath=c:/cache/status
> jcs.auxiliary.DC2.attributes.MaxPurgatorySize=1000
> jcs.auxiliary.DC2.attributes.MaxKeySize=100000
> jcs.auxiliary.DC2.attributes.OptimizeAtRemoveCount=30000
> jcs.auxiliary.DC2.attributes.OptimizeOnShutdown=true
> jcs.auxiliary.DC2.attributes.MaxRecycleBinSize=1000
> Object to write to cache:
> key: string
> value (all used classes in import implement Serializable):
> >>>>>>
> package de.spektra.rtd.sdb.condition;
> import de.spektra.rtd.model.event.Event;
> import de.spektra.rtd.model.event.StatusAlarmCondition;
> import java.io.Serializable;
> import java.util.ArrayList;
> import java.util.Collection;
> import java.util.HashMap;
> import java.util.Map;
> /**
> *
> * @author Klinge
> */
> public class DistrictConditions implements Serializable{
>
> //private static final java.util.logging.Logger logger = Logger.getLogger("DistrictCondition");
>
> private Map<String, DistrictObjectTypeConditions> objectTypesConditions;
>
> public DistrictConditions() {
> this.objectTypesConditions = new HashMap<String, DistrictObjectTypeConditions>();
> }
>
> public ObjectCondition setEvent(Event event) {
> String objectType = event.getIdentification().getObjectType();
> DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
> if (objectTypeConditions == null) {
> objectTypeConditions = new DistrictObjectTypeConditions();
> this.objectTypesConditions.put(objectType, objectTypeConditions);
> }
> return objectTypeConditions.setEvent(event);
> }
>
>
>
> public ObjectCondition getObjectCondtion(String objectType, String identification) {
> DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
> //logger.log(Level.INFO, "objectTypeConditions: {0}", objectTypeConditions);
> return objectTypeConditions.getObjectCondition(identification);
> }
>
> public Collection<ObjectCondition> getObjectConditions(Collection<String> objectTypes) {
> ArrayList<ObjectCondition> objectConditions = new ArrayList<ObjectCondition>();
> for (String objectType: objectTypes) {
> DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
> if (objectTypeConditions!=null) {
> objectConditions.addAll(objectTypeConditions.getObjectConditions());
> }
> }
> return objectConditions;
> }
>
> public StatusAlarmCondition getCurrentStatusAlarmCondtition(String objectType, String identification) {
> DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
> return objectTypeConditions.getCurrentStatusAlarmCondition(identification);
> }
>
> public Collection<StatusAlarmCondition> getCurrentStatusAlarmCondtitions(Collection<String> objectTypes) {
> ArrayList<StatusAlarmCondition> statusAlarmConditions = new ArrayList<StatusAlarmCondition>();
> for (String objectType: objectTypes) {
> DistrictObjectTypeConditions objectTypeConditions = this.objectTypesConditions.get(objectType);
> if (objectTypeConditions!=null) {
> statusAlarmConditions.addAll(objectTypeConditions.getCurrentStatusAlarmConditions());
> }
> }
> return statusAlarmConditions;
> }
>
> }
> <<<<<<<<
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira