[ 
https://issues.apache.org/jira/browse/IGNITE-21100?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ivan Daschinsky updated IGNITE-21100:
-------------------------------------
    Component/s: python

> [Python Thin Client] Key class binary metadata registration is skipped
> ----------------------------------------------------------------------
>
>                 Key: IGNITE-21100
>                 URL: https://issues.apache.org/jira/browse/IGNITE-21100
>             Project: Ignite
>          Issue Type: Bug
>          Components: python
>    Affects Versions: python-0.6.1
>            Reporter: Mikhail Petrov
>            Priority: Major
>
> Python thin client does not register binary metadata for user classes that 
> are used as a key for cache operations. 
> It seems that it happens because 
> 1. When we calculate hash code of a key object, we serialize it. The result 
> is cached in `_buffer` attribute of the object. (see 
>       a) pyignite.datatypes.complex.BinaryObject.hashcode
>       b) pyignite/binary.py#write_footer:203 ). 
> The hash code of a key object is used to determine which node this key 
> belongs to (PA).  
> 2. But when we are about to send key object to the server side - we skip 
> cache object serialization as the result is already saved in the buffer 
> mentioned above AND skip its binary type registration.
> (see pyignite.datatypes.complex.BinaryObject.from_python_not_null)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to