Uploaded image for project: 'IMPALA'
  1. IMPALA
  2. IMPALA-12871

Implement front end using Calcite

    XMLWordPrintableJSON

Details

    • Epic
    • Status: Open
    • Critical
    • Resolution: Unresolved
    • None
    • None
    • Frontend
    • None
    • Implement front end using Calcite
    • ghx-label-5

    Description

      Calcite provides a framework for compilation that will allow us to provide optimizations more easily and also allow more support for SQL standard queries.  This Epic will track the multiple commits needed to support this

      Attachments

        Issue Links

          1.
          Support basic queries using Calcite on the frontend Sub-task Resolved Steve Carlin
          2.
          Import parser files from Calcite into Impala Sub-task Resolved Steve Carlin
          3.
          Allow function parsing for Impala Calcite planner Sub-task Resolved Steve Carlin
          4.
          Implement filtering conditions Sub-task Resolved Unassigned
          5.
          Create query option to choose the planner type Sub-task Open Unassigned
          6.
          Implement Values and Union Calcite RelNodes Sub-task Resolved Unassigned
          7.
          Implement Sort capability Sub-task Resolved Unassigned
          8.
          Calcite planner: Invert Joins should be implemented as a rule Sub-task Open Unassigned
          9.
          Calcite planner: Need to code Parquet Count Star Optimization Sub-task Open Unassigned
          10.
          Use a Map instead of an ArrayList for Expr in HDFS RelNode Sub-task Open Unassigned
          11.
          Implement aggregation capability Sub-task Resolved Unassigned
          12.
          Need to make a more generic parser for evaluating stmts for the Calcite Planner Sub-task Open Unassigned
          13.
          Support Ranger Authorization for Calcite Planner. Sub-task Open Fang-Yu Rao
          14.
          Need infrastructure to handle implicit casting for functions Sub-task Resolved Unassigned
          15.
          Handle UDFs in Calcite planner Sub-task Open Unassigned
          16.
          Cleanup Parser.jj for Calcite planner to only use supported syntax Sub-task Resolved Unassigned
          17.
          Better exception for Analyze*Expr class in Calcite Planner Sub-task Open Unassigned
          18.
          computeEvalCost needs better implementation in Calcite planner Sub-task Open Unassigned
          19.
          ImpalaOperator getAllowedSignatures needs to be implemented Sub-task Open Unassigned
          20.
          (Calcite) Implement tryConvertToTopN as a rule Sub-task Open Unassigned
          21.
          Support Impala Join HInts Sub-task Open Unassigned
          22.
          Implement analytic functions Sub-task Resolved Unassigned
          23.
          Calcite: fix and enable tpcds and tpch tests Sub-task Closed Unassigned
          24.
          Handle the Sarg function in the Calcite planner Sub-task Open Unassigned
          25.
          Using Calcite planner for Iceberg tables crashes impalad Sub-task Resolved Unassigned
          26.
          Calcite planner: Outer join query with nonequi conjunct crashes Impala server Sub-task Resolved Unassigned
          27.
          Calcite planner: test_exprs test_expr_child_limit runs slow Sub-task Resolved Unassigned
          28.
          Need to support sum_init_zero for Double and Decimal Sub-task Open Unassigned
          29.
          Use max_cnf_exprs query option in CNF rule Sub-task Open Unassigned
          30.
          Make IN clause more efficient in Calcite Planner Sub-task Open Unassigned
          31.
          Implement ParserTest unit tests for Calcite Planner Sub-task Open Unassigned
          32.
          Support explain statement in Calcite Planner Sub-task Resolved Steve Carlin
          33.
          Calcite planner does not take advantage of the hash partition of previous aggregates Sub-task Open Unassigned
          34.
          Calcite planner: convert expressions to normal form for performance Sub-task Resolved Unassigned
          35.
          Calcite planner: Fix issues with quotes Sub-task Resolved Unassigned
          36.
          Calcite planner: fix datetime/interval issues for tpcds queries Sub-task Resolved Steve Carlin
          37.
          Calcite planner: duplicate table in a query fails Sub-task Resolved Unassigned
          38.
          Calcite planner: Need some translation rules to get tpcds queries to work Sub-task Resolved Unassigned
          39.
          Calcite planner: fix aggregation.test queries Sub-task Resolved Unassigned
          40.
          Calcite Planner: IMPALA-1519 query throws exception Sub-task Open Unassigned
          41.
          Calcite planner: Add support for various analytic and agg functions Sub-task Open Unassigned
          42.
          Calcite planner: Bug fixes for an analytics.test Sub-task Resolved Unassigned
          43.
          Calcite Planner: some scalar subquery throws exception Sub-task Open Unassigned
          44.
          Calcite planner: parsing error on bracket hint comment Sub-task Open Unassigned
          45.
          Calcite planner: group_concat failing with distinct Sub-task Resolved Unassigned
          46.
          Calcite planner: Make exceptions easier to classify Sub-task Resolved Joe McDonnell
          47.
          Crash in RawValue::PrintValue() when running query_test/test_chars.py Sub-task Open Unassigned
          48.
          Calcite planner: support sub-millisecond datetime parts Sub-task Open Unassigned
          49.
          Calcite planner: support decode function Sub-task Open Unassigned
          50.
          ORC tables hit IllegalStateException due to "row__id" column Sub-task Open Unassigned
          51.
          Calcite Planner: fix || operator (both concat and or) Sub-task Open Unassigned
          52.
          Calcite planner: support in clause coercing Sub-task Open Unassigned
          53.
          Calcite Planner: Handle functions taking literal types from a lower level Sub-task Open Unassigned
          54.
          Calcite planner: "real" type should be treated as double Sub-task Open Unassigned
          55.
          Calcite planner: Derive default decimal precision for functions Sub-task Open Unassigned
          56.
          Calcite planner: support for functions in exprs.test Sub-task Open Unassigned
          57.
          Calcite planner: handle escaped characters in string literal Sub-task Open Unassigned
          58.
          Calcite planner: run unsupported query options through original planner Sub-task Open Unassigned
          59.
          Calcite planner: need to support query option appx_count_distinct Sub-task Open Unassigned
          60.
          Calcite planner: support decimal_v1 query option Sub-task Open Unassigned
          61.
          Calcite planner: wrong results when intersect mixed with union Sub-task Open Unassigned
          62.
          Calcite planner: Fix explicit_cast regression in tpcds 32 Sub-task Resolved Steve Carlin
          63.
          Calcite planner is falling back incorrectly for some select statements Sub-task Open Unassigned
          64.
          Calcite Planner: Handle Join Parsing issues Sub-task Open Unassigned
          65.
          Calcite Planner: support semi joins Sub-task Open Unassigned
          66.
          Calcite planner: support anti joins Sub-task Open Unassigned
          67.
          Calcite Planner: Handle straight_join hint Sub-task Open Unassigned
          68.
          Calcite Planner: Fix exception when null is in values clause Sub-task Open Unassigned
          69.
          Calcite Planner: Handle Filter above Sort Sub-task Open Unassigned
          70.
          Calcite Planner: Push filter rel nodes through project rel nodes Sub-task Open Unassigned
          71.
          Calcite Planner: remove empty sort keys Sub-task Open Unassigned
          72.
          Calcite planner: Allow limit clause in subquery Sub-task Open Unassigned
          73.
          Calcite Planner: Exception being thrown on literal value check Sub-task Open Unassigned
          74.
          Calcite planner: Need special code for null casting to a decimal Sub-task Open Unassigned
          75.
          Calcite Planner: return proper labels for columns Sub-task Open Unassigned
          76.
          Calcite planner: outer join not aggregating nulls properly Sub-task Open Unassigned

          Activity

            People

              scarlin Steve Carlin
              scarlin Steve Carlin
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated: