Search before asking
Paimon version
master @ b15bda5
Compute Engine
Flink 2.x (paimon-flink2-common)
Minimal reproduce step
- Run a Flink cluster built from a release branch or master. The ASF snapshot repository publishes
flink-runtime as 2.1-SNAPSHOT / 2.2-SNAPSHOT, so EnvironmentInformation.getVersion() has no patch component.
- Write to a primary-key table with
sink.key-only-deletes.enabled = true.
ChangelogModeUtils.isFlink21OrAbove() (paimon-flink2-common/.../flink/utils/ChangelogModeUtils.java line 42) splits on . only, so the minor part is 2-SNAPSHOT, Integer.parseInt throws, catch (RuntimeException) swallows it, and it returns false.
What doesn't meet your expectations?
Expected: key-only deletes are enabled, since this runtime does provide the FLIP-510 ChangelogMode.Builder#keyOnlyDeletes API. Actual: ChangelogNormalize stays in the plan and the log shows the self-contradicting warning requires Flink 2.1+ (current version: 2.2-SNAPSHOT).
Anything else?
Only versions without a patch component break. 2.1.0 and 2.1.0-amzn-0 already parse correctly.
Are you willing to submit a PR?
Search before asking
Paimon version
master @ b15bda5
Compute Engine
Flink 2.x (
paimon-flink2-common)Minimal reproduce step
flink-runtimeas2.1-SNAPSHOT/2.2-SNAPSHOT, soEnvironmentInformation.getVersion()has no patch component.sink.key-only-deletes.enabled = true.ChangelogModeUtils.isFlink21OrAbove()(paimon-flink2-common/.../flink/utils/ChangelogModeUtils.javaline 42) splits on.only, so the minor part is2-SNAPSHOT,Integer.parseIntthrows,catch (RuntimeException)swallows it, and it returnsfalse.What doesn't meet your expectations?
Expected: key-only deletes are enabled, since this runtime does provide the FLIP-510
ChangelogMode.Builder#keyOnlyDeletesAPI. Actual: ChangelogNormalize stays in the plan and the log shows the self-contradicting warningrequires Flink 2.1+ (current version: 2.2-SNAPSHOT).Anything else?
Only versions without a patch component break.
2.1.0and2.1.0-amzn-0already parse correctly.Are you willing to submit a PR?