You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Greg Hogan (JIRA)" <ji...@apache.org> on 2016/04/26 20:09:12 UTC
[jira] [Commented] (FLINK-2899) The groupReduceOn* methods which
take types as a parameter fail with TypeErasure
[ https://issues.apache.org/jira/browse/FLINK-2899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15258588#comment-15258588 ]
Greg Hogan commented on FLINK-2899:
-----------------------------------
Is this due to a limitation of {{TypeExtractor.createTypeInfo}} or the lack of parameterization in user code?
The {{TypeInformation}} is extracted from {{NeighborsFunctionWithVertexValue<K, TreeMap<K, Integer>, NullValue, Vertex<K, K>>}} with {{TypeExtractor.createTypeInfo(NeighborsFunctionWithVertexValue.class, function.getClass(), 3, null, null)}} (link 0).
The function is instantiated with {{new PropagateNeighborValues()}}, so no parameterization. Does this limit what {{TypeExtractor}} can extract?
I agree with [~Zentol] that if {{ApplyNeighborCoGroupFunction}} is extracting {{TypeInformation}} then accepting this as a function parameter looks superfluous.
0: [https://github.com/andralungu/flink/commit/1fbc09ca35e80f61f31cf7a6166f27f2a6f142c1#diff-e2c6679629dbf39dbd9ba785d1516f2cR188]
1: [https://github.com/andralungu/flink/commit/1fbc09ca35e80f61f31cf7a6166f27f2a6f142c1#diff-e2c6679629dbf39dbd9ba785d1516f2cR96]
> The groupReduceOn* methods which take types as a parameter fail with TypeErasure
> --------------------------------------------------------------------------------
>
> Key: FLINK-2899
> URL: https://issues.apache.org/jira/browse/FLINK-2899
> Project: Flink
> Issue Type: Bug
> Components: Gelly
> Affects Versions: 0.10.0
> Reporter: Andra Lungu
>
> I tried calling groupReduceOnEdges (EdgesFunctionWithVertexValue<K, VV, EV, T> edgesFunction, EdgeDirection direction, TypeInformation<T> typeInfo) in order to make the vertex-centric version of the Triangle Count library method applicable to any kind of key and I got a TypeErasure Exception.
> After doing a bit of debugging (see the hack in https://github.com/andralungu/flink/tree/trianglecount-vertexcentric), I saw that actually the call to TypeExtractor.createTypeInfo(NeighborsFunctionWithVertexValue.class, .... in ApplyNeighborCoGroupFunction does not work properly, i.e. it returns null. From what I see, the coGroup in groupReduceOnNeighbors tries to infer a type before "returns" is called.
> I may be missing something, but that particular feature (groupReduceOn with types) is not documented or tested so we would also need some tests for that.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)