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 a1c2bf6c2e [core] Don't check -2 and fixed buckets changes (#6485)
a1c2bf6c2e is described below
commit a1c2bf6c2eddcd02c7264ef03ba305d8c93ea399
Author: yuzelin <[email protected]>
AuthorDate: Tue Oct 28 18:21:55 2025 +0800
[core] Don't check -2 and fixed buckets changes (#6485)
---
.../java/org/apache/paimon/schema/SchemaManager.java | 16 ++--------------
.../org/apache/paimon/table/AbstractFileStoreTable.java | 7 +------
.../apache/paimon/flink/AbstractFlinkTableFactory.java | 2 +-
3 files changed, 4 insertions(+), 21 deletions(-)
diff --git
a/paimon-core/src/main/java/org/apache/paimon/schema/SchemaManager.java
b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaManager.java
index cbfe81b3a9..cc8df58b2a 100644
--- a/paimon-core/src/main/java/org/apache/paimon/schema/SchemaManager.java
+++ b/paimon-core/src/main/java/org/apache/paimon/schema/SchemaManager.java
@@ -36,7 +36,6 @@ import
org.apache.paimon.schema.SchemaChange.UpdateColumnNullability;
import org.apache.paimon.schema.SchemaChange.UpdateColumnPosition;
import org.apache.paimon.schema.SchemaChange.UpdateColumnType;
import org.apache.paimon.schema.SchemaChange.UpdateComment;
-import org.apache.paimon.table.BucketMode;
import org.apache.paimon.table.FileStoreTableFactory;
import org.apache.paimon.types.ArrayType;
import org.apache.paimon.types.DataField;
@@ -298,10 +297,7 @@ public class SchemaManager implements Serializable {
SetOption setOption = (SetOption) change;
if (hasSnapshots.get()) {
checkAlterTableOption(
- setOption.key(),
- oldOptions.get(setOption.key()),
- setOption.value(),
- false);
+ setOption.key(), oldOptions.get(setOption.key()),
setOption.value());
}
newOptions.put(setOption.key(), setOption.value());
} else if (change instanceof RemoveOption) {
@@ -1076,7 +1072,7 @@ public class SchemaManager implements Serializable {
}
public static void checkAlterTableOption(
- String key, @Nullable String oldValue, String newValue, boolean
fromDynamicOptions) {
+ String key, @Nullable String oldValue, String newValue) {
if (CoreOptions.IMMUTABLE_OPTIONS.contains(key)) {
throw new UnsupportedOperationException(
String.format("Change '%s' is not supported yet.", key));
@@ -1089,20 +1085,12 @@ public class SchemaManager implements Serializable {
: Integer.parseInt(oldValue);
int newBucket = Integer.parseInt(newValue);
- if (fromDynamicOptions) {
- throw new UnsupportedOperationException(
- "Cannot change bucket number through dynamic options.
You might need to rescale bucket.");
- }
if (oldBucket == -1) {
throw new UnsupportedOperationException("Cannot change bucket
when it is -1.");
}
if (newBucket == -1) {
throw new UnsupportedOperationException("Cannot change bucket
to -1.");
}
- if (oldBucket == BucketMode.POSTPONE_BUCKET) {
- throw new UnsupportedOperationException(
- "Cannot change bucket for postpone bucket tables.");
- }
}
}
diff --git
a/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
b/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
index 55892e25ee..ea8fff0c85 100644
---
a/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
+++
b/paimon-core/src/main/java/org/apache/paimon/table/AbstractFileStoreTable.java
@@ -318,12 +318,7 @@ abstract class AbstractFileStoreTable implements
FileStoreTable {
(k, newValue) -> {
String oldValue = oldOptions.get(k);
if (!Objects.equals(oldValue, newValue)) {
- SchemaManager.checkAlterTableOption(k, oldValue,
newValue, true);
-
- if (CoreOptions.BUCKET.key().equals(k)) {
- throw new UnsupportedOperationException(
- "Cannot change bucket number through
dynamic options. You might need to rescale bucket.");
- }
+ SchemaManager.checkAlterTableOption(k, oldValue,
newValue);
}
});
}
diff --git
a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractFlinkTableFactory.java
b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractFlinkTableFactory.java
index 871b1a657f..755b6f8024 100644
---
a/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractFlinkTableFactory.java
+++
b/paimon-flink/paimon-flink-common/src/main/java/org/apache/paimon/flink/AbstractFlinkTableFactory.java
@@ -198,7 +198,7 @@ public abstract class AbstractFlinkTableFactory
(key, newValue) -> {
String oldValue = origin.getOptions().get(key);
if (!Objects.equals(oldValue, newValue)) {
- SchemaManager.checkAlterTableOption(key, oldValue,
newValue, true);
+ SchemaManager.checkAlterTableOption(key, oldValue,
newValue);
}
});
Map<String, String> newOptions = new HashMap<>();