You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@beam.apache.org by GitBox <gi...@apache.org> on 2022/06/04 20:06:08 UTC

[GitHub] [beam] damccorm opened a new issue, #20893: Analytic functions can't be planned with filter.

damccorm opened a new issue, #20893:
URL: https://github.com/apache/beam/issues/20893

   Example query: "SELECT item, purchases, category, sum(purchases) over (PARTITION BY category ORDER BY purchases ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) as total_purchases  FROM PCOLLECTION WHERE purchases \> 3"
    
   Caused by: org.apache.beam.vendor.calcite.v1_20_0.org.apache.calcite.plan.RelOptPlanner$CannotPlanException: *There are not enough rules to produce a node with desired properties:* convention=BEAM_LOGICAL. All the inputs have relevant nodes, however the cost is still infinite.
   Root: rel#11:Subset#2.BEAM_LOGICAL
   Original rel:
   LogicalProject(subset=[rel#11:Subset#2.BEAM_LOGICAL], item=[$0], purchases=[$2], category=[$1], total_purchases=[SUM($2) OVER (PARTITION BY $1 ORDER BY $2 ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)]): rowcount = 50.0, cumulative cost = \{inf}, id = 9
     LogicalFilter(subset=[rel#8:Subset#1.NONE], condition=[\>($2, 3)]): rowcount = 50.0, cumulative cost = \{inf}, id = 7
       BeamIOSourceRel(subset=[rel#6:Subset#0.BEAM_LOGICAL], table=[[beam, PCOLLECTION]]): rowcount = 100.0, cumulative cost = \{100.0 cpu, 0.0 cpuRate }, id = 3
   
   Imported from Jira [BEAM-12331](https://issues.apache.org/jira/browse/BEAM-12331). Original Jira may contain additional context.
   Reported by: ibzib.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org