This is an automated email from the ASF dual-hosted git repository.
fanjia pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/seatunnel.git
The following commit(s) were added to refs/heads/dev by this push:
new 4f5adeb1c7 [Feature][Checkpoint] Add check script for source/sink
state class serialVersionUID missing (#9118)
4f5adeb1c7 is described below
commit 4f5adeb1c73097b85ffd727a657be209acad81bf
Author: CosmosNi <[email protected]>
AuthorDate: Thu Apr 17 19:01:02 2025 +0800
[Feature][Checkpoint] Add check script for source/sink state class
serialVersionUID missing (#9118)
---
seatunnel-ci-tools/pom.xml | 6 +
.../seatunnel/api/SerialVersionUIDCheckerTest.java | 321 +++++++++++++++++++++
.../source/AmazonDynamoDBSourceSplit.java | 1 +
.../source/AmazonDynamoDBSourceState.java | 1 +
.../enumerator/TiDBSourceCheckpointState.java | 1 +
.../clickhouse/state/CKAggCommitInfo.java | 4 +-
.../seatunnel/clickhouse/state/CKCommitInfo.java | 4 +-
.../clickhouse/state/CKFileAggCommitInfo.java | 1 +
.../clickhouse/state/CKFileCommitInfo.java | 1 +
.../clickhouse/state/ClickhouseSinkState.java | 4 +-
.../seatunnel/common/source/SingleSplit.java | 1 +
.../common/source/SingleSplitEnumeratorState.java | 4 +-
.../doris/sink/committer/DorisCommitInfo.java | 1 +
.../doris/sink/writer/DorisSinkState.java | 1 +
.../easysearch/source/EasysearchSourceState.java | 1 +
.../state/EasysearchAggregatedCommitInfo.java | 4 +-
.../easysearch/state/EasysearchCommitInfo.java | 1 +
.../easysearch/state/EasysearchSinkState.java | 4 +-
.../source/ElasticsearchSourceState.java | 1 +
.../state/ElasticsearchAggregatedCommitInfo.java | 4 +-
.../state/ElasticsearchCommitInfo.java | 4 +-
.../state/ElasticsearchSinkState.java | 4 +-
.../seatunnel/fake/source/FakeSourceSplit.java | 1 +
.../seatunnel/fake/state/FakeSourceState.java | 1 +
.../file/sink/commit/FileAggregatedCommitInfo.java | 1 +
.../seatunnel/file/sink/commit/FileCommitInfo.java | 1 +
.../seatunnel/file/sink/state/FileSinkState.java | 1 +
.../seatunnel/hbase/source/HbaseSourceSplit.java | 1 +
.../hbase/state/HbaseAggregatedCommitInfo.java | 4 +-
.../seatunnel/hbase/state/HbaseCommitInfo.java | 4 +-
.../seatunnel/hbase/state/HbaseSinkState.java | 4 +-
.../hudi/sink/state/HudiAggregatedCommitInfo.java | 4 +-
.../seatunnel/hudi/sink/state/HudiCommitInfo.java | 4 +-
.../seatunnel/hudi/sink/state/HudiSinkState.java | 1 +
.../sink/commit/IcebergAggregatedCommitInfo.java | 1 +
.../iceberg/sink/commit/IcebergCommitInfo.java | 1 +
.../influxdb/source/InfluxDBSourceSplit.java | 1 +
.../influxdb/state/InfluxDBSourceState.java | 1 +
.../seatunnel/iotdb/state/IoTDBSourceState.java | 1 +
.../seatunnel/jdbc/source/JdbcSourceSplit.java | 1 +
.../jdbc/state/JdbcAggregatedCommitInfo.java | 1 +
.../seatunnel/jdbc/state/JdbcSinkState.java | 1 +
.../seatunnel/jdbc/state/JdbcSourceState.java | 1 +
.../connectors/seatunnel/jdbc/state/XidInfo.java | 1 +
.../seatunnel/kafka/source/KafkaSourceSplit.java | 1 +
.../kafka/state/KafkaAggregatedCommitInfo.java | 1 +
.../seatunnel/kafka/state/KafkaCommitInfo.java | 1 +
.../seatunnel/kafka/state/KafkaSinkState.java | 1 +
.../seatunnel/kafka/state/KafkaSourceState.java | 1 +
.../kudu/state/KuduAggregatedCommitInfo.java | 4 +-
.../seatunnel/kudu/state/KuduCommitInfo.java | 4 +-
.../seatunnel/kudu/state/KuduSinkState.java | 4 +-
.../seatunnel/kudu/state/KuduSourceState.java | 1 +
.../maxcompute/source/MaxcomputeSourceSplit.java | 1 +
.../maxcompute/source/MaxcomputeSourceState.java | 1 +
.../seatunnel/milvus/source/MilvusSourceSplit.java | 1 +
.../seatunnel/milvus/source/MilvusSourceState.java | 1 +
.../milvus/state/MilvusAggregatedCommitInfo.java | 1 +
.../seatunnel/milvus/state/MilvusCommitInfo.java | 4 +-
.../seatunnel/milvus/state/MilvusSinkState.java | 4 +-
.../seatunnel/mongodb/sink/state/DocumentBulk.java | 1 +
.../sink/state/MongodbAggregatedCommitInfo.java | 1 +
.../mongodb/sink/state/MongodbCommitInfo.java | 1 +
.../seatunnel/mongodb/source/split/MongoSplit.java | 1 +
.../enumerator/PulsarSplitEnumeratorState.java | 1 +
.../pulsar/source/split/PulsarPartitionSplit.java | 1 +
.../pulsar/state/PulsarAggregatedCommitInfo.java | 1 +
.../seatunnel/pulsar/state/PulsarCommitInfo.java | 1 +
.../seatunnel/pulsar/state/PulsarSinkState.java | 1 +
.../seatunnel/rabbitmq/split/RabbitmqSplit.java | 1 +
.../split/RabbitmqSplitEnumeratorState.java | 4 +-
.../rocketmq/source/RocketMqSourceSplit.java | 1 +
.../rocketmq/source/RocketMqSourceState.java | 1 +
.../sink/committer/SelectDBCommitInfo.java | 1 +
.../selectdb/sink/writer/SelectDBSinkState.java | 1 +
.../seatunnel/sls/source/SlsSourceSplit.java | 1 +
.../seatunnel/sls/state/SlsCommitInfo.java | 1 +
.../seatunnel/sls/state/SlsSinkState.java | 1 +
.../seatunnel/sls/state/SlsSourceState.java | 1 +
.../starrocks/source/StarRocksSourceSplit.java | 1 +
.../starrocks/source/StarRocksSourceState.java | 1 +
.../tablestore/source/TableStoreDBSourceSplit.java | 1 +
.../tablestore/source/TableStoreDBSourceState.java | 1 +
.../tdengine/state/TDengineSourceState.java | 1 +
.../typesense/source/TypesenseSourceState.java | 1 +
.../state/TypesenseAggregatedCommitInfo.java | 4 +-
.../typesense/state/TypesenseCommitInfo.java | 4 +-
.../typesense/state/TypesenseSinkState.java | 4 +-
88 files changed, 459 insertions(+), 23 deletions(-)
diff --git a/seatunnel-ci-tools/pom.xml b/seatunnel-ci-tools/pom.xml
index 18084e0ed1..783d263ba7 100644
--- a/seatunnel-ci-tools/pom.xml
+++ b/seatunnel-ci-tools/pom.xml
@@ -36,6 +36,12 @@
<version>${javaparser.version}</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>com.github.javaparser</groupId>
+ <artifactId>javaparser-symbol-solver-core</artifactId>
+ <version>${javaparser.version}</version>
+ <scope>test</scope>
+ </dependency>
</dependencies>
<build>
diff --git
a/seatunnel-ci-tools/src/test/java/org/apache/seatunnel/api/SerialVersionUIDCheckerTest.java
b/seatunnel-ci-tools/src/test/java/org/apache/seatunnel/api/SerialVersionUIDCheckerTest.java
new file mode 100644
index 0000000000..7015a7617e
--- /dev/null
+++
b/seatunnel-ci-tools/src/test/java/org/apache/seatunnel/api/SerialVersionUIDCheckerTest.java
@@ -0,0 +1,321 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.seatunnel.api;
+
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.junit.jupiter.api.extension.ExtensionContext;
+import org.junit.jupiter.api.extension.TestWatcher;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import com.github.javaparser.JavaParser;
+import com.github.javaparser.ParseResult;
+import com.github.javaparser.ast.CompilationUnit;
+import com.github.javaparser.ast.body.ClassOrInterfaceDeclaration;
+import com.github.javaparser.ast.type.ClassOrInterfaceType;
+import com.github.javaparser.ast.type.Type;
+import
com.github.javaparser.resolution.declarations.ResolvedReferenceTypeDeclaration;
+import com.github.javaparser.resolution.types.ResolvedReferenceType;
+import com.github.javaparser.symbolsolver.JavaSymbolSolver;
+import
com.github.javaparser.symbolsolver.resolution.typesolvers.CombinedTypeSolver;
+import
com.github.javaparser.symbolsolver.resolution.typesolvers.JavaParserTypeSolver;
+import
com.github.javaparser.symbolsolver.resolution.typesolvers.ReflectionTypeSolver;
+
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.FileVisitOption;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
+
+import static org.junit.jupiter.api.Assertions.fail;
+
+@ExtendWith(SerialVersionUIDCheckerTest.TestResultLogger.class)
+public class SerialVersionUIDCheckerTest {
+ private static final Logger LOG =
LoggerFactory.getLogger(SerialVersionUIDCheckerTest.class);
+ private static final String JAVA_FILE_EXTENSION = ".java";
+ private static final String CONNECTOR_DIR = "seatunnel-connectors-v2";
+ private static final String JAVA_PATH_FRAGMENT =
+ "src" + File.separator + "main" + File.separator + "java";
+ private static final JavaParser JAVA_PARSER;
+ private static final Set<String> checkedClasses = new HashSet<>();
+ private static final Map<String, ClassOrInterfaceDeclaration>
classDeclarationMap =
+ new HashMap<>();
+
+ static {
+ CombinedTypeSolver typeSolver = new CombinedTypeSolver();
+ typeSolver.add(new ReflectionTypeSolver());
+ setupTypeSolver(typeSolver);
+ JavaSymbolSolver symbolSolver = new JavaSymbolSolver(typeSolver);
+ JAVA_PARSER = new JavaParser();
+ JAVA_PARSER.getParserConfiguration().setSymbolResolver(symbolSolver);
+ }
+
+ private static void setupTypeSolver(CombinedTypeSolver typeSolver) {
+ try (Stream<Path> paths = Files.walk(Paths.get(".."),
FileVisitOption.FOLLOW_LINKS)) {
+ paths.filter(path -> path.toString().contains("src/main/java"))
+ .forEach(
+ path -> {
+ try {
+ typeSolver.add(new
JavaParserTypeSolver(path.toFile()));
+ } catch (Exception e) {
+ // ignore
+ }
+ });
+ } catch (IOException e) {
+ LOG.error("Failed to setup type solver", e);
+ }
+ }
+
+ @Test
+ public void checkSerialVersionUID() {
+ List<String> missingSerialVersionUID = new ArrayList<>();
+ List<Path> connectorClassPaths = findConnectorClassPaths();
+ LOG.info("Found {} connector class files to check",
connectorClassPaths.size());
+
+ // First, populate the classDeclarationMap with all classes
+ for (Path path : connectorClassPaths) {
+ populateClassDeclarationMap(path);
+ }
+ LOG.info("Populated class declaration map with {} classes",
classDeclarationMap.size());
+
+ // Then check each class path for serialVersionUID
+ for (Path path : connectorClassPaths) {
+ checkClassPath(path, missingSerialVersionUID);
+ }
+
+ LOG.info("Check completed. Checked {} connector classes.",
connectorClassPaths.size());
+ if (!missingSerialVersionUID.isEmpty()) {
+ String errorMessage =
generateErrorMessage(missingSerialVersionUID);
+ LOG.error("Test failed: {}", errorMessage);
+ fail(errorMessage);
+ }
+ LOG.info("All checked classes have correct serialVersionUID.");
+ }
+
+ private List<Path> findConnectorClassPaths() {
+ try (Stream<Path> paths = Files.walk(Paths.get(".."),
FileVisitOption.FOLLOW_LINKS)) {
+ return paths.filter(
+ path -> {
+ String pathString = path.toString();
+ return pathString.endsWith(JAVA_FILE_EXTENSION)
+ && pathString.contains(CONNECTOR_DIR)
+ &&
pathString.contains(JAVA_PATH_FRAGMENT);
+ })
+ .collect(Collectors.toList());
+ } catch (IOException e) {
+ throw new RuntimeException("Failed to walk through connector
directories", e);
+ }
+ }
+
+ /** Populate the classDeclarationMap with all class declarations from the
given path. */
+ private void populateClassDeclarationMap(Path path) {
+ try {
+ ParseResult<CompilationUnit> parseResult =
+ JAVA_PARSER.parse(Files.newInputStream(path));
+ parseResult
+ .getResult()
+ .ifPresent(
+ compilationUnit -> {
+ List<ClassOrInterfaceDeclaration> classes =
+
compilationUnit.findAll(ClassOrInterfaceDeclaration.class);
+ for (ClassOrInterfaceDeclaration
classDeclaration : classes) {
+ String className =
+
classDeclaration.getFullyQualifiedName().orElse("");
+ if (!className.isEmpty()) {
+ classDeclarationMap.put(className,
classDeclaration);
+ }
+ }
+ });
+ } catch (IOException e) {
+ LOG.warn("Could not parse file: {}", path, e);
+ }
+ }
+
+ /**
+ * Check the class path for classes that implement SeaTunnelSource or
SeaTunnelSink and verify
+ * they have serialVersionUID.
+ */
+ private void checkClassPath(Path path, List<String>
missingSerialVersionUID) {
+ try {
+ ParseResult<CompilationUnit> parseResult =
+ JAVA_PARSER.parse(Files.newInputStream(path));
+ parseResult
+ .getResult()
+ .ifPresent(
+ compilationUnit -> {
+ List<ClassOrInterfaceDeclaration> classes =
+
compilationUnit.findAll(ClassOrInterfaceDeclaration.class);
+ for (ClassOrInterfaceDeclaration
classDeclaration : classes) {
+ if
(implementsSeaTunnelSourceOrSink(classDeclaration)) {
+ checkImplementedTypes(
+ classDeclaration,
missingSerialVersionUID);
+ }
+ }
+ });
+ } catch (IOException e) {
+ LOG.warn("Could not parse file: {}", path, e);
+ }
+ }
+
+ private boolean
implementsSeaTunnelSourceOrSink(ClassOrInterfaceDeclaration classDeclaration) {
+ return classDeclaration.getImplementedTypes().stream()
+ .anyMatch(
+ type -> {
+ String typeName = type.getNameAsString();
+ return typeName.equals("SeaTunnelSource")
+ || typeName.equals("SeaTunnelSink");
+ });
+ }
+
+ private void checkImplementedTypes(
+ ClassOrInterfaceDeclaration classDeclaration, List<String>
missingSerialVersionUID) {
+ classDeclaration
+ .getImplementedTypes()
+ .forEach(
+ implementedType -> {
+ implementedType
+ .getTypeArguments()
+ .ifPresent(
+ typeArgs -> {
+ for (Type typeArg : typeArgs) {
+ if
(typeArg.isClassOrInterfaceType()) {
+ checkClassType(
+
typeArg.asClassOrInterfaceType(),
+
missingSerialVersionUID);
+ }
+ }
+ });
+ });
+ }
+
+ private void checkClassType(
+ ClassOrInterfaceType classType, List<String>
missingSerialVersionUID) {
+
+ try {
+ ResolvedReferenceType resolvedType =
classType.resolve().asReferenceType();
+ if (resolvedType == null) {
+ return;
+ }
+ if (isSerializable(resolvedType)) {
+ ResolvedReferenceTypeDeclaration typeDeclaration =
+ resolvedType.getTypeDeclaration().orElse(null);
+ if (typeDeclaration == null) {
+ return;
+ }
+ String paramTypeName = typeDeclaration.getQualifiedName();
+ if (!checkedClasses.contains(paramTypeName)) {
+ // Check if the class is abstract and return early if it is
+ if (isAbstractClass(typeDeclaration)) {
+ checkedClasses.add(paramTypeName);
+ return;
+ }
+
+ if (!hasSerialVersionUID(typeDeclaration)) {
+ missingSerialVersionUID.add(paramTypeName);
+ LOG.warn("Class {} is missing serialVersionUID field",
paramTypeName);
+ }
+ checkedClasses.add(paramTypeName);
+ }
+ }
+ } catch (Exception e) {
+ LOG.warn("Could not resolve type: {} in file: {}",
classType.getNameAsString(), e);
+ }
+ }
+
+ private boolean isSerializable(ResolvedReferenceType resolvedType) {
+ return resolvedType.getQualifiedName().equals("java.io.Serializable")
+ || resolvedType.getAllAncestors().stream()
+ .anyMatch(
+ ancestor ->
+
ancestor.getQualifiedName().equals("java.io.Serializable"));
+ }
+
+ private boolean hasSerialVersionUID(ResolvedReferenceTypeDeclaration
typeDeclaration) {
+ return typeDeclaration.isInterface()
+ || typeDeclaration.getAllFields().stream()
+ .anyMatch(field ->
field.getName().equals("serialVersionUID"));
+ }
+
+ private boolean isAbstractClass(ResolvedReferenceTypeDeclaration
typeDeclaration) {
+ // Only check classes, not interfaces
+ if (!typeDeclaration.isClass()) {
+ return false;
+ }
+
+ String className = typeDeclaration.getQualifiedName();
+
+ // First check if we have the class declaration in our map
+ ClassOrInterfaceDeclaration classDeclaration =
classDeclarationMap.get(className);
+ if (classDeclaration != null) {
+ // Directly check if the class is abstract using the declaration
+ return classDeclaration.isAbstract();
+ }
+
+ return false;
+ }
+
+ private String generateErrorMessage(List<String> missingSerialVersionUID) {
+ StringBuilder errorMessage = new StringBuilder();
+
errorMessage.append("=================================================================\n");
+ errorMessage.append(
+ "Test failed: The following classes are missing
serialVersionUID fields\n");
+
errorMessage.append("=================================================================\n");
+ errorMessage
+ .append("A total of ")
+ .append(missingSerialVersionUID.size())
+ .append(" Question:\n\n");
+
+ for (int i = 0; i < missingSerialVersionUID.size(); i++) {
+ errorMessage
+ .append(i + 1)
+ .append(". ")
+ .append(missingSerialVersionUID.get(i))
+ .append("\n");
+ }
+
+ errorMessage.append(
+
"\n=================================================================\n");
+ errorMessage.append(
+ "Please add a serialVersionUID field to the above class and
make sure its value is not -1L, for example:\n");
+ errorMessage.append("private static final long serialVersionUID =
5967888460683065669L;\n");
+
errorMessage.append("=================================================================\n");
+ return errorMessage.toString();
+ }
+
+ public static class TestResultLogger implements TestWatcher {
+ @Override
+ public void testSuccessful(ExtensionContext context) {
+ LOG.info("Test successful: {}", context.getDisplayName());
+ }
+
+ @Override
+ public void testFailed(ExtensionContext context, Throwable cause) {
+ LOG.error("Test failed: {}", context.getDisplayName(), cause);
+ }
+ }
+}
diff --git
a/seatunnel-connectors-v2/connector-amazondynamodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/amazondynamodb/source/AmazonDynamoDBSourceSplit.java
b/seatunnel-connectors-v2/connector-amazondynamodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/amazondynamodb/source/AmazonDynamoDBSourceSplit.java
index 08a760998e..825cc3666d 100644
---
a/seatunnel-connectors-v2/connector-amazondynamodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/amazondynamodb/source/AmazonDynamoDBSourceSplit.java
+++
b/seatunnel-connectors-v2/connector-amazondynamodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/amazondynamodb/source/AmazonDynamoDBSourceSplit.java
@@ -28,6 +28,7 @@ import lombok.Setter;
@Setter
public class AmazonDynamoDBSourceSplit implements SourceSplit {
+ private static final long serialVersionUID = -5148142613656330674L;
private Integer splitId;
private Integer totalSegments;
private Integer itemCount;
diff --git
a/seatunnel-connectors-v2/connector-amazondynamodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/amazondynamodb/source/AmazonDynamoDBSourceState.java
b/seatunnel-connectors-v2/connector-amazondynamodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/amazondynamodb/source/AmazonDynamoDBSourceState.java
index 5ea15dc34a..2d9ecc6223 100644
---
a/seatunnel-connectors-v2/connector-amazondynamodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/amazondynamodb/source/AmazonDynamoDBSourceState.java
+++
b/seatunnel-connectors-v2/connector-amazondynamodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/amazondynamodb/source/AmazonDynamoDBSourceState.java
@@ -29,6 +29,7 @@ import java.util.Map;
@Setter
@AllArgsConstructor
public class AmazonDynamoDBSourceState implements Serializable {
+ private static final long serialVersionUID = -8614736648787520123L;
private boolean shouldEnumerate;
private Map<Integer, List<AmazonDynamoDBSourceSplit>> pendingSplits;
}
diff --git
a/seatunnel-connectors-v2/connector-cdc/connector-cdc-tidb/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/tidb/source/enumerator/TiDBSourceCheckpointState.java
b/seatunnel-connectors-v2/connector-cdc/connector-cdc-tidb/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/tidb/source/enumerator/TiDBSourceCheckpointState.java
index 0691c651ee..6869f73ea8 100644
---
a/seatunnel-connectors-v2/connector-cdc/connector-cdc-tidb/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/tidb/source/enumerator/TiDBSourceCheckpointState.java
+++
b/seatunnel-connectors-v2/connector-cdc/connector-cdc-tidb/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/tidb/source/enumerator/TiDBSourceCheckpointState.java
@@ -32,6 +32,7 @@ import java.util.Map;
@AllArgsConstructor
@ToString
public class TiDBSourceCheckpointState implements Serializable {
+ private static final long serialVersionUID = 6292978509042158791L;
private boolean shouldEnumerate;
private Map<Integer, TiDBSourceSplit> pendingSplit;
}
diff --git
a/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKAggCommitInfo.java
b/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKAggCommitInfo.java
index 32c40e22b6..cb3a78967c 100644
---
a/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKAggCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKAggCommitInfo.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.clickhouse.state;
import java.io.Serializable;
-public class CKAggCommitInfo implements Serializable {}
+public class CKAggCommitInfo implements Serializable {
+ private static final long serialVersionUID = 7725191558817348241L;
+}
diff --git
a/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKCommitInfo.java
b/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKCommitInfo.java
index 6499fc04f5..e17adaf6af 100644
---
a/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKCommitInfo.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.clickhouse.state;
import java.io.Serializable;
-public class CKCommitInfo implements Serializable {}
+public class CKCommitInfo implements Serializable {
+ private static final long serialVersionUID = -3467325029403882141L;
+}
diff --git
a/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKFileAggCommitInfo.java
b/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKFileAggCommitInfo.java
index de1dae43d3..2ce447b3b7 100644
---
a/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKFileAggCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKFileAggCommitInfo.java
@@ -30,5 +30,6 @@ import java.util.Map;
@AllArgsConstructor
public class CKFileAggCommitInfo implements Serializable {
+ private static final long serialVersionUID = 1815170158201953697L;
private Map<Shard, List<String>> detachedFiles;
}
diff --git
a/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKFileCommitInfo.java
b/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKFileCommitInfo.java
index 6209b5c8bb..aae4875f51 100644
---
a/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKFileCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/CKFileCommitInfo.java
@@ -30,5 +30,6 @@ import java.util.Map;
@AllArgsConstructor
public class CKFileCommitInfo implements Serializable {
+ private static final long serialVersionUID = 5967888460683065639L;
private Map<Shard, List<String>> detachedFiles;
}
diff --git
a/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/ClickhouseSinkState.java
b/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/ClickhouseSinkState.java
index 4f26d85084..917d7e7afa 100644
---
a/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/ClickhouseSinkState.java
+++
b/seatunnel-connectors-v2/connector-clickhouse/src/main/java/org/apache/seatunnel/connectors/seatunnel/clickhouse/state/ClickhouseSinkState.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.clickhouse.state;
import java.io.Serializable;
-public class ClickhouseSinkState implements Serializable {}
+public class ClickhouseSinkState implements Serializable {
+ private static final long serialVersionUID = -2781233847929140233L;
+}
diff --git
a/seatunnel-connectors-v2/connector-common/src/main/java/org/apache/seatunnel/connectors/seatunnel/common/source/SingleSplit.java
b/seatunnel-connectors-v2/connector-common/src/main/java/org/apache/seatunnel/connectors/seatunnel/common/source/SingleSplit.java
index 02951f4672..6a0fea24fd 100644
---
a/seatunnel-connectors-v2/connector-common/src/main/java/org/apache/seatunnel/connectors/seatunnel/common/source/SingleSplit.java
+++
b/seatunnel-connectors-v2/connector-common/src/main/java/org/apache/seatunnel/connectors/seatunnel/common/source/SingleSplit.java
@@ -20,6 +20,7 @@ package
org.apache.seatunnel.connectors.seatunnel.common.source;
import org.apache.seatunnel.api.source.SourceSplit;
public class SingleSplit implements SourceSplit {
+ private static final long serialVersionUID = -8280083360971974402L;
private final byte[] state;
public SingleSplit(byte[] state) {
diff --git
a/seatunnel-connectors-v2/connector-common/src/main/java/org/apache/seatunnel/connectors/seatunnel/common/source/SingleSplitEnumeratorState.java
b/seatunnel-connectors-v2/connector-common/src/main/java/org/apache/seatunnel/connectors/seatunnel/common/source/SingleSplitEnumeratorState.java
index ae28f7d062..37968b71c3 100644
---
a/seatunnel-connectors-v2/connector-common/src/main/java/org/apache/seatunnel/connectors/seatunnel/common/source/SingleSplitEnumeratorState.java
+++
b/seatunnel-connectors-v2/connector-common/src/main/java/org/apache/seatunnel/connectors/seatunnel/common/source/SingleSplitEnumeratorState.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.common.source;
import java.io.Serializable;
-public class SingleSplitEnumeratorState implements Serializable {}
+public class SingleSplitEnumeratorState implements Serializable {
+ private static final long serialVersionUID = -2700283917471267033L;
+}
diff --git
a/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/sink/committer/DorisCommitInfo.java
b/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/sink/committer/DorisCommitInfo.java
index 8682959a56..e676fd31ab 100644
---
a/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/sink/committer/DorisCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/sink/committer/DorisCommitInfo.java
@@ -29,6 +29,7 @@ import java.io.Serializable;
@ToString
@EqualsAndHashCode
public class DorisCommitInfo implements Serializable {
+ private static final long serialVersionUID = -3581686409786064970L;
private final String hostPort;
private final String db;
private final long txbID;
diff --git
a/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/sink/writer/DorisSinkState.java
b/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/sink/writer/DorisSinkState.java
index c3c5725b32..5eec3bcee4 100644
---
a/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/sink/writer/DorisSinkState.java
+++
b/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/sink/writer/DorisSinkState.java
@@ -29,6 +29,7 @@ import java.io.Serializable;
@ToString
@EqualsAndHashCode
public class DorisSinkState implements Serializable {
+ private static final long serialVersionUID = 8154853734116737277L;
private final String labelPrefix;
private final long checkpointId;
diff --git
a/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/source/EasysearchSourceState.java
b/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/source/EasysearchSourceState.java
index 78fa9c0edc..4039ad2947 100644
---
a/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/source/EasysearchSourceState.java
+++
b/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/source/EasysearchSourceState.java
@@ -27,6 +27,7 @@ import java.util.Map;
@AllArgsConstructor
@Getter
public class EasysearchSourceState implements Serializable {
+ private static final long serialVersionUID = 5807217062829745160L;
private boolean shouldEnumerate;
private Map<Integer, List<EasysearchSourceSplit>> pendingSplit;
}
diff --git
a/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/state/EasysearchAggregatedCommitInfo.java
b/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/state/EasysearchAggregatedCommitInfo.java
index 1617520127..4d39772e3f 100644
---
a/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/state/EasysearchAggregatedCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/state/EasysearchAggregatedCommitInfo.java
@@ -20,4 +20,6 @@ package
org.apache.seatunnel.connectors.seatunnel.easysearch.state;
import java.io.Serializable;
/** Todo: we need to add a default */
-public class EasysearchAggregatedCommitInfo implements Serializable {}
+public class EasysearchAggregatedCommitInfo implements Serializable {
+ private static final long serialVersionUID = 7704793431405281055L;
+}
diff --git
a/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/state/EasysearchCommitInfo.java
b/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/state/EasysearchCommitInfo.java
index 9d524c0869..36b8ac95f7 100644
---
a/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/state/EasysearchCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/state/EasysearchCommitInfo.java
@@ -27,6 +27,7 @@ import java.util.Properties;
@AllArgsConstructor
public class EasysearchCommitInfo implements Serializable {
+ private static final long serialVersionUID = 3813827156739086365L;
private final String transactionId;
private final Properties kafkaProperties;
private final long producerId;
diff --git
a/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/state/EasysearchSinkState.java
b/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/state/EasysearchSinkState.java
index 9863b84835..caa5079251 100644
---
a/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/state/EasysearchSinkState.java
+++
b/seatunnel-connectors-v2/connector-easysearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/easysearch/state/EasysearchSinkState.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.easysearch.state;
import java.io.Serializable;
-public class EasysearchSinkState implements Serializable {}
+public class EasysearchSinkState implements Serializable {
+ private static final long serialVersionUID = -5729872341182627418L;
+}
diff --git
a/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/source/ElasticsearchSourceState.java
b/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/source/ElasticsearchSourceState.java
index dda0a9eea8..2c317e2a39 100644
---
a/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/source/ElasticsearchSourceState.java
+++
b/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/source/ElasticsearchSourceState.java
@@ -27,6 +27,7 @@ import java.util.Map;
@AllArgsConstructor
@Getter
public class ElasticsearchSourceState implements Serializable {
+ private static final long serialVersionUID = 3883532547289760508L;
private boolean shouldEnumerate;
private Map<Integer, List<ElasticsearchSourceSplit>> pendingSplit;
}
diff --git
a/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/state/ElasticsearchAggregatedCommitInfo.java
b/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/state/ElasticsearchAggregatedCommitInfo.java
index f5875a9728..aeaf87c2cb 100644
---
a/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/state/ElasticsearchAggregatedCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/state/ElasticsearchAggregatedCommitInfo.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.elasticsearch.state;
import java.io.Serializable;
-public class ElasticsearchAggregatedCommitInfo implements Serializable {}
+public class ElasticsearchAggregatedCommitInfo implements Serializable {
+ private static final long serialVersionUID = 7556786324629150152L;
+}
diff --git
a/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/state/ElasticsearchCommitInfo.java
b/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/state/ElasticsearchCommitInfo.java
index 68cb9b2a3e..b8acef0594 100644
---
a/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/state/ElasticsearchCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/state/ElasticsearchCommitInfo.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.elasticsearch.state;
import java.io.Serializable;
-public class ElasticsearchCommitInfo implements Serializable {}
+public class ElasticsearchCommitInfo implements Serializable {
+ private static final long serialVersionUID = 4512769768158989809L;
+}
diff --git
a/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/state/ElasticsearchSinkState.java
b/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/state/ElasticsearchSinkState.java
index 29b95330ab..6b3a16a9a2 100644
---
a/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/state/ElasticsearchSinkState.java
+++
b/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/state/ElasticsearchSinkState.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.elasticsearch.state;
import java.io.Serializable;
-public class ElasticsearchSinkState implements Serializable {}
+public class ElasticsearchSinkState implements Serializable {
+ private static final long serialVersionUID = -3180616525364355053L;
+}
diff --git
a/seatunnel-connectors-v2/connector-fake/src/main/java/org/apache/seatunnel/connectors/seatunnel/fake/source/FakeSourceSplit.java
b/seatunnel-connectors-v2/connector-fake/src/main/java/org/apache/seatunnel/connectors/seatunnel/fake/source/FakeSourceSplit.java
index 796b6423f5..2a7362abd2 100644
---
a/seatunnel-connectors-v2/connector-fake/src/main/java/org/apache/seatunnel/connectors/seatunnel/fake/source/FakeSourceSplit.java
+++
b/seatunnel-connectors-v2/connector-fake/src/main/java/org/apache/seatunnel/connectors/seatunnel/fake/source/FakeSourceSplit.java
@@ -26,6 +26,7 @@ import lombok.Data;
@AllArgsConstructor
public class FakeSourceSplit implements SourceSplit {
+ private static final long serialVersionUID = -3321891887156360959L;
private String tableId;
private int splitId;
diff --git
a/seatunnel-connectors-v2/connector-fake/src/main/java/org/apache/seatunnel/connectors/seatunnel/fake/state/FakeSourceState.java
b/seatunnel-connectors-v2/connector-fake/src/main/java/org/apache/seatunnel/connectors/seatunnel/fake/state/FakeSourceState.java
index 93a338e11c..6394d063c7 100644
---
a/seatunnel-connectors-v2/connector-fake/src/main/java/org/apache/seatunnel/connectors/seatunnel/fake/state/FakeSourceState.java
+++
b/seatunnel-connectors-v2/connector-fake/src/main/java/org/apache/seatunnel/connectors/seatunnel/fake/state/FakeSourceState.java
@@ -28,5 +28,6 @@ import java.util.Set;
@Getter
@AllArgsConstructor
public class FakeSourceState implements Serializable {
+ private static final long serialVersionUID = 3518027332238448485L;
private final Set<FakeSourceSplit> assignedSplits;
}
diff --git
a/seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/sink/commit/FileAggregatedCommitInfo.java
b/seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/sink/commit/FileAggregatedCommitInfo.java
index 5ca3b30fad..f17d35352c 100644
---
a/seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/sink/commit/FileAggregatedCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/sink/commit/FileAggregatedCommitInfo.java
@@ -27,6 +27,7 @@ import java.util.List;
@Data
@AllArgsConstructor
public class FileAggregatedCommitInfo implements Serializable {
+ private static final long serialVersionUID = 8035568366654544907L;
/**
* Storage the commit info in map.
*
diff --git
a/seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/sink/commit/FileCommitInfo.java
b/seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/sink/commit/FileCommitInfo.java
index 27e74ff0a8..eab71f233f 100644
---
a/seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/sink/commit/FileCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/sink/commit/FileCommitInfo.java
@@ -27,6 +27,7 @@ import java.util.List;
@Data
@AllArgsConstructor
public class FileCommitInfo implements Serializable {
+ private static final long serialVersionUID = 7327659196051587339L;
/**
* Storage the commit info in map.
*
diff --git
a/seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/sink/state/FileSinkState.java
b/seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/sink/state/FileSinkState.java
index 34ca13625f..bb0295090f 100644
---
a/seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/sink/state/FileSinkState.java
+++
b/seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/sink/state/FileSinkState.java
@@ -27,6 +27,7 @@ import java.util.List;
@Data
@AllArgsConstructor
public class FileSinkState implements Serializable {
+ private static final long serialVersionUID = -8757454855081836294L;
private final String transactionId;
private final String uuidPrefix;
private final Long checkpointId;
diff --git
a/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/source/HbaseSourceSplit.java
b/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/source/HbaseSourceSplit.java
index 1d38ddd116..143c14c7a2 100644
---
a/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/source/HbaseSourceSplit.java
+++
b/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/source/HbaseSourceSplit.java
@@ -22,6 +22,7 @@ import org.apache.seatunnel.api.source.SourceSplit;
public class HbaseSourceSplit implements SourceSplit {
public static final String HBASE_SOURCE_SPLIT_PREFIX =
"hbase_source_split_";
+ private static final long serialVersionUID = 34191409620359295L;
private String splitId;
private byte[] startRow;
private byte[] endRow;
diff --git
a/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/state/HbaseAggregatedCommitInfo.java
b/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/state/HbaseAggregatedCommitInfo.java
index c1996dc057..1011047c57 100644
---
a/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/state/HbaseAggregatedCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/state/HbaseAggregatedCommitInfo.java
@@ -19,4 +19,6 @@ package org.apache.seatunnel.connectors.seatunnel.hbase.state;
import java.io.Serializable;
-public class HbaseAggregatedCommitInfo implements Serializable {}
+public class HbaseAggregatedCommitInfo implements Serializable {
+ private static final long serialVersionUID = -3046395878305829153L;
+}
diff --git
a/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/state/HbaseCommitInfo.java
b/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/state/HbaseCommitInfo.java
index 39999ceddc..dd92682211 100644
---
a/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/state/HbaseCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/state/HbaseCommitInfo.java
@@ -19,4 +19,6 @@ package org.apache.seatunnel.connectors.seatunnel.hbase.state;
import java.io.Serializable;
-public class HbaseCommitInfo implements Serializable {}
+public class HbaseCommitInfo implements Serializable {
+ private static final long serialVersionUID = -5890085491808138401L;
+}
diff --git
a/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/state/HbaseSinkState.java
b/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/state/HbaseSinkState.java
index 6e1f068cf6..bd285be7bc 100644
---
a/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/state/HbaseSinkState.java
+++
b/seatunnel-connectors-v2/connector-hbase/src/main/java/org/apache/seatunnel/connectors/seatunnel/hbase/state/HbaseSinkState.java
@@ -19,4 +19,6 @@ package org.apache.seatunnel.connectors.seatunnel.hbase.state;
import java.io.Serializable;
-public class HbaseSinkState implements Serializable {}
+public class HbaseSinkState implements Serializable {
+ private static final long serialVersionUID = 4863333264891339699L;
+}
diff --git
a/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/sink/state/HudiAggregatedCommitInfo.java
b/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/sink/state/HudiAggregatedCommitInfo.java
index 065fed72ad..30471071ec 100644
---
a/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/sink/state/HudiAggregatedCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/sink/state/HudiAggregatedCommitInfo.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.hudi.sink.state;
import java.io.Serializable;
-public class HudiAggregatedCommitInfo implements Serializable {}
+public class HudiAggregatedCommitInfo implements Serializable {
+ private static final long serialVersionUID = -5342563020191900441L;
+}
diff --git
a/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/sink/state/HudiCommitInfo.java
b/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/sink/state/HudiCommitInfo.java
index 808cc4d942..db83470caa 100644
---
a/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/sink/state/HudiCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/sink/state/HudiCommitInfo.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.hudi.sink.state;
import java.io.Serializable;
-public class HudiCommitInfo implements Serializable {}
+public class HudiCommitInfo implements Serializable {
+ private static final long serialVersionUID = 981370692566509995L;
+}
diff --git
a/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/sink/state/HudiSinkState.java
b/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/sink/state/HudiSinkState.java
index 7983dd99e9..daaeab8c1c 100644
---
a/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/sink/state/HudiSinkState.java
+++
b/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/sink/state/HudiSinkState.java
@@ -26,6 +26,7 @@ import java.io.Serializable;
@AllArgsConstructor
public class HudiSinkState implements Serializable {
+ private static final long serialVersionUID = 1531078306940645042L;
private long checkpointId;
private HudiCommitInfo hudiCommitInfo;
diff --git
a/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/sink/commit/IcebergAggregatedCommitInfo.java
b/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/sink/commit/IcebergAggregatedCommitInfo.java
index 5ba75d3d36..5a43c73f61 100644
---
a/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/sink/commit/IcebergAggregatedCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/sink/commit/IcebergAggregatedCommitInfo.java
@@ -26,5 +26,6 @@ import java.util.List;
@Data
@AllArgsConstructor
public class IcebergAggregatedCommitInfo implements Serializable {
+ private static final long serialVersionUID = -8652655689660607409L;
List<IcebergCommitInfo> commitInfos;
}
diff --git
a/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/sink/commit/IcebergCommitInfo.java
b/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/sink/commit/IcebergCommitInfo.java
index 1b4affc0b9..d5196d279a 100644
---
a/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/sink/commit/IcebergCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/sink/commit/IcebergCommitInfo.java
@@ -28,5 +28,6 @@ import java.util.List;
@Data
@AllArgsConstructor
public class IcebergCommitInfo implements Serializable {
+ private static final long serialVersionUID = -3293882102479719936L;
private List<WriteResult> results;
}
diff --git
a/seatunnel-connectors-v2/connector-influxdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/influxdb/source/InfluxDBSourceSplit.java
b/seatunnel-connectors-v2/connector-influxdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/influxdb/source/InfluxDBSourceSplit.java
index 50d9a51e29..79c21d1909 100644
---
a/seatunnel-connectors-v2/connector-influxdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/influxdb/source/InfluxDBSourceSplit.java
+++
b/seatunnel-connectors-v2/connector-influxdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/influxdb/source/InfluxDBSourceSplit.java
@@ -20,6 +20,7 @@ package
org.apache.seatunnel.connectors.seatunnel.influxdb.source;
import org.apache.seatunnel.api.source.SourceSplit;
public class InfluxDBSourceSplit implements SourceSplit {
+ private static final long serialVersionUID = 7936658588681424786L;
private final String splitId;
private final String query;
diff --git
a/seatunnel-connectors-v2/connector-influxdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/influxdb/state/InfluxDBSourceState.java
b/seatunnel-connectors-v2/connector-influxdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/influxdb/state/InfluxDBSourceState.java
index 3d9852bba8..29b0dc2317 100644
---
a/seatunnel-connectors-v2/connector-influxdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/influxdb/state/InfluxDBSourceState.java
+++
b/seatunnel-connectors-v2/connector-influxdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/influxdb/state/InfluxDBSourceState.java
@@ -30,6 +30,7 @@ import java.util.Map;
@Getter
public class InfluxDBSourceState implements Serializable {
+ private static final long serialVersionUID = 7132198105704653582L;
private boolean shouldEnumerate;
private Map<Integer, List<InfluxDBSourceSplit>> pendingSplit;
}
diff --git
a/seatunnel-connectors-v2/connector-iotdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/iotdb/state/IoTDBSourceState.java
b/seatunnel-connectors-v2/connector-iotdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/iotdb/state/IoTDBSourceState.java
index b6588c7dc7..1d8fdc39bd 100644
---
a/seatunnel-connectors-v2/connector-iotdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/iotdb/state/IoTDBSourceState.java
+++
b/seatunnel-connectors-v2/connector-iotdb/src/main/java/org/apache/seatunnel/connectors/seatunnel/iotdb/state/IoTDBSourceState.java
@@ -30,6 +30,7 @@ import java.util.Map;
@Getter
public class IoTDBSourceState implements Serializable {
+ private static final long serialVersionUID = 7142773921678153583L;
private boolean shouldEnumerate;
private Map<Integer, List<IoTDBSourceSplit>> pendingSplit;
}
diff --git
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/source/JdbcSourceSplit.java
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/source/JdbcSourceSplit.java
index e5b11ba00b..51469f011c 100644
---
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/source/JdbcSourceSplit.java
+++
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/source/JdbcSourceSplit.java
@@ -29,6 +29,7 @@ import lombok.ToString;
@ToString
@AllArgsConstructor
public class JdbcSourceSplit implements SourceSplit {
+ private static final long serialVersionUID = -815542654355310611L;
private final TablePath tablePath;
private final String splitId;
private final String splitQuery;
diff --git
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/JdbcAggregatedCommitInfo.java
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/JdbcAggregatedCommitInfo.java
index e04a06dc1f..5d83afd34f 100644
---
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/JdbcAggregatedCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/JdbcAggregatedCommitInfo.java
@@ -26,5 +26,6 @@ import java.util.List;
@Data
@AllArgsConstructor
public class JdbcAggregatedCommitInfo implements Serializable {
+ private static final long serialVersionUID = 7289719797740270727L;
private final List<XidInfo> xidInfoList;
}
diff --git
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/JdbcSinkState.java
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/JdbcSinkState.java
index d3261e8c16..264ae4ba09 100644
---
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/JdbcSinkState.java
+++
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/JdbcSinkState.java
@@ -27,5 +27,6 @@ import java.io.Serializable;
@Data
@AllArgsConstructor
public class JdbcSinkState implements Serializable {
+ private static final long serialVersionUID = 4602940529569595559L;
private final Xid xid;
}
diff --git
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/JdbcSourceState.java
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/JdbcSourceState.java
index f36ac6cbac..7998b964b6 100644
---
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/JdbcSourceState.java
+++
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/JdbcSourceState.java
@@ -30,6 +30,7 @@ import java.util.Map;
@Data
@AllArgsConstructor
public class JdbcSourceState implements Serializable {
+ private static final long serialVersionUID = -6441009212721284346L;
private List<TablePath> pendingTables;
private Map<Integer, List<JdbcSourceSplit>> pendingSplits;
}
diff --git
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/XidInfo.java
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/XidInfo.java
index 80cbe63ff5..df8c074280 100644
---
a/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/XidInfo.java
+++
b/seatunnel-connectors-v2/connector-jdbc/src/main/java/org/apache/seatunnel/connectors/seatunnel/jdbc/state/XidInfo.java
@@ -28,6 +28,7 @@ import java.io.Serializable;
@AllArgsConstructor
public class XidInfo implements Serializable {
+ private static final long serialVersionUID = 5013137011761048462L;
final Xid xid;
final int attempts;
diff --git
a/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/source/KafkaSourceSplit.java
b/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/source/KafkaSourceSplit.java
index 8f5bc5f2d3..9f8ed4a063 100644
---
a/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/source/KafkaSourceSplit.java
+++
b/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/source/KafkaSourceSplit.java
@@ -29,6 +29,7 @@ import java.util.Objects;
public class KafkaSourceSplit implements SourceSplit {
+ private static final long serialVersionUID = 3999766278482118380L;
private TablePath tablePath;
private TopicPartition topicPartition;
private long startOffset = -1L;
diff --git
a/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaAggregatedCommitInfo.java
b/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaAggregatedCommitInfo.java
index 9ae5e88ba5..e43d5a351a 100644
---
a/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaAggregatedCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaAggregatedCommitInfo.java
@@ -26,5 +26,6 @@ import java.util.List;
@Data
@AllArgsConstructor
public class KafkaAggregatedCommitInfo implements Serializable {
+ private static final long serialVersionUID = 1354822426091456946L;
List<KafkaCommitInfo> commitInfos;
}
diff --git
a/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaCommitInfo.java
b/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaCommitInfo.java
index 82ef8af4d3..95f33eed10 100644
---
a/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaCommitInfo.java
@@ -27,6 +27,7 @@ import java.util.Properties;
@AllArgsConstructor
public class KafkaCommitInfo implements Serializable {
+ private static final long serialVersionUID = 6744911880963367089L;
private final String transactionId;
private final Properties kafkaProperties;
private final long producerId;
diff --git
a/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaSinkState.java
b/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaSinkState.java
index 48ea751c5d..2c3ef65992 100644
---
a/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaSinkState.java
+++
b/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaSinkState.java
@@ -27,6 +27,7 @@ import java.util.Properties;
@AllArgsConstructor
public class KafkaSinkState implements Serializable {
+ private static final long serialVersionUID = 2869157152556145465L;
private final String transactionId;
private final String transactionIdPrefix;
private final long checkpointId;
diff --git
a/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaSourceState.java
b/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaSourceState.java
index e6ba535b32..2b84d2a3c6 100644
---
a/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaSourceState.java
+++
b/seatunnel-connectors-v2/connector-kafka/src/main/java/org/apache/seatunnel/connectors/seatunnel/kafka/state/KafkaSourceState.java
@@ -24,6 +24,7 @@ import java.util.Set;
public class KafkaSourceState implements Serializable {
+ private static final long serialVersionUID = 2554717972821706108L;
private Set<KafkaSourceSplit> assignedSplit;
public KafkaSourceState(Set<KafkaSourceSplit> assignedSplit) {
diff --git
a/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduAggregatedCommitInfo.java
b/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduAggregatedCommitInfo.java
index 6abdbf8150..98b21d9f78 100644
---
a/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduAggregatedCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduAggregatedCommitInfo.java
@@ -19,4 +19,6 @@ package org.apache.seatunnel.connectors.seatunnel.kudu.state;
import java.io.Serializable;
-public class KuduAggregatedCommitInfo implements Serializable {}
+public class KuduAggregatedCommitInfo implements Serializable {
+ private static final long serialVersionUID = 1942126095088508489L;
+}
diff --git
a/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduCommitInfo.java
b/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduCommitInfo.java
index 695fb2efc9..28de87f6b2 100644
---
a/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduCommitInfo.java
@@ -19,4 +19,6 @@ package org.apache.seatunnel.connectors.seatunnel.kudu.state;
import java.io.Serializable;
-public class KuduCommitInfo implements Serializable {}
+public class KuduCommitInfo implements Serializable {
+ private static final long serialVersionUID = 6538741084534722982L;
+}
diff --git
a/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduSinkState.java
b/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduSinkState.java
index e229df86d7..2be623e03e 100644
---
a/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduSinkState.java
+++
b/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduSinkState.java
@@ -19,4 +19,6 @@ package org.apache.seatunnel.connectors.seatunnel.kudu.state;
import java.io.Serializable;
-public class KuduSinkState implements Serializable {}
+public class KuduSinkState implements Serializable {
+ private static final long serialVersionUID = 8724196975203566877L;
+}
diff --git
a/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduSourceState.java
b/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduSourceState.java
index e507bb49f6..95cd02dd90 100644
---
a/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduSourceState.java
+++
b/seatunnel-connectors-v2/connector-kudu/src/main/java/org/apache/seatunnel/connectors/seatunnel/kudu/state/KuduSourceState.java
@@ -30,6 +30,7 @@ import java.util.Map;
@AllArgsConstructor
@Getter
public class KuduSourceState implements Serializable {
+ private static final long serialVersionUID = -3141157457869831037L;
private List<TablePath> pendingTables;
private Map<Integer, List<KuduSourceSplit>> pendingSplits;
}
diff --git
a/seatunnel-connectors-v2/connector-maxcompute/src/main/java/org/apache/seatunnel/connectors/seatunnel/maxcompute/source/MaxcomputeSourceSplit.java
b/seatunnel-connectors-v2/connector-maxcompute/src/main/java/org/apache/seatunnel/connectors/seatunnel/maxcompute/source/MaxcomputeSourceSplit.java
index 6a77c8892f..13d1225608 100644
---
a/seatunnel-connectors-v2/connector-maxcompute/src/main/java/org/apache/seatunnel/connectors/seatunnel/maxcompute/source/MaxcomputeSourceSplit.java
+++
b/seatunnel-connectors-v2/connector-maxcompute/src/main/java/org/apache/seatunnel/connectors/seatunnel/maxcompute/source/MaxcomputeSourceSplit.java
@@ -28,6 +28,7 @@ import lombok.Setter;
@Setter
@EqualsAndHashCode
public class MaxcomputeSourceSplit implements SourceSplit {
+ private static final long serialVersionUID = 573028372948731375L;
private final long rowStart;
private final long rowNum;
private final TablePath tablePath;
diff --git
a/seatunnel-connectors-v2/connector-maxcompute/src/main/java/org/apache/seatunnel/connectors/seatunnel/maxcompute/source/MaxcomputeSourceState.java
b/seatunnel-connectors-v2/connector-maxcompute/src/main/java/org/apache/seatunnel/connectors/seatunnel/maxcompute/source/MaxcomputeSourceState.java
index 1abcb000ca..2339d1b353 100644
---
a/seatunnel-connectors-v2/connector-maxcompute/src/main/java/org/apache/seatunnel/connectors/seatunnel/maxcompute/source/MaxcomputeSourceState.java
+++
b/seatunnel-connectors-v2/connector-maxcompute/src/main/java/org/apache/seatunnel/connectors/seatunnel/maxcompute/source/MaxcomputeSourceState.java
@@ -21,6 +21,7 @@ import java.io.Serializable;
import java.util.Set;
public class MaxcomputeSourceState implements Serializable {
+ private static final long serialVersionUID = 3097170139569235106L;
private Set<MaxcomputeSourceSplit> assignedSplit;
public MaxcomputeSourceState(Set<MaxcomputeSourceSplit> assignedSplit) {
diff --git
a/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/source/MilvusSourceSplit.java
b/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/source/MilvusSourceSplit.java
index d448242d9a..3679e9a02f 100644
---
a/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/source/MilvusSourceSplit.java
+++
b/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/source/MilvusSourceSplit.java
@@ -27,6 +27,7 @@ import lombok.Data;
@Builder
public class MilvusSourceSplit implements SourceSplit {
+ private static final long serialVersionUID = 128331660165765343L;
private TablePath tablePath;
private String splitId;
private String partitionName;
diff --git
a/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/source/MilvusSourceState.java
b/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/source/MilvusSourceState.java
index 7b6c2e0672..8af6bc41d1 100644
---
a/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/source/MilvusSourceState.java
+++
b/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/source/MilvusSourceState.java
@@ -29,6 +29,7 @@ import java.util.Map;
@Data
@AllArgsConstructor
public class MilvusSourceState implements Serializable {
+ private static final long serialVersionUID = 1718378968826165653L;
private List<TablePath> pendingTables;
private Map<Integer, List<MilvusSourceSplit>> pendingSplits;
}
diff --git
a/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/state/MilvusAggregatedCommitInfo.java
b/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/state/MilvusAggregatedCommitInfo.java
index d4bc422d9b..313c5defcc 100644
---
a/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/state/MilvusAggregatedCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/state/MilvusAggregatedCommitInfo.java
@@ -26,5 +26,6 @@ import java.util.List;
@Data
@AllArgsConstructor
public class MilvusAggregatedCommitInfo implements Serializable {
+ private static final long serialVersionUID = 4363355126863163926L;
List<MilvusCommitInfo> commitInfos;
}
diff --git
a/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/state/MilvusCommitInfo.java
b/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/state/MilvusCommitInfo.java
index f6887ffa06..c12024901e 100644
---
a/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/state/MilvusCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/state/MilvusCommitInfo.java
@@ -24,4 +24,6 @@ import java.io.Serializable;
@Data
@AllArgsConstructor
-public class MilvusCommitInfo implements Serializable {}
+public class MilvusCommitInfo implements Serializable {
+ private static final long serialVersionUID = 3466351676745438435L;
+}
diff --git
a/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/state/MilvusSinkState.java
b/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/state/MilvusSinkState.java
index 3d8ff62b1d..16d059f7be 100644
---
a/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/state/MilvusSinkState.java
+++
b/seatunnel-connectors-v2/connector-milvus/src/main/java/org/apache/seatunnel/connectors/seatunnel/milvus/state/MilvusSinkState.java
@@ -26,4 +26,6 @@ import java.io.Serializable;
@Data
@SuperBuilder
@AllArgsConstructor
-public class MilvusSinkState implements Serializable {}
+public class MilvusSinkState implements Serializable {
+ private static final long serialVersionUID = -6605873999971307109L;
+}
diff --git
a/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/sink/state/DocumentBulk.java
b/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/sink/state/DocumentBulk.java
index 72a3d10538..83c871903b 100644
---
a/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/sink/state/DocumentBulk.java
+++
b/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/sink/state/DocumentBulk.java
@@ -37,6 +37,7 @@ import java.util.List;
public class DocumentBulk implements Serializable {
public static final int BUFFER_SIZE = 1024;
+ private static final long serialVersionUID = 7203410284346755522L;
private final List<BsonDocument> bufferedDocuments;
diff --git
a/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/sink/state/MongodbAggregatedCommitInfo.java
b/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/sink/state/MongodbAggregatedCommitInfo.java
index 6b97d616af..93ee00c515 100644
---
a/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/sink/state/MongodbAggregatedCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/sink/state/MongodbAggregatedCommitInfo.java
@@ -26,5 +26,6 @@ import java.util.List;
@Data
@AllArgsConstructor
public class MongodbAggregatedCommitInfo implements Serializable {
+ private static final long serialVersionUID = 2347040237946273020L;
List<MongodbCommitInfo> commitInfos;
}
diff --git
a/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/sink/state/MongodbCommitInfo.java
b/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/sink/state/MongodbCommitInfo.java
index 052cd4c5a8..4cf7d8fd5d 100644
---
a/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/sink/state/MongodbCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/sink/state/MongodbCommitInfo.java
@@ -26,5 +26,6 @@ import java.util.List;
@Data
@AllArgsConstructor
public class MongodbCommitInfo implements Serializable {
+ private static final long serialVersionUID = -8437379022903705979L;
List<DocumentBulk> documentBulks;
}
diff --git
a/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/source/split/MongoSplit.java
b/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/source/split/MongoSplit.java
index ba029f1dcb..83b53dfd30 100644
---
a/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/source/split/MongoSplit.java
+++
b/seatunnel-connectors-v2/connector-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/mongodb/source/split/MongoSplit.java
@@ -29,6 +29,7 @@ import lombok.Getter;
@AllArgsConstructor
public class MongoSplit implements SourceSplit {
+ private static final long serialVersionUID = 6349181541535290370L;
private final String splitId;
private final BsonDocument query;
diff --git
a/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/source/enumerator/PulsarSplitEnumeratorState.java
b/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/source/enumerator/PulsarSplitEnumeratorState.java
index b000da9fb4..31a911056c 100644
---
a/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/source/enumerator/PulsarSplitEnumeratorState.java
+++
b/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/source/enumerator/PulsarSplitEnumeratorState.java
@@ -24,6 +24,7 @@ import java.io.Serializable;
import java.util.Set;
public class PulsarSplitEnumeratorState implements Serializable {
+ private static final long serialVersionUID = 2300561232002247799L;
private final Set<TopicPartition> assignedPartitions;
PulsarSplitEnumeratorState(Set<TopicPartition> assignedPartitions) {
diff --git
a/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/source/split/PulsarPartitionSplit.java
b/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/source/split/PulsarPartitionSplit.java
index 4ea0b5c46a..122d130f70 100644
---
a/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/source/split/PulsarPartitionSplit.java
+++
b/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/source/split/PulsarPartitionSplit.java
@@ -29,6 +29,7 @@ import java.util.Objects;
public class PulsarPartitionSplit implements SourceSplit {
+ private static final long serialVersionUID = 3261816890422404491L;
private final TopicPartition partition;
private final StopCursor stopCursor;
diff --git
a/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/state/PulsarAggregatedCommitInfo.java
b/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/state/PulsarAggregatedCommitInfo.java
index bb75197248..000ce9a251 100644
---
a/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/state/PulsarAggregatedCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/state/PulsarAggregatedCommitInfo.java
@@ -26,5 +26,6 @@ import java.util.List;
@Data
@AllArgsConstructor
public class PulsarAggregatedCommitInfo implements Serializable {
+ private static final long serialVersionUID = -1365922376470598498L;
List<PulsarCommitInfo> commitInfos;
}
diff --git
a/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/state/PulsarCommitInfo.java
b/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/state/PulsarCommitInfo.java
index fc54308a33..a464cebd19 100644
---
a/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/state/PulsarCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/state/PulsarCommitInfo.java
@@ -28,6 +28,7 @@ import java.io.Serializable;
@AllArgsConstructor
public class PulsarCommitInfo implements Serializable {
+ private static final long serialVersionUID = -9211914520132746418L;
/** The transaction id. */
private final TxnID txnID;
}
diff --git
a/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/state/PulsarSinkState.java
b/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/state/PulsarSinkState.java
index a5aabebb84..1ad36ed604 100644
---
a/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/state/PulsarSinkState.java
+++
b/seatunnel-connectors-v2/connector-pulsar/src/main/java/org/apache/seatunnel/connectors/seatunnel/pulsar/state/PulsarSinkState.java
@@ -28,6 +28,7 @@ import java.io.Serializable;
@AllArgsConstructor
public class PulsarSinkState implements Serializable {
+ private static final long serialVersionUID = -1507893469255968322L;
/** The transaction id. */
private final TxnID txnID;
}
diff --git
a/seatunnel-connectors-v2/connector-rabbitmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rabbitmq/split/RabbitmqSplit.java
b/seatunnel-connectors-v2/connector-rabbitmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rabbitmq/split/RabbitmqSplit.java
index 70031aa667..6ea4ce3939 100644
---
a/seatunnel-connectors-v2/connector-rabbitmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rabbitmq/split/RabbitmqSplit.java
+++
b/seatunnel-connectors-v2/connector-rabbitmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rabbitmq/split/RabbitmqSplit.java
@@ -30,6 +30,7 @@ import java.util.Set;
@Setter
@AllArgsConstructor
public class RabbitmqSplit implements SourceSplit {
+ private static final long serialVersionUID = -678845022239224163L;
private List<Long> deliveryTags;
private Set<String> correlationIds;
diff --git
a/seatunnel-connectors-v2/connector-rabbitmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rabbitmq/split/RabbitmqSplitEnumeratorState.java
b/seatunnel-connectors-v2/connector-rabbitmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rabbitmq/split/RabbitmqSplitEnumeratorState.java
index 01857265ca..2066a617d5 100644
---
a/seatunnel-connectors-v2/connector-rabbitmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rabbitmq/split/RabbitmqSplitEnumeratorState.java
+++
b/seatunnel-connectors-v2/connector-rabbitmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rabbitmq/split/RabbitmqSplitEnumeratorState.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.rabbitmq.split;
import java.io.Serializable;
-public class RabbitmqSplitEnumeratorState implements Serializable {}
+public class RabbitmqSplitEnumeratorState implements Serializable {
+ private static final long serialVersionUID = 3490818116676796863L;
+}
diff --git
a/seatunnel-connectors-v2/connector-rocketmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rocketmq/source/RocketMqSourceSplit.java
b/seatunnel-connectors-v2/connector-rocketmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rocketmq/source/RocketMqSourceSplit.java
index 90fa136c5a..b37a86acb8 100644
---
a/seatunnel-connectors-v2/connector-rocketmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rocketmq/source/RocketMqSourceSplit.java
+++
b/seatunnel-connectors-v2/connector-rocketmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rocketmq/source/RocketMqSourceSplit.java
@@ -23,6 +23,7 @@ import org.apache.rocketmq.common.message.MessageQueue;
/** define rocketmq source split */
public class RocketMqSourceSplit implements SourceSplit {
+ private static final long serialVersionUID = -8036209560700452001L;
private MessageQueue messageQueue;
private long startOffset = -1L;
private long endOffset = -1L;
diff --git
a/seatunnel-connectors-v2/connector-rocketmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rocketmq/source/RocketMqSourceState.java
b/seatunnel-connectors-v2/connector-rocketmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rocketmq/source/RocketMqSourceState.java
index a3d923757d..e976e878a1 100644
---
a/seatunnel-connectors-v2/connector-rocketmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rocketmq/source/RocketMqSourceState.java
+++
b/seatunnel-connectors-v2/connector-rocketmq/src/main/java/org/apache/seatunnel/connectors/seatunnel/rocketmq/source/RocketMqSourceState.java
@@ -22,6 +22,7 @@ import java.util.Set;
public class RocketMqSourceState implements Serializable {
+ private static final long serialVersionUID = 3341725159083754488L;
private Set<RocketMqSourceSplit> assignSplits;
public RocketMqSourceState(Set<RocketMqSourceSplit> assignSplits) {
diff --git
a/seatunnel-connectors-v2/connector-selectdb-cloud/src/main/java/org/apache/seatunnel/connectors/selectdb/sink/committer/SelectDBCommitInfo.java
b/seatunnel-connectors-v2/connector-selectdb-cloud/src/main/java/org/apache/seatunnel/connectors/selectdb/sink/committer/SelectDBCommitInfo.java
index 8227f3efd1..2fdbeb241a 100644
---
a/seatunnel-connectors-v2/connector-selectdb-cloud/src/main/java/org/apache/seatunnel/connectors/selectdb/sink/committer/SelectDBCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-selectdb-cloud/src/main/java/org/apache/seatunnel/connectors/selectdb/sink/committer/SelectDBCommitInfo.java
@@ -29,6 +29,7 @@ import java.io.Serializable;
@ToString
@EqualsAndHashCode
public class SelectDBCommitInfo implements Serializable {
+ private static final long serialVersionUID = -1789125342533036879L;
private final String hostPort;
private final String clusterName;
private final String copySQL;
diff --git
a/seatunnel-connectors-v2/connector-selectdb-cloud/src/main/java/org/apache/seatunnel/connectors/selectdb/sink/writer/SelectDBSinkState.java
b/seatunnel-connectors-v2/connector-selectdb-cloud/src/main/java/org/apache/seatunnel/connectors/selectdb/sink/writer/SelectDBSinkState.java
index a8b1cd8784..cafc665112 100644
---
a/seatunnel-connectors-v2/connector-selectdb-cloud/src/main/java/org/apache/seatunnel/connectors/selectdb/sink/writer/SelectDBSinkState.java
+++
b/seatunnel-connectors-v2/connector-selectdb-cloud/src/main/java/org/apache/seatunnel/connectors/selectdb/sink/writer/SelectDBSinkState.java
@@ -29,6 +29,7 @@ import java.io.Serializable;
@ToString
@EqualsAndHashCode
public class SelectDBSinkState implements Serializable {
+ private static final long serialVersionUID = 227253344211548924L;
String labelPrefix;
long checkpointId;
diff --git
a/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/source/SlsSourceSplit.java
b/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/source/SlsSourceSplit.java
index d5099b9cd1..d73ec2f7f7 100644
---
a/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/source/SlsSourceSplit.java
+++
b/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/source/SlsSourceSplit.java
@@ -24,6 +24,7 @@ import lombok.Setter;
public class SlsSourceSplit implements SourceSplit {
+ private static final long serialVersionUID = 7379419260082045540L;
@Getter private String project;
@Getter private String logStore;
@Getter private String consumer;
diff --git
a/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/state/SlsCommitInfo.java
b/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/state/SlsCommitInfo.java
index f378950d46..76bc6dbdbf 100644
---
a/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/state/SlsCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/state/SlsCommitInfo.java
@@ -26,5 +26,6 @@ import java.io.Serializable;
@AllArgsConstructor
public class SlsCommitInfo implements Serializable {
+ private static final long serialVersionUID = 6658731481803361412L;
private final String data;
}
diff --git
a/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/state/SlsSinkState.java
b/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/state/SlsSinkState.java
index 6d1aaf1aac..5328bf5bcb 100644
---
a/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/state/SlsSinkState.java
+++
b/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/state/SlsSinkState.java
@@ -26,5 +26,6 @@ import java.io.Serializable;
@AllArgsConstructor
public class SlsSinkState implements Serializable {
+ private static final long serialVersionUID = -2896931637893765517L;
private final String data;
}
diff --git
a/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/state/SlsSourceState.java
b/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/state/SlsSourceState.java
index bce5ecb154..3d9c233669 100644
---
a/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/state/SlsSourceState.java
+++
b/seatunnel-connectors-v2/connector-sls/src/main/java/org/apache/seatunnel/connectors/seatunnel/sls/state/SlsSourceState.java
@@ -27,6 +27,7 @@ import java.util.Set;
@Data
public class SlsSourceState implements Serializable {
+ private static final long serialVersionUID = 803072186979969736L;
private Set<SlsSourceSplit> assignedSplit;
public SlsSourceState(Set<SlsSourceSplit> assignedSplit) {
diff --git
a/seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/source/StarRocksSourceSplit.java
b/seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/source/StarRocksSourceSplit.java
index cf33cb0117..3d9bc0a33e 100644
---
a/seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/source/StarRocksSourceSplit.java
+++
b/seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/source/StarRocksSourceSplit.java
@@ -28,6 +28,7 @@ import lombok.Setter;
@Getter
@Setter
public class StarRocksSourceSplit implements SourceSplit {
+ private static final long serialVersionUID = 3926987204781458652L;
private final QueryPartition partition;
private final String splitId;
diff --git
a/seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/source/StarRocksSourceState.java
b/seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/source/StarRocksSourceState.java
index 808ebee4fc..d19451cc18 100644
---
a/seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/source/StarRocksSourceState.java
+++
b/seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/source/StarRocksSourceState.java
@@ -30,6 +30,7 @@ import java.util.concurrent.ConcurrentLinkedQueue;
@Setter
@AllArgsConstructor
public class StarRocksSourceState implements Serializable {
+ private static final long serialVersionUID = -147928488869915694L;
private Map<Integer, List<StarRocksSourceSplit>> pendingSplit;
private final ConcurrentLinkedQueue<String> pendingTables;
}
diff --git
a/seatunnel-connectors-v2/connector-tablestore/src/main/java/org/apache/seatunnel/connectors/seatunnel/tablestore/source/TableStoreDBSourceSplit.java
b/seatunnel-connectors-v2/connector-tablestore/src/main/java/org/apache/seatunnel/connectors/seatunnel/tablestore/source/TableStoreDBSourceSplit.java
index 24328b0a6f..b1ad1fb856 100644
---
a/seatunnel-connectors-v2/connector-tablestore/src/main/java/org/apache/seatunnel/connectors/seatunnel/tablestore/source/TableStoreDBSourceSplit.java
+++
b/seatunnel-connectors-v2/connector-tablestore/src/main/java/org/apache/seatunnel/connectors/seatunnel/tablestore/source/TableStoreDBSourceSplit.java
@@ -27,6 +27,7 @@ import lombok.Setter;
@Setter
public class TableStoreDBSourceSplit implements SourceSplit {
+ private static final long serialVersionUID = 6471832674315580956L;
private Integer splitId;
private String tableName;
private String primaryKey;
diff --git
a/seatunnel-connectors-v2/connector-tablestore/src/main/java/org/apache/seatunnel/connectors/seatunnel/tablestore/source/TableStoreDBSourceState.java
b/seatunnel-connectors-v2/connector-tablestore/src/main/java/org/apache/seatunnel/connectors/seatunnel/tablestore/source/TableStoreDBSourceState.java
index 05a73a6310..e18d0ea952 100644
---
a/seatunnel-connectors-v2/connector-tablestore/src/main/java/org/apache/seatunnel/connectors/seatunnel/tablestore/source/TableStoreDBSourceState.java
+++
b/seatunnel-connectors-v2/connector-tablestore/src/main/java/org/apache/seatunnel/connectors/seatunnel/tablestore/source/TableStoreDBSourceState.java
@@ -29,6 +29,7 @@ import java.util.Map;
@AllArgsConstructor
public class TableStoreDBSourceState implements Serializable {
+ private static final long serialVersionUID = -2942147037830134078L;
private boolean shouldEnumerate;
private Map<Integer, List<TableStoreDBSourceSplit>> pendingSplits;
}
diff --git
a/seatunnel-connectors-v2/connector-tdengine/src/main/java/org/apache/seatunnel/connectors/seatunnel/tdengine/state/TDengineSourceState.java
b/seatunnel-connectors-v2/connector-tdengine/src/main/java/org/apache/seatunnel/connectors/seatunnel/tdengine/state/TDengineSourceState.java
index 4832cd398f..0bd300a8d3 100644
---
a/seatunnel-connectors-v2/connector-tdengine/src/main/java/org/apache/seatunnel/connectors/seatunnel/tdengine/state/TDengineSourceState.java
+++
b/seatunnel-connectors-v2/connector-tdengine/src/main/java/org/apache/seatunnel/connectors/seatunnel/tdengine/state/TDengineSourceState.java
@@ -29,6 +29,7 @@ import java.util.Map;
@AllArgsConstructor
@Getter
public class TDengineSourceState implements Serializable {
+ private static final long serialVersionUID = 6915087497958523069L;
private boolean shouldEnumerate;
private final Map<Integer, List<TDengineSourceSplit>> pendingSplits;
}
diff --git
a/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/source/TypesenseSourceState.java
b/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/source/TypesenseSourceState.java
index e29c732610..d7a09bbbb3 100644
---
a/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/source/TypesenseSourceState.java
+++
b/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/source/TypesenseSourceState.java
@@ -27,6 +27,7 @@ import java.util.Map;
@AllArgsConstructor
@Getter
public class TypesenseSourceState implements Serializable {
+ private static final long serialVersionUID = -4243324393187167712L;
private boolean shouldEnumerate;
private Map<Integer, List<TypesenseSourceSplit>> pendingSplit;
}
diff --git
a/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/state/TypesenseAggregatedCommitInfo.java
b/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/state/TypesenseAggregatedCommitInfo.java
index b0f814dd8f..141a78c199 100644
---
a/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/state/TypesenseAggregatedCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/state/TypesenseAggregatedCommitInfo.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.typesense.state;
import java.io.Serializable;
-public class TypesenseAggregatedCommitInfo implements Serializable {}
+public class TypesenseAggregatedCommitInfo implements Serializable {
+ private static final long serialVersionUID = -3563751133397833772L;
+}
diff --git
a/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/state/TypesenseCommitInfo.java
b/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/state/TypesenseCommitInfo.java
index 05e0ea83f7..0b3815f51e 100644
---
a/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/state/TypesenseCommitInfo.java
+++
b/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/state/TypesenseCommitInfo.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.typesense.state;
import java.io.Serializable;
-public class TypesenseCommitInfo implements Serializable {}
+public class TypesenseCommitInfo implements Serializable {
+ private static final long serialVersionUID = -294402070211638237L;
+}
diff --git
a/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/state/TypesenseSinkState.java
b/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/state/TypesenseSinkState.java
index 99f341d78c..104a6912bf 100644
---
a/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/state/TypesenseSinkState.java
+++
b/seatunnel-connectors-v2/connector-typesense/src/main/java/org/apache/seatunnel/connectors/seatunnel/typesense/state/TypesenseSinkState.java
@@ -19,4 +19,6 @@ package
org.apache.seatunnel.connectors.seatunnel.typesense.state;
import java.io.Serializable;
-public class TypesenseSinkState implements Serializable {}
+public class TypesenseSinkState implements Serializable {
+ private static final long serialVersionUID = -1105735724432131277L;
+}