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 2016/06/12 18:35:21 UTC
[jira] [Commented] (FLINK-3702) DataStream API PojoFieldAccessor
doesn't support nested POJOs
[ https://issues.apache.org/jira/browse/FLINK-3702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15326578#comment-15326578 ]
ASF GitHub Bot commented on FLINK-3702:
---------------------------------------
GitHub user ggevay opened a pull request:
https://github.com/apache/flink/pull/2094
[FLINK-3702] Make FieldAccessors support nested field expressions.
I finally had some time to complete this, sorry it took so long.
I have added `getFieldAccessor` to `TypeInformation`, which creates a `FieldAccessor` from a position or a (possibly nested) field expression. It uses recursion in the nested case, and also supports the heterogeneous case, e.g. pojo inside tuple inside pojo.
Additionally, I have noticed that the code to serialize/deserialize a `java.lang.reflect.Field` is duplicated at several places (`readObject`/`writeObject` of `PojoSerializer`, `PojoComparator`, `PojoField`). I also needed it in `PojoFieldAccessor`, so instead of adding more duplication, I factored it out into a new class (`FieldSerializer`).
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/ggevay/flink FieldAccessorRefactor
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/2094.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #2094
----
commit e8b584791144a2e9a22e39242010726fc76ae2a3
Author: Gabor Gevay <gg...@gmail.com>
Date: 2016-05-22T17:48:50Z
[FLINK-3702] Make FieldAccessors support nested field expressions.
----
> DataStream API PojoFieldAccessor doesn't support nested POJOs
> -------------------------------------------------------------
>
> Key: FLINK-3702
> URL: https://issues.apache.org/jira/browse/FLINK-3702
> Project: Flink
> Issue Type: Improvement
> Components: DataStream API
> Affects Versions: 1.0.0
> Reporter: Robert Metzger
> Assignee: Gabor Gevay
>
> The {{PojoFieldAccessor}} (which is used by {{.sum(String)}} and similar methods) doesn't support nested POJOs right now.
> As part of FLINK-3697 I'll add a check for a nested POJO and fail with an exception.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)