You are viewing a plain text version of this content. The canonical link for it is here.
Posted to gitbox@hive.apache.org by GitBox <gi...@apache.org> on 2022/10/05 20:01:39 UTC

[GitHub] [hive] kasakrisz commented on a diff in pull request #3588: HIVE-26524: Use Calcite to remove sections of a query plan known never produces rows

kasakrisz commented on code in PR #3588:
URL: https://github.com/apache/hive/pull/3588#discussion_r985560069


##########
ql/src/test/results/clientpositive/llap/float_equality.q.out:
##########
@@ -9,9 +9,7 @@ POSTHOOK: Input: _dummy_database@_dummy_table
 1
 PREHOOK: query: select 1 where -0.0<0.0
 PREHOOK: type: QUERY
-PREHOOK: Input: _dummy_database@_dummy_table

Review Comment:
   This was the original plan: empty result query is converted to a sub-query hence the the limit is not treated as global limit and the query is executed. 
   ```
   HiveProject(_o__c0=[1])
     HiveSortLimit(fetch=[0])
       HiveProject(DUMMY=[0])
         HiveTableScan(table=[[_dummy_database, _dummy_table]], table:alias=[_dummy_table])
   ```
   These is a TS on `_dummy_table`
   ```
   STAGE PLANS:
     Stage: Stage-0
       Fetch Operator
         limit: -1
         Processor Tree:
           TableScan
             alias: _dummy_table
             Row Limit Per Split: 1
             Limit
               Number of rows: 0
               Select Operator
                 Select Operator
                   expressions: 1 (type: int)
                   outputColumnNames: _col0
                   ListSink
   ```
   The new plan is just an empty values op.
   ```
   HiveValues(tuples=[[]])
   ```
   There is no TS,
   ```
   STAGE PLANS:
     Stage: Stage-0
       Fetch Operator
         limit: 0
         Processor Tree:
           ListSink
   ```
   



##########
ql/src/test/results/clientpositive/llap/fold_case.q.out:
##########
@@ -177,7 +180,7 @@ STAGE PLANS:
                           sort order: 
                           Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: COMPLETE
                           value expressions: _col0 (type: bigint)
-            Execution mode: vectorized, llap
+            Execution mode: llap

Review Comment:
   The vectorization was lost because instead of a real table the `_dummy_table` with empty schema is scanned. It affects only this mapper. Rest of the plan (Reducer) is still vectorized.



-- 
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: gitbox-unsubscribe@hive.apache.org

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


---------------------------------------------------------------------
To unsubscribe, e-mail: gitbox-unsubscribe@hive.apache.org
For additional commands, e-mail: gitbox-help@hive.apache.org