[jira] [Created] (FLINK-15537) Type of keys should be `BinaryRow` when manipulating map state with `BaseRow` as key type.

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Created] (FLINK-15537) Type of keys should be `BinaryRow` when manipulating map state with `BaseRow` as key type.

Shang Yuanchun (Jira)
Shuo Cheng created FLINK-15537:
----------------------------------

             Summary: Type of keys should be `BinaryRow` when manipulating map state with `BaseRow` as key type.
                 Key: FLINK-15537
                 URL: https://issues.apache.org/jira/browse/FLINK-15537
             Project: Flink
          Issue Type: Bug
          Components: Table SQL / Planner
    Affects Versions: 1.9.1
            Reporter: Shuo Cheng
             Fix For: 1.11.0


`BaseRow` is serialized and deserialized as `BinaryRow` by default, so when the key type of the map state is `BaseRow`, we should construct map keys with `BinaryRow` as type to get value from map state, otherwise, you would  always get Null...

Try it with following SQL:
{code:java}
// (b: Int, c: String)
SELECT
      b, listagg(DISTINCT c, '#')
FROM MyTable
GROUP BY b
{code}
 



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