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

Pavel Tupitsyn reassigned IGNITE-19666:
---------------------------------------

    Assignee: Aleksey Demakov  (was: Pavel Tupitsyn)

> Remove null map in Binary Tuple format
> --------------------------------------
>
>                 Key: IGNITE-19666
>                 URL: https://issues.apache.org/jira/browse/IGNITE-19666
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Aleksey Demakov
>            Assignee: Aleksey Demakov
>            Priority: Major
>              Labels: iep-92, ignite-3
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> To move towards single-pass in-place construction of binary tuples the 
> biggest obstacle is presence of the null map.
> -It is proposed to encode null values as a single-byte special value (null 
> mark) in-line with regular values. It is required to escape regular values 
> that have the same bit pattern as the null mark so the null mark needs to be 
> relatively rare. The value of 0x80 seems a good one.-
> It is proposed to encode a null value as empty byte sequence. Zero-value 
> compression has to be removed from the format. Empty strings and byte arrays 
> has to be encoded as a single-byte special value (e.g. 0x80). The string and 
> byte array values that start with with the same single byte has to be escaped 
> by doubling this byte.
> By the way, this would greatly simplify making tuples from other tuples. E.g. 
> if we need to copy values for a column range [3, 7] from one tuple to another 
> tuple, we could copy values almost blindly with single memory copy. No need 
> for any bit magic anymore.



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

Reply via email to