the-other-tim-brown commented on code in PR #13444:
URL: https://github.com/apache/hudi/pull/13444#discussion_r2191369244
##########
hudi-common/src/main/java/org/apache/hudi/common/table/read/FileGroupRecordBuffer.java:
##########
@@ -565,27 +570,62 @@ protected boolean hasNextBaseRecord(T baseRecord,
BufferedRecord<T> logRecordInf
Pair<Boolean, T> isDeleteAndRecord = merge(baseRecordInfo,
logRecordInfo);
if (!isDeleteAndRecord.getLeft()) {
// Updates
- nextRecord = readerContext.seal(isDeleteAndRecord.getRight());
+ nextRecord =
readerContext.seal(applyOutputSchemaConversion(isDeleteAndRecord.getRight()));
Review Comment:
The maintenance is not going to become any easier. Every record buffer
implementation will also need a CDC version. How is that easier to maintain?
There will always be some code that needs to run per row when we are
merging. Currently this only runs when there are updates, deletes, or new log
records. That is not `per-row` exactly. If you are so worried about a null
check, why aren't you worried about [auto-boxing performance
degradation](https://github.com/apache/hudi/pull/13511/files#diff-08630014159096d27df01401a0fe2178f535d90045d09c1b5dfe8e0cefb7ee66R66)
and the [per merge
checks](https://github.com/apache/hudi/pull/13511/files#diff-44ea0a598fb8c09126a1dcccad5c3f572c8aadae48c18dcc800e977a4cfb1c5fR313)
that you recently approved and merged? Where is the line drawn? It seems
arbitrary.
--
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]