This is an automated email from the ASF dual-hosted git repository.
panjuan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new c8258876e60 Refactor ConsistencyCheckJobId (#29284)
c8258876e60 is described below
commit c8258876e604732d53e36519b7f5212c46a33747
Author: Liang Zhang <[email protected]>
AuthorDate: Tue Dec 5 00:53:09 2023 +0800
Refactor ConsistencyCheckJobId (#29284)
---
.../data/pipeline/common/job/PipelineJobId.java | 11 +++++++++++
.../data/pipeline/core/job/PipelineJobIdUtils.java | 2 +-
.../scenario/consistencycheck/ConsistencyCheckJobId.java | 7 +++++++
3 files changed, 19 insertions(+), 1 deletion(-)
diff --git
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/common/job/PipelineJobId.java
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/common/job/PipelineJobId.java
index 54e492672c2..0d2827566e5 100644
---
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/common/job/PipelineJobId.java
+++
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/common/job/PipelineJobId.java
@@ -20,6 +20,8 @@ package org.apache.shardingsphere.data.pipeline.common.job;
import
org.apache.shardingsphere.data.pipeline.common.context.PipelineContextKey;
import org.apache.shardingsphere.data.pipeline.common.job.type.PipelineJobType;
+import java.util.Optional;
+
/**
* Pipeline job id.
*/
@@ -40,4 +42,13 @@ public interface PipelineJobId {
* @return pipeline context key
*/
PipelineContextKey getContextKey();
+
+ /**
+ * Get sequence.
+ *
+ * @return sequence
+ */
+ default Optional<Integer> getSequence() {
+ return Optional.empty();
+ }
}
diff --git
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/job/PipelineJobIdUtils.java
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/job/PipelineJobIdUtils.java
index 2ebadee92d7..829e2a458cf 100644
---
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/job/PipelineJobIdUtils.java
+++
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/job/PipelineJobIdUtils.java
@@ -52,7 +52,7 @@ public final class PipelineJobIdUtils {
* @return job id
*/
public static String marshal(final PipelineJobId jobId) {
- return marshalPrefix(jobId.getJobType(), jobId.getContextKey()) +
marshalSuffix(jobId);
+ return marshalPrefix(jobId.getJobType(), jobId.getContextKey()) +
marshalSuffix(jobId) + jobId.getSequence().map(String::valueOf).orElse("");
}
private static String marshalPrefix(final PipelineJobType jobType, final
PipelineContextKey contextKey) {
diff --git
a/kernel/data-pipeline/scenario/consistencycheck/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/consistencycheck/ConsistencyCheckJobId.java
b/kernel/data-pipeline/scenario/consistencycheck/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/consistencycheck/ConsistencyCheckJobId.java
index 06dfe9ee8ab..526b23f97fa 100644
---
a/kernel/data-pipeline/scenario/consistencycheck/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/consistencycheck/ConsistencyCheckJobId.java
+++
b/kernel/data-pipeline/scenario/consistencycheck/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/consistencycheck/ConsistencyCheckJobId.java
@@ -23,6 +23,8 @@ import
org.apache.shardingsphere.data.pipeline.common.job.PipelineJobId;
import org.apache.shardingsphere.data.pipeline.common.job.type.PipelineJobType;
import
org.apache.shardingsphere.data.pipeline.scenario.consistencycheck.util.ConsistencyCheckSequence;
+import java.util.Optional;
+
/**
* Consistency check job id.
*/
@@ -60,4 +62,9 @@ public final class ConsistencyCheckJobId implements
PipelineJobId {
public static int parseSequence(final String checkJobId) {
return Integer.parseInt(checkJobId.substring(checkJobId.length() - 1));
}
+
+ @Override
+ public Optional<Integer> getSequence() {
+ return Optional.of(sequence);
+ }
}