[infinispan-issues] [JBoss JIRA] (ISPN-1466) Async configuration tag affects communication between cache and HotRod client

Martin Gencur (Created) (JIRA) jira-events at lists.jboss.org
Wed Oct 19 03:18:45 EDT 2011


Async configuration tag affects communication between cache and HotRod client
-----------------------------------------------------------------------------

                 Key: ISPN-1466
                 URL: https://issues.jboss.org/browse/ISPN-1466
             Project: Infinispan
          Issue Type: Bug
    Affects Versions: 5.1.0.ALPHA1
            Reporter: Martin Gencur
            Assignee: Manik Surtani


When using a REPL (replicated) cache with configuration tag <async useReplQueue="true" replQueueMaxElements="3" replQueueInterval="1000" />, HotRod client cannot see a cache entry which was just stored into a cache. The entry is visible not before the replication queue is flushed (either because of MaxElements limit or QueueInterval). I'll attach a testcase but here's a test snippet that fails at first assert:

{code}
@Test
    public void testQueueSize() throws Exception {
        RemoteCache<String, String> asyncCache1 = rcm1.getCache(asyncCacheSize);
        RemoteCache<String, String> asyncCache2 = rcm2.getCache(asyncCacheSize);
        asyncCache1.clear();
        asyncCache1.put("k1", "v1");
        assertTrue(null != asyncCache1.get("k1"));
        assertTrue(null == asyncCache2.get("k2"));
        asyncCache1.put("k2", "v2");
        //k3 fills up the queue -> flush
        asyncCache1.put("k3", "v3");
        Thread.sleep(1000); //wait for the queue to be flushed
        assertTrue(null != asyncCache1.get("k1"));
        assertTrue(null != asyncCache2.get("k2"));
    }
{code}

IMO when I have cache A and B in a cluster and the cache entry is stored into the cache A, it should be visible at A and not in B. After flushing the queue it should be visible also at B.

Here's the test:

https://svn.devel.redhat.com/repos/jboss-qa/edg/infinispan-functional-tests/trunk/xml-configuration/clustered-cache

(to run it, one has to install infinispan-arquillian-container into local maven repository, set ISPN_HOME pointing to Infinispan distribution and run "mvn clean verify")


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the infinispan-issues mailing list