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

Jark Wu updated FLINK-21027:
----------------------------
    Summary: Add isStateKeyValueSerialized() method to KeyedStateBackend 
interface  (was: Add isKeyValueImmutable() method to KeyedStateBackend 
interface)

> Add isStateKeyValueSerialized() method to KeyedStateBackend interface
> ---------------------------------------------------------------------
>
>                 Key: FLINK-21027
>                 URL: https://issues.apache.org/jira/browse/FLINK-21027
>             Project: Flink
>          Issue Type: Improvement
>          Components: Runtime / State Backends
>            Reporter: Jark Wu
>            Priority: Major
>
> In Table/SQL operators, we have some optimizations that reuse objects of keys 
> and records. For example, we buffer input records in {{BytesMultiMap}} and 
> use the reused object to map to the underlying memory segment to reduce bytes 
> copy. 
> However, if we put the reused key and value into Heap statebackend, the 
> result will be wrong, because it is not allowed to mutate keys and values in 
> Heap statebackend. 
> Therefore, it would be great if {{KeyedStateBackend}} can expose such API, so 
> that Table/SQL can dynamically decide whether to copy the keys and values 
> before putting into state. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to