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

voonhous 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 e38e043de9e5 refactor: Retire leftover Avro Schema usages in 
AvroSchemaUtils and LSMTimelineWriter (#19153)
e38e043de9e5 is described below

commit e38e043de9e59f5b455defb6739802e2eb94f15b
Author: voonhous <[email protected]>
AuthorDate: Fri Jul 3 18:51:55 2026 +0800

    refactor: Retire leftover Avro Schema usages in AvroSchemaUtils and 
LSMTimelineWriter (#19153)
    
    * refactor(common): Remove dead AvroSchemaUtils.createSchemaErrorString 
overload
    
    The Avro-typed createSchemaErrorString(String, Schema, Schema) has no 
callers in
    main or test; all sites use the HoodieSchema twin
    HoodieSchemaUtils.createSchemaErrorString(String, HoodieSchema, 
HoodieSchema).
    Retire the legacy Avro overload.
    
    Part of the Avro Schema -> HoodieSchema migration (#14263).
    
    * refactor(client): Drop redundant Avro Schema local in LSMTimelineWriter
    
    Inline 
HoodieSchema.fromAvroSchema(HoodieLSMTimelineInstant.getClassSchema())
    as the sibling write paths already do (previously an intermediate Avro 
Schema
    local was wrapped a line later), removing the local and the now-unused
    org.apache.avro.Schema import. Log output is unchanged: 
HoodieSchema.toString()
    delegates to the wrapped Avro schema.
    
    Incidental (editor auto-format): two concatenated log statements in this 
file
    are normalized to parameterized slf4j form.
    
    Part of the Avro Schema -> HoodieSchema migration (#14263).
---
 .../hudi/client/timeline/versioning/v2/LSMTimelineWriter.java  | 10 ++++------
 .../src/main/java/org/apache/hudi/avro/AvroSchemaUtils.java    |  4 ----
 2 files changed, 4 insertions(+), 10 deletions(-)

diff --git 
a/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/timeline/versioning/v2/LSMTimelineWriter.java
 
b/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/timeline/versioning/v2/LSMTimelineWriter.java
index 1f150ef9d08a..07ea95d0d953 100644
--- 
a/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/timeline/versioning/v2/LSMTimelineWriter.java
+++ 
b/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/timeline/versioning/v2/LSMTimelineWriter.java
@@ -49,7 +49,6 @@ import org.apache.hudi.storage.StoragePath;
 import org.apache.hudi.table.HoodieTable;
 
 import lombok.extern.slf4j.Slf4j;
-import org.apache.avro.Schema;
 import org.apache.avro.generic.IndexedRecord;
 
 import java.io.IOException;
@@ -137,9 +136,8 @@ public class LSMTimelineWriter {
       throw new HoodieIOException("Failed to check archiving file before 
write: " + filePath, ioe);
     }
     try (HoodieFileWriter writer = openWriter(filePath)) {
-      Schema wrapperSchema = HoodieLSMTimelineInstant.getClassSchema();
-      log.info("Writing schema " + wrapperSchema.toString());
-      HoodieSchema schema = HoodieSchema.fromAvroSchema(wrapperSchema);
+      HoodieSchema schema = 
HoodieSchema.fromAvroSchema(HoodieLSMTimelineInstant.getClassSchema());
+      log.info("Writing schema {}", schema);
       for (ActiveAction activeAction : activeActions) {
         try {
           preWriteCallback.ifPresent(callback -> 
callback.accept(activeAction));
@@ -147,7 +145,7 @@ public class LSMTimelineWriter {
           final HoodieLSMTimelineInstant metaEntry = 
MetadataConversionUtils.createLSMTimelineInstant(activeAction, metaClient);
           writer.write(metaEntry.getInstantTime(), new 
HoodieAvroIndexedRecord(metaEntry), schema);
         } catch (Exception e) {
-          log.error("Failed to write instant: " + 
activeAction.getInstantTime(), e);
+          log.error("Failed to write instant: {}", 
activeAction.getInstantTime(), e);
           exceptionHandler.ifPresent(handler -> handler.accept(e));
         }
       }
@@ -290,7 +288,7 @@ public class LSMTimelineWriter {
       compactFiles(candidateFiles, compactedFileName);
       // 4. update the manifest file
       updateManifest(candidateFiles, compactedFileName);
-      log.info("Finishes compaction of source files: " + candidateFiles);
+      log.info("Finishes compaction of source files: {}", candidateFiles);
       return Option.of(compactedFileName);
     }
     return Option.empty();
diff --git 
a/hudi-common/src/main/java/org/apache/hudi/avro/AvroSchemaUtils.java 
b/hudi-common/src/main/java/org/apache/hudi/avro/AvroSchemaUtils.java
index 90a8e9274b8a..78ffcf572312 100644
--- a/hudi-common/src/main/java/org/apache/hudi/avro/AvroSchemaUtils.java
+++ b/hudi-common/src/main/java/org/apache/hudi/avro/AvroSchemaUtils.java
@@ -114,10 +114,6 @@ public class AvroSchemaUtils {
     return Schema.createUnion(Schema.create(Schema.Type.NULL), schema);
   }
 
-  public static String createSchemaErrorString(String errorMessage, Schema 
writerSchema, Schema tableSchema) {
-    return String.format("%s\nwriterSchema: %s\ntableSchema: %s", 
errorMessage, writerSchema, tableSchema);
-  }
-
   /**
    * Create a new schema by force changing all the fields as nullable.
    *

Reply via email to