hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vineet Garg (JIRA)" <>
Subject [jira] [Updated] (HIVE-15192) Use Calcite to de-correlate and plan subqueries
Date Fri, 16 Dec 2016 01:53:58 GMT


Vineet Garg updated HIVE-15192:
    Attachment: HIVE-15192.10.patch

> Use Calcite to de-correlate and plan subqueries
> -----------------------------------------------
>                 Key: HIVE-15192
>                 URL:
>             Project: Hive
>          Issue Type: Task
>          Components: Logical Optimizer
>            Reporter: Vineet Garg
>            Assignee: Vineet Garg
>              Labels: sub-query
>         Attachments: HIVE-15192.10.patch, HIVE-15192.2.patch, HIVE-15192.3.patch, HIVE-15192.4.patch,
HIVE-15192.5.patch, HIVE-15192.6.patch, HIVE-15192.7.patch, HIVE-15192.8.patch, HIVE-15192.9.patch,
> HIVE currently tranform subqueries into SEMI-JOIN or LEFT OUTER JOIN. This transformation
occurs on query AST before generating logical plan. These transformations are described at
[Link to original spec |].
Such transformations aren't able to handle a lot of subqueries, as a result HIVE imposes various
restrictions on the type of queries it could handle e.g. Hive disallows nested subqueries.
All current restrictions are detailed in above linked document.
> This patch is 1st phase of getting rid of these transformations and leverage Calcite's
functionality to plan such queries. 
> Next phases will be lifting restrictions one by one. 
> Note that this patch already lifts one restriction *Restriction.6.m* (The LHS in a SubQuery
must have all its Column References be qualified)
> Known issues with this patch are:
>  * Return path tests fails for various reasons and are currently disabled. We plan to
fix and re-enable this later.
>   * Semi-join optimization (HIVE-15227) is disabled by default as it doesn't work with
this patch. We plan to fix this and re-enable it by default.

This message was sent by Atlassian JIRA

View raw message