[ https://issues.apache.org/jira/browse/FLINK-3118?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15043291#comment-15043291 ]
Martin Junghanns commented on FLINK-3118: ----------------------------------------- I also tried that and let {{MessageFunction}} implement {{Function}}. I wanted to use {{getUnaryOperatorReturnType}}. Problem here is that I don't know IN (IN1, IN2 resp.) which are used before checking for the {{ResultTypeQuerable}} interface. I could switch those lines in the {{TypeExtractor}}, e.g. now (in {{TypeExtractor.getUnaryOperatorReturnType}} {code} validateInputType(baseClass, function.getClass(), 0, inType); if(function instanceof ResultTypeQueryable) { return ((ResultTypeQueryable<OUT>) function).getProducedType(); } return new TypeExtractor().privateCreateTypeInfo(baseClass, function.getClass(), 1, inType, null); {code} would change to {code} if(function instanceof ResultTypeQueryable) { return ((ResultTypeQueryable<OUT>) function).getProducedType(); } validateInputType(baseClass, function.getClass(), 0, inType); return new TypeExtractor().privateCreateTypeInfo(baseClass, function.getClass(), 1, inType, null); {code} same applies to {{TypeExtractor.getBinaryOperatorReturnType}}. That would work. Would it be ok, to use it this way? > Check if MessageFunction implements ResultTypeQueryable > ------------------------------------------------------- > > Key: FLINK-3118 > URL: https://issues.apache.org/jira/browse/FLINK-3118 > Project: Flink > Issue Type: Bug > Components: Gelly > Reporter: Martin Junghanns > Assignee: Martin Junghanns > > To generalize message values in vertex centric computations, it is necessary > to let the user define the {{TypeInformation}} via {{ResultTypeQueryable}}. > This needs to be checked in {{VertexCentricIteration}}. -- This message was sent by Atlassian JIRA (v6.3.4#6332)