[infinispan-issues] [JBoss JIRA] (ISPN-3436) Not working RemoteManager.getBulk() and keySet() in compatibility mode

Jiří Holuša (JIRA) jira-events at lists.jboss.org
Mon Aug 26 09:20:26 EDT 2013


     [ https://issues.jboss.org/browse/ISPN-3436?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jiří Holuša updated ISPN-3436:
------------------------------

    Description: 
When using HotRod client in compatibility mode, when trying to put entries via embedded cache and afterwards call RemoteCache.getBulk() or RemoteCache.keySet(), an exception is thrown. Exception is thrown in all cache modes (LOCAL, REPL, DIST).

{code:borderStyle=solid}
org.infinispan.client.hotrod.exceptions.HotRodClientException:Request for message id[3] returned server error (status=0x85): java.lang.ClassCastException: java.lang.Integer cannot be cast to [B
	at org.infinispan.client.hotrod.impl.protocol.Codec10.checkForErrorsInResponseStatus(Codec10.java:143)
	at org.infinispan.client.hotrod.impl.protocol.Codec10.readHeader(Codec10.java:99)
	at org.infinispan.client.hotrod.impl.operations.HotRodOperation.readHeaderAndValidate(HotRodOperation.java:56)
...
{code} 

Code that did it:

{code:title=EmbeddedHotRodBulkTest.java|borderStyle=solid}
public void testEmbeddedPutHotRodGetBulk() {
      Cache<Integer, Integer> embedded = cacheFactory.getEmbeddedCache();
      RemoteCache<Integer, Integer> remote = cacheFactory.getHotRodCache();

      populateCacheManager(embedded);

      Map<Integer, Integer> get = remote.getBulk();
      assertEquals(100, get.size());

      for(int i = 0; i < 100; i++) {
         assertTrue(get.containsValue(i));
         assertTrue(get.containsKey(i));
      }
   }
{code} 


  was:
When using HotRod client in compatibility mode, when trying to put entries via embedded cache and afterwards call RemoteCache.getBulk() or RemoteCache.keySet(), an exception is thrown. Exception is thrown in all cache modes (LOCAL, REPL, DIST).

{code:borderStyle=solid}
org.infinispan.client.hotrod.exceptions.HotRodClientException:Request for message id[3] returned server error (status=0x85): java.lang.ClassCastException: java.lang.Integer cannot be cast to [B
	at org.infinispan.client.hotrod.impl.protocol.Codec10.checkForErrorsInResponseStatus(Codec10.java:143)
	at org.infinispan.client.hotrod.impl.protocol.Codec10.readHeader(Codec10.java:99)
	at org.infinispan.client.hotrod.impl.operations.HotRodOperation.readHeaderAndValidate(HotRodOperation.java:56)
...
{code} 

Code that did it:

{code:title=EmbeddedHotRodBulkTest.java|borderStyle=solid}
public void testEmbeddedPutHotRodGetBulk() {
      Cache<Integer, Integer> embedded = cacheFactory.getEmbeddedCache();
      RemoteCache<Integer, Integer> remote = cacheFactory.getHotRodCache();

      populateCacheManager(embedded);

      Map<Integer, Integer> get = remote.getBulk();
      assertEquals(100, get.size());

      for(int i = 0; i < 100; i++) {
         assertTrue(get.containsValue(i));
         assertTrue(get.containsKey(i));
      }
   }
{code} 

Also attaching test file for this functionality.


    
> Not working RemoteManager.getBulk() and keySet() in compatibility mode
> ----------------------------------------------------------------------
>
>                 Key: ISPN-3436
>                 URL: https://issues.jboss.org/browse/ISPN-3436
>             Project: Infinispan
>          Issue Type: Bug
>          Components: Remote protocols
>            Reporter: Jiří Holuša
>            Assignee: Galder Zamarreño
>
> When using HotRod client in compatibility mode, when trying to put entries via embedded cache and afterwards call RemoteCache.getBulk() or RemoteCache.keySet(), an exception is thrown. Exception is thrown in all cache modes (LOCAL, REPL, DIST).
> {code:borderStyle=solid}
> org.infinispan.client.hotrod.exceptions.HotRodClientException:Request for message id[3] returned server error (status=0x85): java.lang.ClassCastException: java.lang.Integer cannot be cast to [B
> 	at org.infinispan.client.hotrod.impl.protocol.Codec10.checkForErrorsInResponseStatus(Codec10.java:143)
> 	at org.infinispan.client.hotrod.impl.protocol.Codec10.readHeader(Codec10.java:99)
> 	at org.infinispan.client.hotrod.impl.operations.HotRodOperation.readHeaderAndValidate(HotRodOperation.java:56)
> ...
> {code} 
> Code that did it:
> {code:title=EmbeddedHotRodBulkTest.java|borderStyle=solid}
> public void testEmbeddedPutHotRodGetBulk() {
>       Cache<Integer, Integer> embedded = cacheFactory.getEmbeddedCache();
>       RemoteCache<Integer, Integer> remote = cacheFactory.getHotRodCache();
>       populateCacheManager(embedded);
>       Map<Integer, Integer> get = remote.getBulk();
>       assertEquals(100, get.size());
>       for(int i = 0; i < 100; i++) {
>          assertTrue(get.containsValue(i));
>          assertTrue(get.containsKey(i));
>       }
>    }
> {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