This is an automated email from the ASF dual-hosted git repository.

codope pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hudi.git


The following commit(s) were added to refs/heads/master by this push:
     new be4dfccbb24 [HUDI-6544] Remove unnecessary merge for bootstrap files 
in merge helper (#9216)
be4dfccbb24 is described below

commit be4dfccbb24794dfac3714818971229870d24a2c
Author: Jon Vexler <[email protected]>
AuthorDate: Tue Jul 18 11:20:57 2023 -0400

    [HUDI-6544] Remove unnecessary merge for bootstrap files in merge helper 
(#9216)
---
 .../hudi/table/action/commit/HoodieMergeHelper.java       | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git 
a/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/table/action/commit/HoodieMergeHelper.java
 
b/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/table/action/commit/HoodieMergeHelper.java
index 893ee3fc032..4df767b5e41 100644
--- 
a/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/table/action/commit/HoodieMergeHelper.java
+++ 
b/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/table/action/commit/HoodieMergeHelper.java
@@ -18,7 +18,6 @@
 
 package org.apache.hudi.table.action.commit;
 
-import org.apache.hudi.client.utils.ClosableMergingIterator;
 import org.apache.hudi.common.config.HoodieCommonConfig;
 import org.apache.hudi.common.model.HoodieBaseFile;
 import org.apache.hudi.common.model.HoodieRecord;
@@ -109,11 +108,6 @@ public class HoodieMergeHelper<T> extends BaseMergeHelper {
 
     try {
       ClosableIterator<HoodieRecord> recordIterator;
-
-      // In case writer's schema is simply a projection of the reader's one we 
can read
-      // the records in the projected schema directly
-      ClosableIterator<HoodieRecord> baseFileRecordIterator =
-          baseFileReader.getRecordIterator(isPureProjection ? writerSchema : 
readerSchema);
       Schema recordSchema;
       if (baseFile.getBootstrapBaseFile().isPresent()) {
         Path bootstrapFilePath = new 
Path(baseFile.getBootstrapBaseFile().get().getPath());
@@ -124,13 +118,12 @@ public class HoodieMergeHelper<T> extends BaseMergeHelper 
{
             mergeHandle.getPartitionFields(),
             mergeHandle.getPartitionValues());
         recordSchema = mergeHandle.getWriterSchemaWithMetaFields();
-        recordIterator = new ClosableMergingIterator<>(
-            baseFileRecordIterator,
-            (ClosableIterator<HoodieRecord>) 
bootstrapFileReader.getRecordIterator(recordSchema),
-            (left, right) -> left.joinWith(right, recordSchema));
+        recordIterator = (ClosableIterator<HoodieRecord>) 
bootstrapFileReader.getRecordIterator(recordSchema);
       } else {
-        recordIterator = baseFileRecordIterator;
+        // In case writer's schema is simply a projection of the reader's one 
we can read
+        // the records in the projected schema directly
         recordSchema = isPureProjection ? writerSchema : readerSchema;
+        recordIterator = baseFileReader.getRecordIterator(recordSchema);
       }
 
       boolean isBufferingRecords = 
ExecutorFactory.isBufferingRecords(writeConfig);

Reply via email to