You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Zoltan Haindrich (Jira)" <ji...@apache.org> on 2020/11/10 17:07:00 UTC
[jira] [Updated] (HIVE-24365) SWO should not create complex and
redundant filter expressions
[ https://issues.apache.org/jira/browse/HIVE-24365?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Zoltan Haindrich updated HIVE-24365:
------------------------------------
Description:
for q88 we have complex and mostly unreadable filter expressions; because before merging 2 branches the TS filterexpression is pushed into a FIL operator.
consider 3 scans with filters: (A,B,C)
initially we have
{code}
T(A)
T(B)
T(C)
{code}
after merging A,B
{code}
T(A || B) -> FIL(A)
-> FIL(B)
T(C)
{code}
right now if we merge C as well:
{code}
T(A || B || C) -> FIL(A AND (A || B))
-> FIL(B AND (A || B))
-> FIL(C)
{code}
was:
for q88 we have complex and mostly unreadable filter expressions; because before merging 2 branches the TS filterexpression is pushed into a FIL operator.
> SWO should not create complex and redundant filter expressions
> --------------------------------------------------------------
>
> Key: HIVE-24365
> URL: https://issues.apache.org/jira/browse/HIVE-24365
> Project: Hive
> Issue Type: Bug
> Reporter: Zoltan Haindrich
> Assignee: Zoltan Haindrich
> Priority: Major
>
> for q88 we have complex and mostly unreadable filter expressions; because before merging 2 branches the TS filterexpression is pushed into a FIL operator.
> consider 3 scans with filters: (A,B,C)
> initially we have
> {code}
> T(A)
> T(B)
> T(C)
> {code}
> after merging A,B
> {code}
> T(A || B) -> FIL(A)
> -> FIL(B)
> T(C)
> {code}
> right now if we merge C as well:
> {code}
> T(A || B || C) -> FIL(A AND (A || B))
> -> FIL(B AND (A || B))
> -> FIL(C)
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)