Jark Wu created FLINK-21027:
-------------------------------

             Summary: Add isKeyValueImmutable() 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


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