-
Bug
-
Resolution: Won't Do
-
Major
-
6.0.0.Final
-
Workaround Exists
-
If the cache is empty cache.keyset() invocation returns an empty set.
If it is invoked after entities are added it failes with the Exception below.
The same test work if a binary-keyed-jdbc-store is used!
The HotRod client is based on the hot-rod C/S quickstart.
The configuration is:
<subsystem xmlns="urn:infinispan:server:core:6.0" default-cache-container="clustered">
<cache-container name="clustered" default-cache="string" statistics="true">
<transport executor="infinispan-transport" lock-timeout="60000"/>
<replicated-cache name="string" mode="ASYNC" start="EAGER">
<locking isolation="READ_COMMITTED" acquire-timeout="20000" concurrency-level="500" striping="false"/>
<transaction mode="NONE"/>
<string-keyed-jdbc-store datasource="java:jboss/datasources/JDGDatasource" passivation="false" preload="true" purge="false" shared="false">
<!-- property name="databaseType">ORACLE</property -->
<string-keyed-table prefix="qs">
<id-column name="id" type="VARCHAR(255)"/>
<data-column name="datum" type="BLOB(2000)"/>
<timestamp-column name="version" type="BIGINT"/>
</string-keyed-table>
<write-behind modification-queue-size="1024" shutdown-timeout="25000" flush-lock-timeout="15000" thread-pool-size="5" />
</string-keyed-jdbc-store>
<expiration interval="10000" />
</replicated-cache>
ERROR [org.infinispan.server.hotrod.HotRodDecoder:76] (HotRodServerWorker-88) ISPN005009: Unexpected error before any request parameters read: java.lang.ClassCastException: java.lang.String cannot be cast to [B
at org.infinispan.server.hotrod.AbstractEncoder1x$$anonfun$writeResponse$5.apply(AbstractEncoder1x.scala:113) [infinispan.jar:7.0.0-SNAPSHOT]
at scala.collection.Iterator$class.foreach(Iterator.scala:727)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1157)
at org.infinispan.server.hotrod.AbstractEncoder1x.writeResponse(AbstractEncoder1x.scala:113) [infinispan.jar:7.0.0-SNAPSHOT]
at org.infinispan.server.hotrod.HotRodEncoder.encode(HotRodEncoder.scala:48) [infinispan.jar:7.0.0-SNAPSHOT]
at org.jboss.netty.handler.codec.oneone.OneToOneEncoder.doEncode(OneToOneEncoder.java:66) [netty-3.6.6.Final.jar:]
at org.jboss.netty.handler.codec.oneone.OneToOneEncoder.handleDownstream(OneToOneEncoder.java:59) [netty-3.6.6.Final.jar:]
at org.jboss.netty.channel.Channels.write(Channels.java:704) [netty-3.6.6.Final.jar:]
at org.jboss.netty.channel.Channels.write(Channels.java:671) [netty-3.6.6.Final.jar:]
at org.jboss.netty.channel.AbstractChannel.write(AbstractChannel.java:248) [netty-3.6.6.Final.jar:]
at org.infinispan.server.core.AbstractProtocolDecoder.writeResponse(AbstractProtocolDecoder.scala:163) [infinispan.jar:7.0.0-SNAPSHOT]
at org.infinispan.server.hotrod.HotRodDecoder.customDecodeKey(HotRodDecoder.scala:138) [infinispan.jar:7.0.0-SNAPSHOT]
at org.infinispan.server.core.AbstractProtocolDecoder.decodeKey(AbstractProtocolDecoder.scala:105) [infinispan.jar:7.0.0-SNAPSHOT]
at org.infinispan.server.core.AbstractProtocolDecoder.decode(AbstractProtocolDecoder.scala:53) [infinispan.jar:7.0.0-SNAPSHOT]
at org.infinispan.server.core.AbstractProtocolDecoder.decode(AbstractProtocolDecoder.scala:29) [infinispan.jar:7.0.0-SNAPSHOT]
at org.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(ReplayingDecoder.java:500) [netty-3.6.6.Final.jar:]
at org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(ReplayingDecoder.java:435) [netty-3.6.6.Final.jar:]
at org.infinispan.server.core.AbstractProtocolDecoder.messageReceived(AbstractProtocolDecoder.scala:377) [infinispan.jar:7.0.0-SNAPSHOT]
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268) [netty-3.6.6.Final.jar:]
at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255) [netty-3.6.6.Final.jar:]
at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88) [netty-3.6.6.Final.jar:]
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:109) [netty-3.6.6.Final.jar:]
at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:312) [netty-3.6.6.Final.jar:]
at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:90) [netty-3.6.6.Final.jar:]
at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) [netty-3.6.6.Final.jar:]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_51]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_51]
at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_51]
- is blocked by
-
ISPN-4159 DefaultTwoWayKey2StringMapper encodes objects to strings in a manner that is incompatible with string handling of some databases
- Closed