deniskuzZ commented on code in PR #6607:
URL: https://github.com/apache/hive/pull/6607#discussion_r3637519438
##########
ql/src/java/org/apache/hadoop/hive/ql/exec/vector/expressions/StringGroupConcatColCol.java:
##########
@@ -319,7 +319,16 @@ public void evaluate(VectorizedRowBatch batch) throws
HiveException {
/*
* Do careful maintenance of the outputColVector.noNulls flag.
+ *
+ * HIVE-28503: when both inputs have noNulls=true the output
vector(outV) must set true.
+ * The output BytesColumnVector is reused across batches, so if a prior
batch
+ * left noNulls=false we have to reset it here — otherwise downstream
+ * consumers that utilizing noNulls will treat these rows as NULL
+ * even though every setConcat below succeeded. This matches what the
+ * sibling scalar variants (StringGroupColConcatStringScalar and
+ * StringScalarConcatStringGroupCol) already do on their no-nulls paths.
*/
+ outV.noNulls = true;
Review Comment:
@maheshrajus should we do instead
````
if (!outV.noNulls) {
// Assume it is almost always a performance win to fill all of isNull
so we can
// safely reset noNulls.
Arrays.fill(outV.isNull, false);
outV.noNulls = true;
}
````
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]