linliu-code commented on code in PR #13498:
URL: https://github.com/apache/hudi/pull/13498#discussion_r2198092274
##########
hudi-common/src/main/java/org/apache/hudi/common/table/read/BufferedRecordMergerFactory.java:
##########
@@ -45,27 +46,34 @@
* Factory to create a {@link BufferedRecordMerger}.
*/
public class BufferedRecordMergerFactory {
+
+ private BufferedRecordMergerFactory() {
+ }
+
public static <T> BufferedRecordMerger<T> create(HoodieReaderContext<T>
readerContext,
RecordMergeMode
recordMergeMode,
boolean
enablePartialMerging,
Option<HoodieRecordMerger>
recordMerger,
Option<String>
orderingFieldName,
Option<String> payloadClass,
Schema readerSchema,
- TypedProperties props) {
+ TypedProperties props,
+ PartialUpdateMode
partialUpdateMode) {
if (enablePartialMerging) {
BufferedRecordMerger<T> deleteRecordMerger = create(
- readerContext, recordMergeMode, false, recordMerger,
orderingFieldName, payloadClass, readerSchema, props);
+ readerContext, recordMergeMode, false, recordMerger,
orderingFieldName, payloadClass, readerSchema, props, partialUpdateMode);
return new PartialUpdateBufferedRecordMerger<>(readerContext,
recordMerger, deleteRecordMerger, readerSchema, props);
}
+
switch (recordMergeMode) {
case COMMIT_TIME_ORDERING:
- return new CommitTimeBufferedRecordMerger<>();
+ return new CommitTimeBufferedRecordMerger<>(readerContext,
partialUpdateMode, props, readerSchema);
Review Comment:
Yeah, I was also thinking about that. Somehow I changed my mind to see if
maintaining less mergers is better. Ok, i will refactor it since you all think
more mergers are fine.
--
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]