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

yihua 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 bf787205bbfb refactor(utilities): use SLF4J parameterized logging 
instead of string concatenation (#19185)
bf787205bbfb is described below

commit bf787205bbfbf094600e0856fbe2f0d95aa91c03
Author: voonhous <[email protected]>
AuthorDate: Sun Jul 5 04:28:57 2026 +0800

    refactor(utilities): use SLF4J parameterized logging instead of string 
concatenation (#19185)
---
 .../java/org/apache/hudi/utilities/HoodieDataTableValidator.java    | 4 ++--
 .../org/apache/hudi/utilities/sources/helpers/DFSPathSelector.java  | 5 ++---
 .../apache/hudi/utilities/sources/helpers/S3EventsMetaSelector.java | 2 +-
 .../hudi/utilities/functional/TestHoodieSnapshotExporter.java       | 2 +-
 .../apache/hudi/utilities/offlinejob/HoodieOfflineJobTestBase.java  | 6 +++---
 5 files changed, 9 insertions(+), 10 deletions(-)

diff --git 
a/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieDataTableValidator.java
 
b/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieDataTableValidator.java
index f34fe8650401..79ca3b647194 100644
--- 
a/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieDataTableValidator.java
+++ 
b/hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieDataTableValidator.java
@@ -252,7 +252,7 @@ public class HoodieDataTableValidator implements 
Serializable {
     try {
       validator.run();
     } catch (Throwable throwable) {
-      log.error("Fail to do hoodie Data table validation for " + 
validator.cfg, throwable);
+      log.error("Fail to do hoodie Data table validation for {}", 
validator.cfg, throwable);
     } finally {
       jsc.stop();
     }
@@ -320,7 +320,7 @@ public class HoodieDataTableValidator implements 
Serializable {
 
         if (!danglingFilePaths.isEmpty() && danglingFilePaths.size() > 0) {
           log.error("Data table validation failed due to dangling files count 
{}, found before active timeline", danglingFilePaths.size());
-          danglingFilePaths.forEach(entry -> log.error("Dangling file: " + 
entry.toString()));
+          danglingFilePaths.forEach(entry -> log.error("Dangling file: {}", 
entry));
           finalResult = false;
           if (!cfg.ignoreFailed) {
             throw new HoodieValidationException(
diff --git 
a/hudi-utilities/src/main/java/org/apache/hudi/utilities/sources/helpers/DFSPathSelector.java
 
b/hudi-utilities/src/main/java/org/apache/hudi/utilities/sources/helpers/DFSPathSelector.java
index 071499d13a9b..1c7788efe3e0 100644
--- 
a/hudi-utilities/src/main/java/org/apache/hudi/utilities/sources/helpers/DFSPathSelector.java
+++ 
b/hudi-utilities/src/main/java/org/apache/hudi/utilities/sources/helpers/DFSPathSelector.java
@@ -91,7 +91,7 @@ public class DFSPathSelector implements Serializable {
           new Class<?>[] {TypedProperties.class, Configuration.class},
           props, conf);
 
-      log.info("Using path selector " + selector.getClass().getName());
+      log.info("Using path selector {}", selector.getClass().getName());
       return selector;
     } catch (Exception e) {
       throw new HoodieException("Could not load source selector class " + 
sourceSelectorClass, e);
@@ -125,8 +125,7 @@ public class DFSPathSelector implements Serializable {
                                                                                
  long sourceLimit) {
     try {
       // obtain all eligible files under root folder.
-      log.info("Root path => " + getStringWithAltKeys(props, 
DFSPathSelectorConfig.ROOT_INPUT_PATH)
-          + " source limit => " + sourceLimit);
+      log.info("Root path => {} source limit => {}", 
getStringWithAltKeys(props, DFSPathSelectorConfig.ROOT_INPUT_PATH), 
sourceLimit);
       long lastCheckpointTime = lastCheckpointStr.map(e -> 
Long.parseLong(e.getCheckpointKey())).orElse(Long.MIN_VALUE);
       List<FileStatus> eligibleFiles = listEligibleFiles(
           fs, new Path(getStringWithAltKeys(props, 
DFSPathSelectorConfig.ROOT_INPUT_PATH)), lastCheckpointTime);
diff --git 
a/hudi-utilities/src/main/java/org/apache/hudi/utilities/sources/helpers/S3EventsMetaSelector.java
 
b/hudi-utilities/src/main/java/org/apache/hudi/utilities/sources/helpers/S3EventsMetaSelector.java
index b5ccaa58f374..e3ec3bdc57f8 100644
--- 
a/hudi-utilities/src/main/java/org/apache/hudi/utilities/sources/helpers/S3EventsMetaSelector.java
+++ 
b/hudi-utilities/src/main/java/org/apache/hudi/utilities/sources/helpers/S3EventsMetaSelector.java
@@ -73,7 +73,7 @@ public class S3EventsMetaSelector extends 
CloudObjectsSelector {
               ReflectionUtils.loadClass(
                   sourceSelectorClass, new Class<?>[] {TypedProperties.class}, 
props);
 
-      log.info("Using path selector " + selector.getClass().getName());
+      log.info("Using path selector {}", selector.getClass().getName());
       return selector;
     } catch (Exception e) {
       throw new HoodieException("Could not load source selector class " + 
sourceSelectorClass, e);
diff --git 
a/hudi-utilities/src/test/java/org/apache/hudi/utilities/functional/TestHoodieSnapshotExporter.java
 
b/hudi-utilities/src/test/java/org/apache/hudi/utilities/functional/TestHoodieSnapshotExporter.java
index 542349240189..ebe26c89e9c3 100644
--- 
a/hudi-utilities/src/test/java/org/apache/hudi/utilities/functional/TestHoodieSnapshotExporter.java
+++ 
b/hudi-utilities/src/test/java/org/apache/hudi/utilities/functional/TestHoodieSnapshotExporter.java
@@ -112,7 +112,7 @@ public class TestHoodieSnapshotExporter extends 
SparkClientFunctionalTestHarness
     }
     List<StoragePathInfo> pathInfoList = storage.listFiles(new 
StoragePath(sourcePath));
     for (StoragePathInfo pathInfo : pathInfoList) {
-      LOG.info(">>> Prepared test file: " + pathInfo.getPath());
+      LOG.info(">>> Prepared test file: {}", pathInfo.getPath());
     }
   }
 
diff --git 
a/hudi-utilities/src/test/java/org/apache/hudi/utilities/offlinejob/HoodieOfflineJobTestBase.java
 
b/hudi-utilities/src/test/java/org/apache/hudi/utilities/offlinejob/HoodieOfflineJobTestBase.java
index 4731c269040b..634c434d3845 100644
--- 
a/hudi-utilities/src/test/java/org/apache/hudi/utilities/offlinejob/HoodieOfflineJobTestBase.java
+++ 
b/hudi-utilities/src/test/java/org/apache/hudi/utilities/offlinejob/HoodieOfflineJobTestBase.java
@@ -110,7 +110,7 @@ public class HoodieOfflineJobTestBase extends 
UtilitiesTestBase {
     static void assertNCompletedCommits(int expected, String tablePath) {
       HoodieTableMetaClient meta = createMetaClient(storage, tablePath);
       HoodieTimeline timeline = 
meta.getActiveTimeline().getWriteTimeline().filterCompletedInstants();
-      LOG.info("Timeline Instants=" + meta.getActiveTimeline().getInstants());
+      LOG.info("Timeline Instants={}", meta.getActiveTimeline().getInstants());
       int numCommits = timeline.countInstants();
       assertEquals(expected, numCommits, "Got=" + numCommits + ", exp =" + 
expected);
     }
@@ -118,7 +118,7 @@ public class HoodieOfflineJobTestBase extends 
UtilitiesTestBase {
     static void assertNCleanCommits(int expected, String tablePath) {
       HoodieTableMetaClient meta = createMetaClient(storage, tablePath);
       HoodieTimeline timeline = 
meta.getActiveTimeline().getCleanerTimeline().filterCompletedInstants();
-      LOG.info("Timeline Instants=" + meta.getActiveTimeline().getInstants());
+      LOG.info("Timeline Instants={}", meta.getActiveTimeline().getInstants());
       int numCleanCommits = timeline.countInstants();
       assertEquals(expected, numCleanCommits, "Got=" + numCleanCommits + ", 
exp =" + expected);
     }
@@ -126,7 +126,7 @@ public class HoodieOfflineJobTestBase extends 
UtilitiesTestBase {
     static void assertNClusteringCommits(int expected, String tablePath) {
       HoodieTableMetaClient meta = createMetaClient(storage, tablePath);
       HoodieTimeline timeline = 
meta.getActiveTimeline().getCompletedReplaceTimeline();
-      LOG.info("Timeline Instants=" + meta.getActiveTimeline().getInstants());
+      LOG.info("Timeline Instants={}", meta.getActiveTimeline().getInstants());
       int numCommits = timeline.countInstants();
       assertEquals(expected, numCommits, "Got=" + numCommits + ", exp =" + 
expected);
     }

Reply via email to