This is an automated email from the ASF dual-hosted git repository.
pvary pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg.git
The following commit(s) were added to refs/heads/main by this push:
new 5ac19429fa Flink: change Preconditions import from flink util to guava
(#12939)
5ac19429fa is described below
commit 5ac19429fa3f63b35a455b695f3c066371afe525
Author: GuoYu <[email protected]>
AuthorDate: Wed Apr 30 23:12:54 2025 +0800
Flink: change Preconditions import from flink util to guava (#12939)
---
.baseline/checkstyle/checkstyle.xml | 5 +++++
.../main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java | 2 +-
.../src/main/java/org/apache/iceberg/flink/IcebergTableSink.java | 2 +-
.../java/org/apache/iceberg/flink/sink/CachingTableSupplier.java | 2 +-
.../src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java | 2 +-
.../flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java | 2 +-
.../apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java | 2 +-
.../org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java | 2 +-
.../src/main/java/org/apache/iceberg/flink/source/IcebergSource.java | 2 +-
.../src/main/java/org/apache/iceberg/flink/source/ScanContext.java | 2 +-
.../org/apache/iceberg/flink/source/assigner/GetSplitResult.java | 2 +-
.../iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java | 2 +-
.../main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java | 2 +-
.../src/main/java/org/apache/iceberg/flink/IcebergTableSink.java | 2 +-
.../java/org/apache/iceberg/flink/sink/CachingTableSupplier.java | 2 +-
.../src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java | 2 +-
.../flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java | 2 +-
.../apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java | 2 +-
.../org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java | 2 +-
.../src/main/java/org/apache/iceberg/flink/source/IcebergSource.java | 2 +-
.../src/main/java/org/apache/iceberg/flink/source/ScanContext.java | 2 +-
.../org/apache/iceberg/flink/source/assigner/GetSplitResult.java | 2 +-
.../iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java | 2 +-
.../main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java | 2 +-
.../src/main/java/org/apache/iceberg/flink/IcebergTableSink.java | 2 +-
.../java/org/apache/iceberg/flink/sink/CachingTableSupplier.java | 2 +-
.../src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java | 2 +-
.../flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java | 2 +-
.../apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java | 2 +-
.../org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java | 2 +-
.../src/main/java/org/apache/iceberg/flink/source/IcebergSource.java | 2 +-
.../src/main/java/org/apache/iceberg/flink/source/ScanContext.java | 2 +-
.../org/apache/iceberg/flink/source/assigner/GetSplitResult.java | 2 +-
.../iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java | 2 +-
34 files changed, 38 insertions(+), 33 deletions(-)
diff --git a/.baseline/checkstyle/checkstyle.xml
b/.baseline/checkstyle/checkstyle.xml
index 139d26fedb..4f5cbcef5f 100644
--- a/.baseline/checkstyle/checkstyle.xml
+++ b/.baseline/checkstyle/checkstyle.xml
@@ -257,6 +257,11 @@
<property name="illegalPkgs" value="com.google.common.testing"/>
<message key="import.illegal" value="Use
org.apache.iceberg.relocated.* classes from bundled-guava module instead."/>
</module>
+ <module name="IllegalImport">
+ <property name="id" value="BanFlinkPreconditions"/>
+ <property name="illegalClasses"
value="org.apache.flink.util.Preconditions"/>
+ <message key="import.illegal" value="Use
org.apache.iceberg.relocated.com.google.common.base.Preconditions instead."/>
+ </module>
<module name="IllegalImport">
<property name="id" value="GuavaClassesInAssertJ"/>
<property name="illegalPkgs" value="org.assertj.core.util"/>
diff --git
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java
index a92848d7cc..f0ddcca344 100644
---
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java
+++
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java
@@ -35,10 +35,10 @@ import
org.apache.flink.table.connector.source.DynamicTableSource;
import org.apache.flink.table.factories.DynamicTableSinkFactory;
import org.apache.flink.table.factories.DynamicTableSourceFactory;
import org.apache.flink.table.utils.TableSchemaUtils;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.catalog.TableIdentifier;
import org.apache.iceberg.exceptions.AlreadyExistsException;
import org.apache.iceberg.flink.source.IcebergTableSource;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Maps;
import org.apache.iceberg.relocated.com.google.common.collect.Sets;
diff --git
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/IcebergTableSink.java
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/IcebergTableSink.java
index c2c5a6706e..80fc9419e8 100644
---
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/IcebergTableSink.java
+++
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/IcebergTableSink.java
@@ -33,9 +33,9 @@ import
org.apache.flink.table.connector.sink.abilities.SupportsOverwrite;
import org.apache.flink.table.connector.sink.abilities.SupportsPartitioning;
import org.apache.flink.table.data.RowData;
import org.apache.flink.types.RowKind;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.flink.sink.FlinkSink;
import org.apache.iceberg.flink.sink.IcebergSink;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.ImmutableList;
public class IcebergTableSink implements DynamicTableSink,
SupportsPartitioning, SupportsOverwrite {
diff --git
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/CachingTableSupplier.java
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/CachingTableSupplier.java
index e9f9786f91..0afc07cc19 100644
---
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/CachingTableSupplier.java
+++
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/CachingTableSupplier.java
@@ -19,10 +19,10 @@
package org.apache.iceberg.flink.sink;
import java.time.Duration;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.SerializableTable;
import org.apache.iceberg.Table;
import org.apache.iceberg.flink.TableLoader;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.util.DateTimeUtil;
import org.apache.iceberg.util.SerializableSupplier;
import org.slf4j.Logger;
diff --git
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java
index d080169544..7d64cfb581 100644
---
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java
+++
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java
@@ -58,7 +58,6 @@ import org.apache.flink.table.data.util.DataFormatConverters;
import org.apache.flink.table.types.DataType;
import org.apache.flink.table.types.logical.RowType;
import org.apache.flink.types.Row;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.DataFile;
import org.apache.iceberg.DistributionMode;
import org.apache.iceberg.FileFormat;
@@ -73,6 +72,7 @@ import org.apache.iceberg.flink.FlinkWriteOptions;
import org.apache.iceberg.flink.TableLoader;
import org.apache.iceberg.flink.util.FlinkCompatibilityUtil;
import org.apache.iceberg.io.WriteResult;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Maps;
import org.apache.iceberg.types.TypeUtil;
import org.apache.iceberg.util.SerializableSupplier;
diff --git
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java
index 7f28a50eca..0a2a7c1b88 100644
---
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java
+++
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java
@@ -21,9 +21,9 @@ package org.apache.iceberg.flink.sink;
import java.util.List;
import java.util.Map;
import java.util.Set;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.Snapshot;
import org.apache.iceberg.Table;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Lists;
import org.apache.iceberg.relocated.com.google.common.collect.Sets;
import org.slf4j.Logger;
diff --git
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java
index 4f2afd60fe..e23ad943fd 100644
---
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java
+++
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java
@@ -34,13 +34,13 @@ import
org.apache.flink.runtime.operators.coordination.OperatorEvent;
import org.apache.flink.util.ExceptionUtils;
import org.apache.flink.util.FatalExitExceptionHandler;
import org.apache.flink.util.FlinkRuntimeException;
-import org.apache.flink.util.Preconditions;
import org.apache.flink.util.ThrowableCatchingRunnable;
import org.apache.flink.util.function.ThrowingRunnable;
import org.apache.iceberg.Schema;
import org.apache.iceberg.SortOrder;
import org.apache.iceberg.StructLike;
import
org.apache.iceberg.relocated.com.google.common.annotations.VisibleForTesting;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Iterables;
import org.apache.iceberg.relocated.com.google.common.collect.Maps;
import org.apache.iceberg.types.Comparators;
diff --git
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java
index 5b979e546d..acd078a61c 100644
---
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java
+++
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java
@@ -33,7 +33,6 @@ import
org.apache.flink.api.common.typeutils.TypeSerializerSchemaCompatibility;
import org.apache.flink.api.common.typeutils.TypeSerializerSnapshot;
import org.apache.flink.core.memory.DataInputView;
import org.apache.flink.core.memory.DataOutputView;
-import org.apache.flink.util.Preconditions;
import org.apache.flink.util.StringUtils;
import org.apache.iceberg.Schema;
import org.apache.iceberg.SchemaParser;
@@ -41,6 +40,7 @@ import org.apache.iceberg.SortField;
import org.apache.iceberg.SortKey;
import org.apache.iceberg.SortOrder;
import org.apache.iceberg.SortOrderParser;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.types.CheckCompatibility;
import org.apache.iceberg.types.Type;
import org.apache.iceberg.types.TypeUtil;
diff --git
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/IcebergSource.java
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/IcebergSource.java
index 6461d82071..4ee70d583c 100644
---
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/IcebergSource.java
+++
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/IcebergSource.java
@@ -43,7 +43,6 @@ import
org.apache.flink.streaming.api.datastream.DataStreamSource;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.table.api.TableSchema;
import org.apache.flink.table.data.RowData;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.BaseMetadataTable;
import org.apache.iceberg.Schema;
import org.apache.iceberg.Table;
@@ -79,6 +78,7 @@ import
org.apache.iceberg.flink.source.split.IcebergSourceSplitSerializer;
import org.apache.iceberg.flink.source.split.SerializableComparator;
import org.apache.iceberg.flink.source.split.SplitComparators;
import org.apache.iceberg.flink.util.FlinkCompatibilityUtil;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Maps;
import org.apache.iceberg.relocated.com.google.common.collect.Sets;
import org.apache.iceberg.util.ThreadPools;
diff --git
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/ScanContext.java
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/ScanContext.java
index ad8f02f9b4..bac7c05bdf 100644
---
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/ScanContext.java
+++
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/ScanContext.java
@@ -26,7 +26,6 @@ import java.util.Map;
import java.util.concurrent.TimeUnit;
import org.apache.flink.annotation.Internal;
import org.apache.flink.configuration.ReadableConfig;
-import org.apache.flink.util.Preconditions;
import org.apache.flink.util.TimeUtils;
import org.apache.iceberg.Schema;
import org.apache.iceberg.Table;
@@ -34,6 +33,7 @@ import org.apache.iceberg.expressions.Expression;
import org.apache.iceberg.flink.FlinkConfigOptions;
import org.apache.iceberg.flink.FlinkReadConf;
import org.apache.iceberg.flink.FlinkReadOptions;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
/** Context object with optional arguments for a Flink Scan. */
@Internal
diff --git
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/assigner/GetSplitResult.java
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/assigner/GetSplitResult.java
index 72deaeb890..36552782b6 100644
---
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/assigner/GetSplitResult.java
+++
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/assigner/GetSplitResult.java
@@ -19,8 +19,8 @@
package org.apache.iceberg.flink.source.assigner;
import org.apache.flink.annotation.Internal;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.flink.source.split.IcebergSourceSplit;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
@Internal
public class GetSplitResult {
diff --git
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java
index bcd96c80c1..44ad53c172 100644
---
a/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java
+++
b/flink/v1.19/flink/src/main/java/org/apache/iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java
@@ -25,7 +25,6 @@ import java.util.Optional;
import java.util.concurrent.ExecutorService;
import org.apache.flink.annotation.Internal;
import org.apache.flink.annotation.VisibleForTesting;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.Snapshot;
import org.apache.iceberg.Table;
import org.apache.iceberg.flink.TableLoader;
@@ -33,6 +32,7 @@ import org.apache.iceberg.flink.source.FlinkSplitPlanner;
import org.apache.iceberg.flink.source.ScanContext;
import org.apache.iceberg.flink.source.StreamingStartingStrategy;
import org.apache.iceberg.flink.source.split.IcebergSourceSplit;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Lists;
import org.apache.iceberg.util.SnapshotUtil;
import org.apache.iceberg.util.ThreadPools;
diff --git
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java
index a92848d7cc..f0ddcca344 100644
---
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java
+++
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java
@@ -35,10 +35,10 @@ import
org.apache.flink.table.connector.source.DynamicTableSource;
import org.apache.flink.table.factories.DynamicTableSinkFactory;
import org.apache.flink.table.factories.DynamicTableSourceFactory;
import org.apache.flink.table.utils.TableSchemaUtils;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.catalog.TableIdentifier;
import org.apache.iceberg.exceptions.AlreadyExistsException;
import org.apache.iceberg.flink.source.IcebergTableSource;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Maps;
import org.apache.iceberg.relocated.com.google.common.collect.Sets;
diff --git
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/IcebergTableSink.java
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/IcebergTableSink.java
index c2c5a6706e..80fc9419e8 100644
---
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/IcebergTableSink.java
+++
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/IcebergTableSink.java
@@ -33,9 +33,9 @@ import
org.apache.flink.table.connector.sink.abilities.SupportsOverwrite;
import org.apache.flink.table.connector.sink.abilities.SupportsPartitioning;
import org.apache.flink.table.data.RowData;
import org.apache.flink.types.RowKind;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.flink.sink.FlinkSink;
import org.apache.iceberg.flink.sink.IcebergSink;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.ImmutableList;
public class IcebergTableSink implements DynamicTableSink,
SupportsPartitioning, SupportsOverwrite {
diff --git
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/CachingTableSupplier.java
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/CachingTableSupplier.java
index e9f9786f91..0afc07cc19 100644
---
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/CachingTableSupplier.java
+++
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/CachingTableSupplier.java
@@ -19,10 +19,10 @@
package org.apache.iceberg.flink.sink;
import java.time.Duration;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.SerializableTable;
import org.apache.iceberg.Table;
import org.apache.iceberg.flink.TableLoader;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.util.DateTimeUtil;
import org.apache.iceberg.util.SerializableSupplier;
import org.slf4j.Logger;
diff --git
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java
index 01be4a2eef..2572dcb7ce 100644
---
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java
+++
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java
@@ -58,7 +58,6 @@ import org.apache.flink.table.data.util.DataFormatConverters;
import org.apache.flink.table.types.DataType;
import org.apache.flink.table.types.logical.RowType;
import org.apache.flink.types.Row;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.DataFile;
import org.apache.iceberg.DistributionMode;
import org.apache.iceberg.FileFormat;
@@ -73,6 +72,7 @@ import org.apache.iceberg.flink.FlinkWriteOptions;
import org.apache.iceberg.flink.TableLoader;
import org.apache.iceberg.flink.util.FlinkCompatibilityUtil;
import org.apache.iceberg.io.WriteResult;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Maps;
import org.apache.iceberg.types.TypeUtil;
import org.apache.iceberg.util.SerializableSupplier;
diff --git
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java
index 7f28a50eca..0a2a7c1b88 100644
---
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java
+++
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java
@@ -21,9 +21,9 @@ package org.apache.iceberg.flink.sink;
import java.util.List;
import java.util.Map;
import java.util.Set;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.Snapshot;
import org.apache.iceberg.Table;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Lists;
import org.apache.iceberg.relocated.com.google.common.collect.Sets;
import org.slf4j.Logger;
diff --git
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java
index 4f2afd60fe..e23ad943fd 100644
---
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java
+++
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java
@@ -34,13 +34,13 @@ import
org.apache.flink.runtime.operators.coordination.OperatorEvent;
import org.apache.flink.util.ExceptionUtils;
import org.apache.flink.util.FatalExitExceptionHandler;
import org.apache.flink.util.FlinkRuntimeException;
-import org.apache.flink.util.Preconditions;
import org.apache.flink.util.ThrowableCatchingRunnable;
import org.apache.flink.util.function.ThrowingRunnable;
import org.apache.iceberg.Schema;
import org.apache.iceberg.SortOrder;
import org.apache.iceberg.StructLike;
import
org.apache.iceberg.relocated.com.google.common.annotations.VisibleForTesting;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Iterables;
import org.apache.iceberg.relocated.com.google.common.collect.Maps;
import org.apache.iceberg.types.Comparators;
diff --git
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java
index c99b74c14b..6f5bb67227 100644
---
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java
+++
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java
@@ -33,7 +33,6 @@ import
org.apache.flink.api.common.typeutils.TypeSerializerSchemaCompatibility;
import org.apache.flink.api.common.typeutils.TypeSerializerSnapshot;
import org.apache.flink.core.memory.DataInputView;
import org.apache.flink.core.memory.DataOutputView;
-import org.apache.flink.util.Preconditions;
import org.apache.flink.util.StringUtils;
import org.apache.iceberg.Schema;
import org.apache.iceberg.SchemaParser;
@@ -41,6 +40,7 @@ import org.apache.iceberg.SortField;
import org.apache.iceberg.SortKey;
import org.apache.iceberg.SortOrder;
import org.apache.iceberg.SortOrderParser;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.types.CheckCompatibility;
import org.apache.iceberg.types.Type;
import org.apache.iceberg.types.TypeUtil;
diff --git
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/IcebergSource.java
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/IcebergSource.java
index be29d4b52b..c249ceebf9 100644
---
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/IcebergSource.java
+++
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/IcebergSource.java
@@ -43,7 +43,6 @@ import
org.apache.flink.streaming.api.datastream.DataStreamSource;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.table.api.TableSchema;
import org.apache.flink.table.data.RowData;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.BaseMetadataTable;
import org.apache.iceberg.Schema;
import org.apache.iceberg.Table;
@@ -79,6 +78,7 @@ import
org.apache.iceberg.flink.source.split.IcebergSourceSplitSerializer;
import org.apache.iceberg.flink.source.split.SerializableComparator;
import org.apache.iceberg.flink.source.split.SplitComparators;
import org.apache.iceberg.flink.util.FlinkCompatibilityUtil;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Maps;
import org.apache.iceberg.relocated.com.google.common.collect.Sets;
import org.apache.iceberg.util.ThreadPools;
diff --git
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/ScanContext.java
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/ScanContext.java
index ad8f02f9b4..bac7c05bdf 100644
---
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/ScanContext.java
+++
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/ScanContext.java
@@ -26,7 +26,6 @@ import java.util.Map;
import java.util.concurrent.TimeUnit;
import org.apache.flink.annotation.Internal;
import org.apache.flink.configuration.ReadableConfig;
-import org.apache.flink.util.Preconditions;
import org.apache.flink.util.TimeUtils;
import org.apache.iceberg.Schema;
import org.apache.iceberg.Table;
@@ -34,6 +33,7 @@ import org.apache.iceberg.expressions.Expression;
import org.apache.iceberg.flink.FlinkConfigOptions;
import org.apache.iceberg.flink.FlinkReadConf;
import org.apache.iceberg.flink.FlinkReadOptions;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
/** Context object with optional arguments for a Flink Scan. */
@Internal
diff --git
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/assigner/GetSplitResult.java
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/assigner/GetSplitResult.java
index 72deaeb890..36552782b6 100644
---
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/assigner/GetSplitResult.java
+++
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/assigner/GetSplitResult.java
@@ -19,8 +19,8 @@
package org.apache.iceberg.flink.source.assigner;
import org.apache.flink.annotation.Internal;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.flink.source.split.IcebergSourceSplit;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
@Internal
public class GetSplitResult {
diff --git
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java
index 50a3919c13..e8478b8ea8 100644
---
a/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java
+++
b/flink/v1.20/flink/src/main/java/org/apache/iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java
@@ -25,7 +25,6 @@ import java.util.Optional;
import java.util.concurrent.ExecutorService;
import org.apache.flink.annotation.Internal;
import org.apache.flink.annotation.VisibleForTesting;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.Snapshot;
import org.apache.iceberg.Table;
import org.apache.iceberg.flink.TableLoader;
@@ -33,6 +32,7 @@ import org.apache.iceberg.flink.source.FlinkSplitPlanner;
import org.apache.iceberg.flink.source.ScanContext;
import org.apache.iceberg.flink.source.StreamingStartingStrategy;
import org.apache.iceberg.flink.source.split.IcebergSourceSplit;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Lists;
import org.apache.iceberg.util.SnapshotUtil;
import org.apache.iceberg.util.ThreadPools;
diff --git
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java
index 4c8ae92cad..344e4d2753 100644
---
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java
+++
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/FlinkDynamicTableFactory.java
@@ -35,10 +35,10 @@ import
org.apache.flink.table.factories.DynamicTableSinkFactory;
import org.apache.flink.table.factories.DynamicTableSourceFactory;
import org.apache.flink.table.legacy.api.TableSchema;
import org.apache.flink.table.utils.TableSchemaUtils;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.catalog.TableIdentifier;
import org.apache.iceberg.exceptions.AlreadyExistsException;
import org.apache.iceberg.flink.source.IcebergTableSource;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Maps;
import org.apache.iceberg.relocated.com.google.common.collect.Sets;
diff --git
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/IcebergTableSink.java
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/IcebergTableSink.java
index 46b9a766ad..a519563062 100644
---
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/IcebergTableSink.java
+++
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/IcebergTableSink.java
@@ -33,9 +33,9 @@ import org.apache.flink.table.data.RowData;
import org.apache.flink.table.legacy.api.TableSchema;
import org.apache.flink.table.legacy.api.constraints.UniqueConstraint;
import org.apache.flink.types.RowKind;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.flink.sink.FlinkSink;
import org.apache.iceberg.flink.sink.IcebergSink;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.ImmutableList;
public class IcebergTableSink implements DynamicTableSink,
SupportsPartitioning, SupportsOverwrite {
diff --git
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/CachingTableSupplier.java
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/CachingTableSupplier.java
index e9f9786f91..0afc07cc19 100644
---
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/CachingTableSupplier.java
+++
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/CachingTableSupplier.java
@@ -19,10 +19,10 @@
package org.apache.iceberg.flink.sink;
import java.time.Duration;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.SerializableTable;
import org.apache.iceberg.Table;
import org.apache.iceberg.flink.TableLoader;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.util.DateTimeUtil;
import org.apache.iceberg.util.SerializableSupplier;
import org.slf4j.Logger;
diff --git
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java
index e649786b26..70c9b92ac8 100644
---
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java
+++
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergSink.java
@@ -59,7 +59,6 @@ import org.apache.flink.table.legacy.api.TableSchema;
import org.apache.flink.table.types.DataType;
import org.apache.flink.table.types.logical.RowType;
import org.apache.flink.types.Row;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.DataFile;
import org.apache.iceberg.DistributionMode;
import org.apache.iceberg.FileFormat;
@@ -74,6 +73,7 @@ import org.apache.iceberg.flink.FlinkWriteOptions;
import org.apache.iceberg.flink.TableLoader;
import org.apache.iceberg.flink.util.FlinkCompatibilityUtil;
import org.apache.iceberg.io.WriteResult;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Maps;
import org.apache.iceberg.types.TypeUtil;
import org.apache.iceberg.util.SerializableSupplier;
diff --git
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java
index 7f28a50eca..0a2a7c1b88 100644
--- a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java
+++ b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/SinkUtil.java
@@ -21,9 +21,9 @@ package org.apache.iceberg.flink.sink;
import java.util.List;
import java.util.Map;
import java.util.Set;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.Snapshot;
import org.apache.iceberg.Table;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Lists;
import org.apache.iceberg.relocated.com.google.common.collect.Sets;
import org.slf4j.Logger;
diff --git
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java
index 4f2afd60fe..e23ad943fd 100644
---
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java
+++
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/DataStatisticsCoordinator.java
@@ -34,13 +34,13 @@ import
org.apache.flink.runtime.operators.coordination.OperatorEvent;
import org.apache.flink.util.ExceptionUtils;
import org.apache.flink.util.FatalExitExceptionHandler;
import org.apache.flink.util.FlinkRuntimeException;
-import org.apache.flink.util.Preconditions;
import org.apache.flink.util.ThrowableCatchingRunnable;
import org.apache.flink.util.function.ThrowingRunnable;
import org.apache.iceberg.Schema;
import org.apache.iceberg.SortOrder;
import org.apache.iceberg.StructLike;
import
org.apache.iceberg.relocated.com.google.common.annotations.VisibleForTesting;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Iterables;
import org.apache.iceberg.relocated.com.google.common.collect.Maps;
import org.apache.iceberg.types.Comparators;
diff --git
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java
index c99b74c14b..6f5bb67227 100644
---
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java
+++
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/sink/shuffle/SortKeySerializer.java
@@ -33,7 +33,6 @@ import
org.apache.flink.api.common.typeutils.TypeSerializerSchemaCompatibility;
import org.apache.flink.api.common.typeutils.TypeSerializerSnapshot;
import org.apache.flink.core.memory.DataInputView;
import org.apache.flink.core.memory.DataOutputView;
-import org.apache.flink.util.Preconditions;
import org.apache.flink.util.StringUtils;
import org.apache.iceberg.Schema;
import org.apache.iceberg.SchemaParser;
@@ -41,6 +40,7 @@ import org.apache.iceberg.SortField;
import org.apache.iceberg.SortKey;
import org.apache.iceberg.SortOrder;
import org.apache.iceberg.SortOrderParser;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.types.CheckCompatibility;
import org.apache.iceberg.types.Type;
import org.apache.iceberg.types.TypeUtil;
diff --git
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/IcebergSource.java
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/IcebergSource.java
index 59555bb0fd..7b2ac2cd74 100644
---
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/IcebergSource.java
+++
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/IcebergSource.java
@@ -43,7 +43,6 @@ import
org.apache.flink.streaming.api.datastream.DataStreamSource;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.table.data.RowData;
import org.apache.flink.table.legacy.api.TableSchema;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.BaseMetadataTable;
import org.apache.iceberg.Schema;
import org.apache.iceberg.Table;
@@ -79,6 +78,7 @@ import
org.apache.iceberg.flink.source.split.IcebergSourceSplitSerializer;
import org.apache.iceberg.flink.source.split.SerializableComparator;
import org.apache.iceberg.flink.source.split.SplitComparators;
import org.apache.iceberg.flink.util.FlinkCompatibilityUtil;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Maps;
import org.apache.iceberg.relocated.com.google.common.collect.Sets;
import org.apache.iceberg.util.ThreadPools;
diff --git
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/ScanContext.java
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/ScanContext.java
index ad8f02f9b4..bac7c05bdf 100644
---
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/ScanContext.java
+++
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/ScanContext.java
@@ -26,7 +26,6 @@ import java.util.Map;
import java.util.concurrent.TimeUnit;
import org.apache.flink.annotation.Internal;
import org.apache.flink.configuration.ReadableConfig;
-import org.apache.flink.util.Preconditions;
import org.apache.flink.util.TimeUtils;
import org.apache.iceberg.Schema;
import org.apache.iceberg.Table;
@@ -34,6 +33,7 @@ import org.apache.iceberg.expressions.Expression;
import org.apache.iceberg.flink.FlinkConfigOptions;
import org.apache.iceberg.flink.FlinkReadConf;
import org.apache.iceberg.flink.FlinkReadOptions;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
/** Context object with optional arguments for a Flink Scan. */
@Internal
diff --git
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/assigner/GetSplitResult.java
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/assigner/GetSplitResult.java
index 72deaeb890..36552782b6 100644
---
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/assigner/GetSplitResult.java
+++
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/assigner/GetSplitResult.java
@@ -19,8 +19,8 @@
package org.apache.iceberg.flink.source.assigner;
import org.apache.flink.annotation.Internal;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.flink.source.split.IcebergSourceSplit;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
@Internal
public class GetSplitResult {
diff --git
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java
index 50a3919c13..e8478b8ea8 100644
---
a/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java
+++
b/flink/v2.0/flink/src/main/java/org/apache/iceberg/flink/source/enumerator/ContinuousSplitPlannerImpl.java
@@ -25,7 +25,6 @@ import java.util.Optional;
import java.util.concurrent.ExecutorService;
import org.apache.flink.annotation.Internal;
import org.apache.flink.annotation.VisibleForTesting;
-import org.apache.flink.util.Preconditions;
import org.apache.iceberg.Snapshot;
import org.apache.iceberg.Table;
import org.apache.iceberg.flink.TableLoader;
@@ -33,6 +32,7 @@ import org.apache.iceberg.flink.source.FlinkSplitPlanner;
import org.apache.iceberg.flink.source.ScanContext;
import org.apache.iceberg.flink.source.StreamingStartingStrategy;
import org.apache.iceberg.flink.source.split.IcebergSourceSplit;
+import org.apache.iceberg.relocated.com.google.common.base.Preconditions;
import org.apache.iceberg.relocated.com.google.common.collect.Lists;
import org.apache.iceberg.util.SnapshotUtil;
import org.apache.iceberg.util.ThreadPools;