[ 
https://issues.apache.org/jira/browse/FLINK-2556?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14708412#comment-14708412
 ] 

ASF GitHub Bot commented on FLINK-2556:
---------------------------------------

GitHub user zentol opened a pull request:

    https://github.com/apache/flink/pull/1044

    [FLINK-2556] Refactor/Fix pre-flight Key validation

    Removed redundant key validation in DistinctOperator
    Keys constructors now make sure the type of every key is an instance of 
AtomicType/CompositeType, and that type.isKeyType() is true.
    Additionally, the ExpressionKeys int[] constructor explicitly rejects Tuple0
    Changes one test that actually tried something that shouldn't work in the 
first place.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/zentol/flink isKeyType_check

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/flink/pull/1044.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 #1044
    
----
commit 7a57b6ef2ecdc7adaf770f8585cf8f974c684705
Author: zentol <s.mo...@web.de>
Date:   2015-08-23T13:57:34Z

    [FLINK-2556] Refactor/Fix pre-flight Key validation

----


> Fix/Refactor pre-flight Key validation
> --------------------------------------
>
>                 Key: FLINK-2556
>                 URL: https://issues.apache.org/jira/browse/FLINK-2556
>             Project: Flink
>          Issue Type: Bug
>          Components: Java API
>            Reporter: Chesnay Schepler
>            Assignee: Chesnay Schepler
>
> The pre-flight key validation checks are inconsistent, at times don't 
> actually check anything and in at least 1 case are done redundantly.
> For example,
> * you can group on a tuple containing a non-Atomic-/CompositeType using 
> String[] KeyExpressions (see FLINK-2541)
> * you can group on an AtomicType even though isKeyType() returns false, if it 
> is contained in a tuple
> * for distinct(String[]...) the above fails in the DistinctOperator 
> constructor, as it validates the key again for some reason.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to