This is an automated email from the ASF dual-hosted git repository.
danny0405 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 00709d2928d [HUDI-8676] Improve ValidationUtils performance by lazy
appending msg (#12450)
00709d2928d is described below
commit 00709d2928d95d36146c23ff6a1ae0d1537a51a0
Author: TheR1sing3un <[email protected]>
AuthorDate: Wed Dec 11 11:09:33 2024 +0800
[HUDI-8676] Improve ValidationUtils performance by lazy appending msg
(#12450)
---
.../compact/plan/generators/BaseHoodieCompactionPlanGenerator.java | 2 +-
.../src/main/java/org/apache/hudi/common/util/ValidationUtils.java | 4 +++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git
a/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/table/action/compact/plan/generators/BaseHoodieCompactionPlanGenerator.java
b/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/table/action/compact/plan/generators/BaseHoodieCompactionPlanGenerator.java
index 79059c2ca34..609c468d8bc 100644
---
a/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/table/action/compact/plan/generators/BaseHoodieCompactionPlanGenerator.java
+++
b/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/table/action/compact/plan/generators/BaseHoodieCompactionPlanGenerator.java
@@ -172,7 +172,7 @@ public abstract class BaseHoodieCompactionPlanGenerator<T
extends HoodieRecordPa
ValidationUtils.checkArgument(
compactionPlan.getOperations().stream().noneMatch(
op -> fgIdsInPendingCompactionAndClustering.contains(new
HoodieFileGroupId(op.getPartitionPath(), op.getFileId()))),
- "Bad Compaction Plan. FileId MUST NOT have multiple pending
compactions. "
+ () -> "Bad Compaction Plan. FileId MUST NOT have multiple pending
compactions. "
+ "Please fix your strategy implementation.
FileIdsWithPendingCompactions :" + fgIdsInPendingCompactionAndClustering
+ ", Selected workload :" + compactionPlan);
if (compactionPlan.getOperations().isEmpty()) {
diff --git
a/hudi-io/src/main/java/org/apache/hudi/common/util/ValidationUtils.java
b/hudi-io/src/main/java/org/apache/hudi/common/util/ValidationUtils.java
index 3350c9a8608..288e51868ac 100644
--- a/hudi-io/src/main/java/org/apache/hudi/common/util/ValidationUtils.java
+++ b/hudi-io/src/main/java/org/apache/hudi/common/util/ValidationUtils.java
@@ -47,7 +47,9 @@ public class ValidationUtils {
* Ensures the truth of an expression, throwing the custom errorMessage
otherwise.
*/
public static void checkArgument(final boolean expression, final
Supplier<String> errorMessageSupplier) {
- checkArgument(expression, errorMessageSupplier.get());
+ if (!expression) {
+ throw new IllegalArgumentException(errorMessageSupplier.get());
+ }
}
/**