[ https://issues.apache.org/jira/browse/IGNITE-5655?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16140009#comment-16140009 ]
Andrey Kuznetsov commented on IGNITE-5655: ------------------------------------------ [~vozerov], thanks for your comments. As for ignoring encoding byte in binary fields comparison (#7), it works without changes right now, since we have only one non-UTF-8 encoding. But it's fragile, and I'll fix it, of course. As for #7.2, we don't need to deserialize fields when encodings match, since we just test for equality (as opposed to {{c1.compareTo(c2)}}). > Introduce pluggable string encoder/decoder > ------------------------------------------ > > Key: IGNITE-5655 > URL: https://issues.apache.org/jira/browse/IGNITE-5655 > Project: Ignite > Issue Type: New Feature > Components: binary > Affects Versions: 2.0 > Reporter: Valentin Kulichenko > Assignee: Andrey Kuznetsov > Fix For: 2.2 > > > Currently binary marshaller encodes strings in UTF-8. However, sometimes it > makes sense to serialize strings with different encodings to save space. > Let's add global property to control String encoding and customize our binary > protocol to support it. For instance, we can add another flag > {{ENCODED_STRING}}, which will write strings as follows: > [flag][encoding_flag][str_len][str_bytes] > First implementation should set preferred encoding for strings in > BinaryConfiguration. This setting is optional, default encoding is UTF-8. > Currently, the same BinaryConfiguration is used for all cluster nodes, thus > no encoding clashes are possible. -- This message was sent by Atlassian JIRA (v6.4.14#64029)