Mikhail Petrov created IGNITE-21100:
---------------------------------------
Summary: [Python Thin Client] Key class binary metadata is not
registered
Key: IGNITE-21100
URL: https://issues.apache.org/jira/browse/IGNITE-21100
Project: Ignite
Issue Type: Task
Reporter: Mikhail Petrov
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
pyignite.datatypes.complex.BinaryObject.hashcode,
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)