Hello, I have a strange problem for which I can't find the reason.
I made a cache (key/value cache) with a custom key type that is called "IgniteBinaryData". I have a C++ thin client that calls the server and execute a Java ComputeTaskAdapter<CustomType1,CustomType2> that I made (let's call it "Task1"). This Task1 writes data in the cache with the custom key type "IgniteBinaryData". But the issue is that when I request the same cache from the C++ thin client, the key is not found. What is strange is that I can then add the key with a "Put" from the C++, and when I look at the deserialized keys in the java code, there does not seem to be any difference between the 2 "different" keys, which are both present in the cache. What I saw is that when I do a "Get" from the C++, the key is not deserialized (Ignite looks only at the serialized data of the keys). So I think there might be a difference in the serialization of the key between the Java code and the C++, but not visible when deserialized. But looking at all the entries in the cache with an iterator, I found no differences. I tried using the".withKeepBinary();" method to access the keys without deserialization, but I can't find a way to get the "bytes[]" corresponding to the key from the BinaryObject. So, my question would be : how to get the "bytes[]" corresponding to a custom key ? And also, is there a known issue that could arise when doing this ? I carefully followed https://ignite.apache.org/docs/latest/cpp-specific/cpp-platform-interoperability and I have no problem of deserialization... Best regards, Louis C.