]
Tristan Tarrant updated ISPN-2575:
----------------------------------
Fix Version/s: 10.0.1.Final
(was: 10.0.0.Final)
Key Transformer registration is required on all nodes of the cluster,
in case of custom keys
--------------------------------------------------------------------------------------------
Key: ISPN-2575
URL:
https://issues.jboss.org/browse/ISPN-2575
Project: Infinispan
Issue Type: Enhancement
Components: Embedded Querying
Affects Versions: 5.2.0.Beta5
Reporter: Anna Manukyan
Assignee: Nistor Adrian
Priority: Minor
Fix For: 10.0.1.Final
Attachments: ClusteredCacheTest.java
The case is the following:
I have a clustered cache on which I want to perform a search. I'm doing the
following:
I'm initializing SearchManager on node1, I'm registering a custom key transformer
for my key using the created searchmanager, but then when I'm trying to put data into
the cache on node1 (which is in REPL_SYNC mode with cache on node2), I'm getting the
exception:
java.lang.IllegalArgumentException: Indexing only works with entries keyed on Strings,
primitives and classes that have the @Transformable annotation - you passed in a class
org.infinispan.query.test.CustomKey3. Alternatively, see
org.infinispan.query.SearchManager#registerKeyTransformer
When I'm initializing the SearchManager using node2 cache and register the
keyTransformer on it as well, then everything works perfectly, even though I am not using
the second created SearchManager.
The test which reproduces the issue is attached to the jira. Please see the test case:
testSearchKeyTransformer()