[
https://issues.apache.org/jira/browse/BAHIR-321?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17654109#comment-17654109
]
Balazs Varga commented on BAHIR-321:
------------------------------------
I have a proposed solution:
https://github.com/apache/bahir-flink/pull/161
> Kudu lookup join fails with String literal in WHERE clause
> ----------------------------------------------------------
>
> Key: BAHIR-321
> URL: https://issues.apache.org/jira/browse/BAHIR-321
> Project: Bahir
> Issue Type: Bug
> Components: Flink Streaming Connectors
> Reporter: Balazs Varga
> Priority: Major
>
> When performing a (processing time) temporal table join with a Kudu table,
> and using a String literal in the WHERE condition:
> {code:java}
> SELECT d.sensor_id, k.sensor_type, d.`value`
> FROM datagen AS d
> JOIN `kudu`.`default_database`.`default.sensors` FOR SYSTEM_TIME AS OF
> d.proctime as k
> ON k.sensor_id = d.sensor_id
> WHERE sensor_type = 'pressure';{code}
> We get the following error:
> Caused by: java.lang.ClassCastException:
> org.apache.flink.table.data.binary.BinaryStringData cannot be cast to
> java.lang.String at
> org.apache.flink.connectors.kudu.connector.KuduFilterInfo.predicateComparator(KuduFilterInfo.java:68)
> This is because in KuduFilterInfo it tries to cast the literal, which is a
> BinaryStringData, to a String.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)