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