[infinispan-issues] [JBoss JIRA] (ISPN-3562) File cache store ignores maxEntries property

Martin Gencur (JIRA) jira-events at lists.jboss.org
Thu Sep 26 12:36:02 EDT 2013


Martin Gencur created ISPN-3562:
-----------------------------------

             Summary: File cache store ignores maxEntries property
                 Key: ISPN-3562
                 URL: https://issues.jboss.org/browse/ISPN-3562
             Project: Infinispan
          Issue Type: Bug
          Components: Server
    Affects Versions: 6.0.0.Beta1
            Reporter: Martin Gencur
            Assignee: Mircea Markus
            Priority: Minor
             Fix For: 6.0.0.Final


The following test fails if the new file cache store is configured with maxEntries property:
{code:java}
@Test
    public void testMaxEntriesAndLocationParametersDuringRestart() throws Exception {
        controller.start(CONTAINER);
        RemoteCacheManager rcm = new RemoteCacheManager(new ConfigurationBuilder().addServer()
                                                              .host(server.getHotrodEndpoint().getInetAddress().getHostName())
                                                              .port(server.getHotrodEndpoint().getPort())
                                                              .build());
        RemoteCache<String, String> rc = rcm.getCache();
        rc.clear();
        assertNull(rc.get("k1"));
        rc.put("k1", "v1");
        rc.put("k2", "v2");
        rc.put("k3", "v3");
        assertEquals("v1", rc.get("k1"));
        assertEquals("v2", rc.get("k2"));
        assertEquals("v3", rc.get("k3"));
        //assert the existence of a single file in the filesystem
        File f = new File(singleFCSPath, "default.dat");
        assertTrue(f.exists());
        //assert that SingleFileCacheStore was registered
        MBeanServerConnectionProvider provider = new MBeanServerConnectionProvider(server.getHotrodEndpoint().getInetAddress().getHostName(), MANAGEMENT_PORT);
        assertEquals("[org.infinispan.persistence.file.SingleFileStore]", getAttribute(provider, CACHE_LOADER_MBEAN, "stores"));
        controller.kill(CONTAINER);
        controller.start(CONTAINER);
        assertEquals("v2", rc.get("k2"));
        assertEquals("v3", rc.get("k3"));
        assertNull(rc.get("k1")); //maxEntries was 2, this entry should be lost as the oldest entries are removed
//^^^^fails here, the entry is still there
        controller.stop(CONTAINER);
    }
{code}

Cache configuration: 
{code}
<subsystem xmlns="urn:infinispan:server:core:5.3" default-cache-container="default">
            <cache-container name="default" default-cache="default" listener-executor="infinispan-listener" eviction-executor="infinispan-eviction" replication-queue-executor="infinispan-repl-queue">
                <local-cache name="default" start="EAGER">
                    <locking isolation="NONE" acquire-timeout="30000" concurrency-level="1000" striping="false"/>
                    <transaction mode="NONE"/>
                    <file-store
                            passivation="false"
                            preload="false"
                            purge="false"
                            relative-to="temp"
                            path="single-file-cache-store"
                            >
                        <property name="maxEntries">2</property>
                    </file-store>
                </local-cache>
            </cache-container>
        </subsystem>
{code}

The complete test is here: https://code.engineering.redhat.com/gerrit/gitweb?p=jdg-functional-tests.git;a=tree;f=remote/file-cache-store;h=0168fb920ff63de768bdc0ba7012fe1cd5d09409;hb=HEAD

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the infinispan-issues mailing list