Copilot commented on code in PR #10721:
URL: https://github.com/apache/gravitino/pull/10721#discussion_r3055003743
##########
flink-connector/flink/src/main/java/org/apache/gravitino/flink/connector/paimon/GravitinoPaimonCatalog.java:
##########
@@ -19,17 +19,29 @@
package org.apache.gravitino.flink.connector.paimon;
+import com.google.common.annotations.VisibleForTesting;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
import java.util.Optional;
+import java.util.stream.Collectors;
+import org.apache.commons.lang3.StringUtils;
import org.apache.flink.table.catalog.AbstractCatalog;
Review Comment:
`GravitinoPaimonCatalog` now uses `org.apache.commons.lang3.StringUtils`,
but `flink-connector/flink/build.gradle.kts` does not declare a `commons-lang3`
dependency. This may fail compilation depending on how project dependency
variants are exposed. Consider either adding
`implementation(libs.commons.lang3)` to the Flink connector module or replacing
`StringUtils` usage with a small local `null/trim/isEmpty` check to avoid
relying on transitive dependencies.
##########
flink-connector/flink/src/main/java/org/apache/gravitino/flink/connector/paimon/GravitinoPaimonCatalog.java:
##########
@@ -77,4 +89,42 @@ public void dropTable(ObjectPath tablePath, boolean
ignoreIfNotExists)
public Optional<Factory> getFactory() {
return Optional.of(new FlinkTableFactory());
}
+
+ @Override
+ protected Distribution toGravitinoDistribution(Map<String, String>
properties) {
+ return getDistribution(properties);
+ }
+
+ @VisibleForTesting
+ static Distribution getDistribution(Map<String, String> properties) {
+ if (properties == null) {
+ return Distributions.NONE;
+ }
+ String bucketKeys = properties.get(PaimonConstants.BUCKET_KEY);
+ if (StringUtils.isBlank(bucketKeys)) {
+ return Distributions.NONE;
+ }
+ List<String> bucketKeyList =
Review Comment:
`getDistribution` appears to duplicate the bucket-key/bucket parsing logic
that already exists in
`catalogs/catalog-lakehouse-paimon/.../GravitinoPaimonTable#getDistribution`.
Having two copies increases the risk of behavioral drift; consider extracting a
shared helper (e.g., in `catalog-common`) or delegating to a single
implementation.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]