-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature][Connectors-v2]Paimon version upgrade to 1.0.1 #8074
base: dev
Are you sure you want to change the base?
Conversation
0292734
to
853960f
Compare
...ctor-paimon-e2e/src/test/java/org/apache/seatunnel/e2e/connector/paimon/PaimonSinkCDCIT.java
Outdated
Show resolved
Hide resolved
...nel-connector-v2-e2e/connector-paimon-e2e/src/test/resources/fake_cdc_sink_paimon_case9.conf
Outdated
Show resolved
Hide resolved
...ctor-paimon-e2e/src/test/java/org/apache/seatunnel/e2e/connector/paimon/PaimonSinkCDCIT.java
Outdated
Show resolved
Hide resolved
5fa7e4e
to
690c856
Compare
I think we should keep the default behavior of seatunnel when writing to paimon which is that we still used fixed buckets and the default number of buckets is 1, and we should also mark dynamic buckets as experimental properties. |
060fd30
to
9c5377f
Compare
...on/src/main/java/org/apache/seatunnel/connectors/seatunnel/paimon/catalog/PaimonCatalog.java
Outdated
Show resolved
Hide resolved
@@ -216,7 +229,9 @@ private Schema buildPaimonSchema(@NonNull org.apache.paimon.schema.TableSchema s | |||
Schema.Builder builder = Schema.newBuilder(); | |||
schema.fields() | |||
.forEach(field -> builder.column(field.name(), field.type(), field.description())); | |||
builder.options(schema.options()); | |||
Map<String, String> options = new HashMap<>(schema.options()); | |||
options.remove(CoreOptions.PATH.key()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please add a comment of why remove this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The paimon interface has changed in the new version. it will throw exception when not remove
java.lang.UnsupportedOperationException: The current catalog FileSystemCatalog does not support specifying the table path when creating a table.
at org.apache.paimon.catalog.AbstractCatalog.validateCustomTablePath(AbstractCatalog.java:582)
at org.apache.paimon.catalog.AbstractCatalog.createTable(AbstractCatalog.java:285)
at org.apache.paimon.catalog.DelegateCatalog.createTable(DelegateCatalog.java:106)
@@ -128,10 +128,9 @@ public PaimonSinkWriter( | |||
this.sinkPaimonTableSchema = this.paimonFileStoretable.schema(); | |||
this.newTableWrite(); | |||
BucketMode bucketMode = this.paimonFileStoretable.bucketMode(); | |||
this.dynamicBucket = | |||
BucketMode.DYNAMIC == bucketMode || BucketMode.GLOBAL_DYNAMIC == bucketMode; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why remove GLOBAL_DYNAMIC
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The paimon interface has changed in the new version
public enum BucketMode {
HASH_FIXED,
HASH_DYNAMIC,
CROSS_PARTITION,
BUCKET_UNAWARE;
...
}
paimon.table.write-props = { | ||
bucket = 1 | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is the change necessary?
Co-authored-by: Jia Fan <[email protected]>
a6c0a80
to
c284d30
Compare
Purpose of this pull request
doris has so far supported the Piamon .
doris-paimon
, Paimon version upgrade to 1.0.1 .Does this PR introduce any user-facing change?
How was this patch tested?
PaimonSinkDynamicBucketIT#testParallelismWrite
Check list
New License Guide
release-note
.