[
https://issues.apache.org/jira/browse/FLINK-2690?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14906468#comment-14906468
]
ASF GitHub Bot commented on FLINK-2690:
---------------------------------------
Github user tillrohrmann commented on a diff in the pull request:
https://github.com/apache/flink/pull/1141#discussion_r40329651
--- Diff:
flink-staging/flink-language-binding/flink-language-binding-generic/src/main/java/org/apache/flink/languagebinding/api/java/common/PlanBinder.java
---
@@ -256,7 +258,20 @@ protected OperationInfo createOperationInfo(Operation
operationIdentifier) throw
protected abstract INFO createOperationInfo(AbstractOperation
operationIdentifier) throws IOException;
private void createCsvSource(OperationInfo info) throws IOException {
- sets.put(info.setID, env.createInput(new CsvInputFormat(new
Path(info.path), info.lineDelimiter, info.fieldDelimiter, info.types),
info.types).name("CsvSource"));
+ if (!(info.types instanceof CompositeType)) {
+ throw new RuntimeException("The output type of a csv
source has to be a tuple or a " +
+ "pojo type. The derived type is " + info);
+ }
+
+ sets.put(
--- End diff --
That is true. Will change it when merging.
> CsvInputFormat cannot find the field of derived POJO class
> ----------------------------------------------------------
>
> Key: FLINK-2690
> URL: https://issues.apache.org/jira/browse/FLINK-2690
> Project: Flink
> Issue Type: Bug
> Components: Java API, Scala API
> Affects Versions: 0.10
> Reporter: Chiwan Park
> Assignee: Till Rohrmann
>
> A user reports {{CsvInputFormat}} cannot find the field of derived POJO
> class.
> (http://mail-archives.apache.org/mod_mbox/flink-user/201509.mbox/%3ccaj54yvi6cbldn7cypey+xe8a5a_j1-6tnx1wm1eb63gvnqd...@mail.gmail.com%3e)
> The reason of the bug is that {{CsvInputFormat}} uses {{getDeclaredField}}
> method without scanning base classes to find the field. When
> {{CsvInputFormat}} was wrote, {{TypeInformation}} cannot be serialized. So we
> needed to initialize {{TypeInformation}} in {{open}} method manually. Some
> mistakes in initializing cause this bug.
> After FLINK-2637 is merged, we can serialize {{TypeInformation}} and don't
> need to create field objects in {{CsvInputFormat}}.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)