The reason for input validation is to check if the Function is fully compatible. Actually only the return types are necessary, but it prohibits stupid implementation mistakes and undesired behavior.

E.g. if you implement a "class MyMapper extends MapFunction<String, String>{}" and use it for "env.fromElements(1,2,3).map(new MyMapper())"

Regards,
Timo

On 08.11.2015 23:27, Chesnay Schepler wrote:
On 08.11.2015 21:28, Gyula Fóra wrote:
Let's say I want to implement my own TupleTypeinfo that handles null
values, and I pass this typeinfo in the returns call of an operation. This will most likely fail when the next operation validates the input although
I think it shouldn't.
So i just tried this. Removed the final modifier from TupleTypeInfo, created one that extended TupleTypeInfo, threw in a returns() call into the ConnectedComponents example and it passed the input validation.

Unless i misunderstood something you're premise is invalid.

Reply via email to