[ 
https://issues.apache.org/jira/browse/IGNITE-3455?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15373123#comment-15373123
 ] 

Denis Magda commented on IGNITE-3455:
-------------------------------------

Finally we could reproduce the following interoperability issue. If to perform 
the first put of a value of a particular type into a cache from C++ side and 
try to get this value from Java side right after that trying to deserialize it 
then {{BinaryContext.descriptorForTypeId}} won't be able to locate 
"typeId"->"className" mapping throwing the exception.

This happens because all the types that are defined in {{BinaryConfiguration}} 
are not registered in the marshaller cache. This action is postponed by the 
time when {{BinaryContext.descriptorForClass}} is called for the first time. 
However {{BinaryContext.descriptorForClass}} is called for {{BinaryObjectImpl}} 
and not for a specific Java type that is know to Java side.

This situation must be handled on Java side improving {{BinaryContext}} 
implementation.


> Entry placed on C++ side is not found on Java side
> --------------------------------------------------
>
>                 Key: IGNITE-3455
>                 URL: https://issues.apache.org/jira/browse/IGNITE-3455
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache, platforms
>            Reporter: Denis Magda
>            Assignee: Igor Sapego
>         Attachments: cpp.zip, java.zip
>
>
> If a custom key is used for cache values then the following scenario doesn't 
> work:
> - value is placed on C++ side;
> - value is read on Java side (value is not found here).
> Reverse direction is not workable as well.
> HashCode is implemented properly in C++ and Java.
> Fast debugging showed that a partition and primary node is calculated 
> properly. Looks like that there is a serialization related issue that leads 
> to the situation when "equals" fails during an object lookup.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to