You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2023/04/23 03:40:00 UTC
[jira] [Updated] (FLINK-31828) List field in a POJO data stream results in table program compilation failure
[ https://issues.apache.org/jira/browse/FLINK-31828?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ASF GitHub Bot updated FLINK-31828:
-----------------------------------
Labels: pull-request-available (was: )
> List field in a POJO data stream results in table program compilation failure
> -----------------------------------------------------------------------------
>
> Key: FLINK-31828
> URL: https://issues.apache.org/jira/browse/FLINK-31828
> Project: Flink
> Issue Type: Bug
> Components: Table SQL / Runtime
> Affects Versions: 1.16.1
> Environment: Java 11
> Flink 1.16.1
> Reporter: Vladimir Matveev
> Priority: Major
> Labels: pull-request-available
> Attachments: MainPojo.java, generated-code.txt, stacktrace.txt
>
>
> Suppose I have a POJO class like this:
> {code:java}
> public class Example {
> private String key;
> private List<Map<String, String>> values;
> // getters, setters, equals+hashCode omitted
> }
> {code}
> When a DataStream with this class is converted to a table, and some operations are performed on it, it results in an exception which explicitly says that I should file a ticket:
> {noformat}
> Caused by: org.apache.flink.api.common.InvalidProgramException: Table program cannot be compiled. This is a bug. Please file an issue.
> {noformat}
> Please find the example Java code and the full stack trace attached.
> From the exception and generated code it seems that Flink is upset with the list field being treated as an array - but I cannot have an array type there in the real code.
> Also note that if I _don't_ specify the schema explicitly, it then maps the {{values}} field to a `RAW('java.util.List', '...')` type, which also does not work correctly and fails the job in case of even simplest operations like printing.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)