Details
-
Sub-task
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
notVectorizedReason: PTF operator: *** only UNBOUNDED start frame is supported
Currently, bounded windows are not supported in VectorPTFOperator. If we simply remove the check compile-time:
https://github.com/apache/hive/blob/master/ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/Vectorizer.java#L2911
if (!windowFrameDef.isStartUnbounded()) { setOperatorIssue(functionName + " only UNBOUNDED start frame is supported"); return false; }
We get incorrect results, that's because vectorized codepath completely ignores boundaries, and simply iterates through all the input batches in VectorPTFGroupBatches:
for (VectorPTFEvaluatorBase evaluator : evaluators) { evaluator.evaluateGroupBatch(batch); if (isLastGroupBatch) { evaluator.doLastBatchWork(); } }
Attachments
Issue Links
- causes
-
HIVE-26074 PTF Vectorization: BoundaryScanner for varchar
- Closed
- Dependent
-
HIVE-24945 PTF: Support vectorization for lead/lag functions
- Closed
- is related to
-
HIVE-17164 Vectorization: Support PTF (Part 2: Unbounded Support-- Turn ON by default)
- Resolved
-
HIVE-16369 Vectorization: Support PTF (Part 1: No Custom Window Framing -- Default Only)
- Closed
- relates to
-
HIVE-24905 only CURRENT ROW end frame is supported for RANGE
- Open
- links to