[infinispan-issues] [JBoss JIRA] (ISPN-3164) Replacing entry via Memcached does not increment version of original HotRod entry

Martin Gencur (JIRA) jira-events at lists.jboss.org
Fri May 31 07:39:54 EDT 2013


Martin Gencur created ISPN-3164:
-----------------------------------

             Summary: Replacing entry via Memcached does not increment version of original HotRod entry
                 Key: ISPN-3164
                 URL: https://issues.jboss.org/browse/ISPN-3164
             Project: Infinispan
          Issue Type: Bug
    Affects Versions: 5.3.0.CR1
            Reporter: Martin Gencur
            Assignee: Galder ZamarreƱo
             Fix For: 5.3.0.Final


When an entry is stored via HotRod and later replaced by Memcached (or Embedded, it does not matter), the version of the entry does not change. This makes operations like replaceWithVersion of HotRod client unreliable in compatibility mode.

{code:java}
public void testHotRodPutMemcachedReplaceHotRodGetVersionedTest() throws Exception {
      final String key1 = "6";

      // 1. Put with Hot Rod
      RemoteCache<String, Object> remote = cacheFactory.getHotRodCache();
      assertEquals(null, remote.withFlags(Flag.FORCE_RETURN_VALUE).put(key1, "v1"));
      VersionedValue oldValue = remote.getVersioned(key1);

      // 2. Replace with Memcached
      Future<Boolean> f = cacheFactory.getMemcachedClient().set(key1, 0, "v2");
      assertTrue(f.get(60, TimeUnit.SECONDS));

      // 3. Get with HotRod
      assertEquals("v2", remote.getVersioned(key1).getValue());
      assertTrue("The entry version should have changed", oldValue.getVersion() != remote.getVersioned(key1).getVersion());
      //^^^ fails here
   }
{code}

--
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