You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Krisztian Kasa (Jira)" <ji...@apache.org> on 2022/11/17 05:26:00 UTC

[jira] [Created] (HIVE-26747) Remove implementor from HiveRelNode

Krisztian Kasa created HIVE-26747:
-------------------------------------

             Summary: Remove implementor from HiveRelNode
                 Key: HIVE-26747
                 URL: https://issues.apache.org/jira/browse/HIVE-26747
             Project: Hive
          Issue Type: Task
          Components: CBO
            Reporter: Krisztian Kasa
            Assignee: Krisztian Kasa


Calcite's VolcanoPlanner [1] relies on calling convention [2]. In Hive this is represented by the [HiveRelNode|https://github.com/apache/hive/blob/master/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/reloperators/HiveRelNode.java] interface's {{CONVENTION}} field.

This interface has to be implemented by all Hive operators to have the Hive calling convention behavior. The interface also defines the
{code:java}
 void implement(Implementor implementor);
{code}
method but none of the operators gives an implementation and the method is never called.

[1] [https://15721.courses.cs.cmu.edu/spring2017/papers/14-optimizer1/graefe-icde1993.pdf]
[2] [https://arxiv.org/pdf/1802.10233.pdf] (Section 4, traits)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)