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]

Reply via email to