Balazs Hevele has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/24089 )

Change subject: IMPALA-14850: Codegen tuple DeepCopy for hash join
......................................................................


Patch Set 20:

(4 comments)

http://gerrit.cloudera.org:8080/#/c/24089/19/be/src/exec/partitioned-hash-join-builder.cc
File be/src/exec/partitioned-hash-join-builder.cc:

http://gerrit.cloudera.org:8080/#/c/24089/19/be/src/exec/partitioned-hash-join-builder.cc@1455
PS19, Line 1455:       codegen->ReplaceCallSites(proces
> Is it ok for this to be non ok? Shouldn't the function return an error in t
No, a non-ok status should be propagated.
Moved handling of this to PhjBuilderConfig::Codegen, similarly to other 
codegened functions in this class.


http://gerrit.cloudera.org:8080/#/c/24089/19/be/src/runtime/buffered-tuple-stream.h
File be/src/runtime/buffered-tuple-stream.h:

http://gerrit.cloudera.org:8080/#/c/24089/19/be/src/runtime/buffered-tuple-stream.h@724
PS19, Line 724:   static bool IR_ALWAYS_INLINE CopyString(const Tuple *tuple, 
int null_byte_offset,
              :       uint8_t null_bit_mask, int tuple_offset, uint8_t** data, 
const uint8_t* data_end);
              :
              :   static bool IR_ALWAYS_INLINE 
CopyTupleNullIndicators(TupleRow* row, int num_tuples,
              :       uint8_t** data, const uint8_t* data_end);
              :
              :   static bool IR_ALWAYS_INLINE CopyTupleFixedLen(TupleRow* row, 
int tuple_idx,
              :       int tuple_size, int8_t** data, const int8_t* data_end, b
> These could have IR_ALWAYS_INLINE
Done


http://gerrit.cloudera.org:8080/#/c/24089/19/be/src/runtime/buffered-tuple-stream.cc
File be/src/runtime/buffered-tuple-stream.cc:

http://gerrit.cloudera.org:8080/#/c/24089/19/be/src/runtime/buffered-tuple-stream.cc@1007
PS19, Line 1007: //   %result = call i1
               : //       
@_ZN6impala19BufferedTupleStream17CopyTupleFixedLenEPNS_8TupleRowEiiPPaPKab
               : //       (%"class.impala::TupleRow"* %row, i32 0, i32 17, i8** 
%data, i8* %data_end,
               : //       i1 false)
> This is the non-optimized code, right? I would expect CopyTupleFixedLen to
Yes, this is the non-optimized IR as emitted in this function.


http://gerrit.cloudera.org:8080/#/c/24089/19/be/src/runtime/buffered-tuple-stream.cc@1091
PS19, Line 1091: continue
> nit: maybe another name would be better than "ok"? It suggests not having e
Renamed it to "continue".



--
To view, visit http://gerrit.cloudera.org:8080/24089
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I63e32babdbaf56095478c6c66afb9cb91189f946
Gerrit-Change-Number: 24089
Gerrit-PatchSet: 20
Gerrit-Owner: Balazs Hevele <[email protected]>
Gerrit-Reviewer: Balazs Hevele <[email protected]>
Gerrit-Reviewer: Csaba Ringhofer <[email protected]>
Gerrit-Reviewer: Impala Public Jenkins <[email protected]>
Gerrit-Reviewer: Joe McDonnell <[email protected]>
Gerrit-Reviewer: Michael Smith <[email protected]>
Gerrit-Comment-Date: Wed, 01 Apr 2026 07:59:27 +0000
Gerrit-HasComments: Yes

Reply via email to