jakarta-jcs-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Philip Johnson (JIRA)" <j...@apache.org>
Subject [jira] Created: (JCS-45) hierarchical deletion not working with DiskUsagePatternName=UPDATE
Date Wed, 18 Jun 2008 19:39:45 GMT
hierarchical deletion not working with DiskUsagePatternName=UPDATE
------------------------------------------------------------------

                 Key: JCS-45
                 URL: https://issues.apache.org/jira/browse/JCS-45
             Project: JCS
          Issue Type: Bug
          Components: Indexed Disk Cache
    Affects Versions: jcs-1.3
            Reporter: Philip Johnson
            Assignee: Aaron Smuts


The documentation explains that it is possible to do "hierarchical deletion" using keys with
colon separators:

<http://jakarta.apache.org/jcs/faq.html#hierarchical-removal>

I would like this feature, but it appears to be broken when DiskUsagePatternName is specified
as UPDATE. I am using Java 1.6 on Windows.

Below is a short test program that illustrates the behavior. When I run this program without
changes, it prints out "OK" two times.  When I uncomment the setProperty() line in makeProps()
and re-run the program, it prints out "Error!" twice.  

---------------------------
import java.util.Properties;
import org.apache.jcs.JCS;
import org.apache.jcs.engine.control.CompositeCacheManager;

public class JcsProblem {

  private static Properties makeProps() {
    Properties props = new Properties();
    props.setProperty("jcs.region.foo", "DC");
    props.setProperty("jcs.region.foo.cacheattributes", "org.apache.jcs.engine.CompositeCacheAttributes");
    props.setProperty("jcs.region.foo.MemoryCacheName", "org.apache.jcs.engine.memory.lru.LRUMemoryCache");
    // Uncomment the following line to make hierarchical removal not work.
    // props.setProperty("jcs.region.foo.cacheattributes.DiskUsagePatternName", "UPDATE");
    props.setProperty("jcs.auxiliary.DC", "org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheFactory");
    props.setProperty("jcs.auxiliary.DC.attributes", "org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes");
    props.setProperty("jcs.auxiliary.DC.attributes.DiskPath", System.getProperty("user.dir"));
    return props;
  }

  public static void main(String[] args) throws Exception {
    CompositeCacheManager ccm = CompositeCacheManager.getUnconfiguredInstance();
    ccm.configure(makeProps());
    JCS cache = JCS.getInstance("foo");
    cache.put("foo:bar:baz", "one");
    cache.put("foo:bar:qux", "two");
    cache.put("bar:quxx", "three");
    cache.remove("foo:bar:");
    System.out.println(((cache.get("foo:bar:baz") == null) ? "OK" : "Error!"));
    System.out.println(((cache.get("foo:bar:qux") == null) ? "OK" : "Error!"));
  }
}



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: jcs-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jcs-dev-help@jakarta.apache.org


Mime
View raw message