This is an automated email from the ASF dual-hosted git repository.
lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/paimon.git
The following commit(s) were added to refs/heads/master by this push:
new 2ced69439 [core] MergeFunction.getResult return not null (#3136)
2ced69439 is described below
commit 2ced69439ff2067fe6ff6cad5dbb1fdf4bd13282
Author: Jingsong Lee <[email protected]>
AuthorDate: Mon Apr 1 18:35:36 2024 +0800
[core] MergeFunction.getResult return not null (#3136)
---
.../apache/paimon/mergetree/compact/DeduplicateMergeFunction.java | 1 -
.../apache/paimon/mergetree/compact/FirstRowMergeFunction.java | 1 -
.../paimon/mergetree/compact/FistRowMergeFunctionWrapper.java | 4 ----
.../mergetree/compact/FullChangelogMergeFunctionWrapper.java | 4 ++--
.../java/org/apache/paimon/mergetree/compact/MergeFunction.java | 5 +----
.../paimon/mergetree/compact/PartialUpdateMergeFunction.java | 8 --------
.../mergetree/compact/aggregate/AggregateMergeFunction.java | 1 -
.../org/apache/paimon/operation/KeyValueFileStoreReadTest.java | 5 -----
8 files changed, 3 insertions(+), 26 deletions(-)
diff --git
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/DeduplicateMergeFunction.java
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/DeduplicateMergeFunction.java
index 9c1cf0f5e..3d6b341e3 100644
---
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/DeduplicateMergeFunction.java
+++
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/DeduplicateMergeFunction.java
@@ -41,7 +41,6 @@ public class DeduplicateMergeFunction implements
MergeFunction<KeyValue> {
}
@Override
- @Nullable
public KeyValue getResult() {
return latestKv;
}
diff --git
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FirstRowMergeFunction.java
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FirstRowMergeFunction.java
index b955e0fea..a00e09f02 100644
---
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FirstRowMergeFunction.java
+++
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FirstRowMergeFunction.java
@@ -56,7 +56,6 @@ public class FirstRowMergeFunction implements
MergeFunction<KeyValue> {
}
}
- @Nullable
@Override
public KeyValue getResult() {
return first;
diff --git
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FistRowMergeFunctionWrapper.java
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FistRowMergeFunctionWrapper.java
index fe96658c9..a05330826 100644
---
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FistRowMergeFunctionWrapper.java
+++
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FistRowMergeFunctionWrapper.java
@@ -56,10 +56,6 @@ public class FistRowMergeFunctionWrapper implements
MergeFunctionWrapper<Changel
public ChangelogResult getResult() {
reusedResult.reset();
KeyValue result = mergeFunction.getResult();
- if (result == null) {
- return reusedResult;
- }
-
if (contains.test(result.key())) {
// empty
return reusedResult;
diff --git
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapper.java
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapper.java
index fe1bf0dc8..9d5dab1ae 100644
---
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapper.java
+++
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/FullChangelogMergeFunctionWrapper.java
@@ -100,11 +100,11 @@ public class FullChangelogMergeFunctionWrapper implements
MergeFunctionWrapper<C
if (isInitialized) {
KeyValue merged = mergeFunction.getResult();
if (topLevelKv == null) {
- if (merged != null && merged.isAdd()) {
+ if (merged.isAdd()) {
reusedResult.addChangelog(replace(reusedAfter,
RowKind.INSERT, merged));
}
} else {
- if (merged == null || !merged.isAdd()) {
+ if (!merged.isAdd()) {
reusedResult.addChangelog(replace(reusedBefore,
RowKind.DELETE, topLevelKv));
} else if (!changelogRowDeduplicate
|| !valueEqualiser.equals(topLevelKv.value(),
merged.value())) {
diff --git
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunction.java
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunction.java
index 2141cd64e..dc2c9e458 100644
---
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunction.java
+++
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/MergeFunction.java
@@ -20,8 +20,6 @@ package org.apache.paimon.mergetree.compact;
import org.apache.paimon.KeyValue;
-import javax.annotation.Nullable;
-
/**
* Merge function to merge multiple {@link KeyValue}s.
*
@@ -44,7 +42,6 @@ public interface MergeFunction<T> {
/** Add the given {@link KeyValue} to the merge function. */
void add(KeyValue kv);
- /** Get current merged value. Return null if this merged result should be
skipped. */
- @Nullable
+ /** Get current merged value. */
T getResult();
}
diff --git
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/PartialUpdateMergeFunction.java
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/PartialUpdateMergeFunction.java
index c1fc9293f..9ed188709 100644
---
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/PartialUpdateMergeFunction.java
+++
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/PartialUpdateMergeFunction.java
@@ -73,7 +73,6 @@ public class PartialUpdateMergeFunction implements
MergeFunction<KeyValue> {
private InternalRow currentKey;
private long latestSequenceNumber;
- private boolean isEmpty;
private GenericRow row;
private KeyValue reused;
@@ -93,7 +92,6 @@ public class PartialUpdateMergeFunction implements
MergeFunction<KeyValue> {
this.currentKey = null;
this.row = new GenericRow(getters.length);
fieldAggregators.values().forEach(FieldAggregator::reset);
- this.isEmpty = true;
}
@Override
@@ -119,7 +117,6 @@ public class PartialUpdateMergeFunction implements
MergeFunction<KeyValue> {
}
latestSequenceNumber = kv.sequenceNumber();
- isEmpty = false;
if (fieldSequences.isEmpty()) {
updateNonNullFields(kv);
} else {
@@ -203,12 +200,7 @@ public class PartialUpdateMergeFunction implements
MergeFunction<KeyValue> {
}
@Override
- @Nullable
public KeyValue getResult() {
- if (isEmpty) {
- return null;
- }
-
if (reused == null) {
reused = new KeyValue();
}
diff --git
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/AggregateMergeFunction.java
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/AggregateMergeFunction.java
index fd874e903..7f799e4dc 100644
---
a/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/AggregateMergeFunction.java
+++
b/paimon-core/src/main/java/org/apache/paimon/mergetree/compact/aggregate/AggregateMergeFunction.java
@@ -80,7 +80,6 @@ public class AggregateMergeFunction implements
MergeFunction<KeyValue> {
}
}
- @Nullable
@Override
public KeyValue getResult() {
checkNotNull(
diff --git
a/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreReadTest.java
b/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreReadTest.java
index 07bf705e2..c46482556 100644
---
a/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreReadTest.java
+++
b/paimon-core/src/test/java/org/apache/paimon/operation/KeyValueFileStoreReadTest.java
@@ -319,12 +319,7 @@ public class KeyValueFileStoreReadTest {
}
@Override
- @Nullable
public KeyValue getResult() {
- if (total == 0) {
- return null;
- }
-
if (reused == null) {
reused = new KeyValue();
}