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

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

Github user aljoscha commented on the pull request:

    https://github.com/apache/flink/pull/1377#issuecomment-157728542
  
    What it does now is to only pick one element in the group that has the 
compound key of the `groupBy` expression. The reason why I did not want to 
support this initially was that the element that results from this has 
arbitrary values in the fields that are not key fields since only on arbitrary 
element of the group of elements is picked.
    
    Should we maybe limit this to only allow selecting fields that are also key 
fields?


> TableAPI throws ExpressionException for "Dangling GroupBy operation"
> --------------------------------------------------------------------
>
>                 Key: FLINK-2115
>                 URL: https://issues.apache.org/jira/browse/FLINK-2115
>             Project: Flink
>          Issue Type: Bug
>          Components: Table API
>    Affects Versions: 0.9
>            Reporter: Fabian Hueske
>            Assignee: Chengxiang Li
>
> The following program below throws an ExpressionException due to a "Dangling 
> GroupBy operation".
> However, I think the program is semantically correct and should execute.
> {code}
> public static void main(String[] args) throws Exception {
>   ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
>   DataSet<Integer> data = env.fromElements(1,2,2,3,3,3,4,4,4,4);
>   DataSet<Tuple2<Integer, Integer>> tuples = data
>       .map(new MapFunction<Integer, Tuple2<Integer, Integer>>() {
>         @Override
>         public Tuple2<Integer, Integer> map(Integer i) throws Exception {
>           return new Tuple2<Integer, Integer>(i, i*2);
>         }
>       });
>   TableEnvironment tEnv = new TableEnvironment();
>   Table t = tEnv.toTable(tuples).as("i, i2")
>       .groupBy("i, i2").select("i, i2")
>       .groupBy("i").select("i, i.count as cnt");
>   tEnv.toSet(t, Row.class).print();
> }
> {code}



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

Reply via email to