[ 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)