This is an automated email from the ASF dual-hosted git repository.

menghaoran 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 9165405edd4 Ignored table in data consistency check handled as 
successful (#35338)
9165405edd4 is described below

commit 9165405edd48f2cb83842f2e32f794d2e5b50857
Author: Hongsheng Zhong <zhonghongsh...@apache.org>
AuthorDate: Tue May 6 12:00:51 2025 +0800

    Ignored table in data consistency check handled as successful (#35338)
---
 .../consistencycheck/result/TableDataConsistencyCheckResult.java | 9 +++++++++
 .../scenario/consistencycheck/api/ConsistencyCheckJobAPI.java    | 4 ++--
 .../consistencycheck/task/ConsistencyCheckTasksRunner.java       | 2 +-
 3 files changed, 12 insertions(+), 3 deletions(-)

diff --git 
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/consistencycheck/result/TableDataConsistencyCheckResult.java
 
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/consistencycheck/result/TableDataConsistencyCheckResult.java
index ebf462baea7..38c208962ab 100644
--- 
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/consistencycheck/result/TableDataConsistencyCheckResult.java
+++ 
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/consistencycheck/result/TableDataConsistencyCheckResult.java
@@ -58,4 +58,13 @@ public final class TableDataConsistencyCheckResult {
     public boolean isMatched() {
         return null == ignoredType && matched;
     }
+    
+    /**
+     * Is successful.
+     *
+     * @return successful or not
+     */
+    public boolean isSuccessful() {
+        return isMatched() || isIgnored();
+    }
 }
diff --git 
a/kernel/data-pipeline/scenario/consistency-check/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/consistencycheck/api/ConsistencyCheckJobAPI.java
 
b/kernel/data-pipeline/scenario/consistency-check/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/consistencycheck/api/ConsistencyCheckJobAPI.java
index 566da946436..ba6fe2501b7 100644
--- 
a/kernel/data-pipeline/scenario/consistency-check/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/consistencycheck/api/ConsistencyCheckJobAPI.java
+++ 
b/kernel/data-pipeline/scenario/consistency-check/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/consistencycheck/api/ConsistencyCheckJobAPI.java
@@ -225,8 +225,8 @@ public final class ConsistencyCheckJobAPI {
         
result.setErrorMessage(PipelineAPIFactory.getPipelineGovernanceFacade(PipelineJobIdUtils.parseContextKey(latestCheckJobId)).getJobItemFacade().getErrorMessage().load(latestCheckJobId,
 0));
         Map<String, TableDataConsistencyCheckResult> checkJobResults = 
PipelineAPIFactory.getPipelineGovernanceFacade(PipelineJobIdUtils.parseContextKey(parentJobId))
                 .getJobFacade().getCheck().getCheckJobResult(parentJobId, 
latestCheckJobId);
-        result.setCheckSuccess(checkJobResults.isEmpty() ? null : 
checkJobResults.values().stream().allMatch(TableDataConsistencyCheckResult::isMatched));
-        
result.setCheckFailedTableNames(checkJobResults.entrySet().stream().filter(each 
-> !each.getValue().isIgnored() && !each.getValue().isMatched())
+        result.setCheckSuccess(checkJobResults.isEmpty() ? null : 
checkJobResults.values().stream().allMatch(TableDataConsistencyCheckResult::isSuccessful));
+        
result.setCheckFailedTableNames(checkJobResults.entrySet().stream().filter(each 
-> !each.getValue().isSuccessful())
                 .map(Entry::getKey).collect(Collectors.joining(",")));
         return result;
     }
diff --git 
a/kernel/data-pipeline/scenario/consistency-check/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/consistencycheck/task/ConsistencyCheckTasksRunner.java
 
b/kernel/data-pipeline/scenario/consistency-check/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/consistencycheck/task/ConsistencyCheckTasksRunner.java
index e348747462c..0190fd40117 100644
--- 
a/kernel/data-pipeline/scenario/consistency-check/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/consistencycheck/task/ConsistencyCheckTasksRunner.java
+++ 
b/kernel/data-pipeline/scenario/consistency-check/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/consistencycheck/task/ConsistencyCheckTasksRunner.java
@@ -146,7 +146,7 @@ public final class ConsistencyCheckTasksRunner implements 
PipelineTasksRunner {
             log.info("onSuccess, check job id: {}, parent job id: {}", 
checkJobId, parentJobId);
             Map<String, TableDataConsistencyCheckResult> checkJobResult = 
PipelineAPIFactory.getPipelineGovernanceFacade(
                     
PipelineJobIdUtils.parseContextKey(parentJobId)).getJobFacade().getCheck().getCheckJobResult(parentJobId,
 checkJobId);
-            if 
(checkJobResult.values().stream().allMatch(TableDataConsistencyCheckResult::isMatched))
 {
+            if 
(checkJobResult.values().stream().allMatch(TableDataConsistencyCheckResult::isSuccessful))
 {
                 jobItemContext.setStatus(JobStatus.FINISHED);
             } else {
                 jobItemContext.setStatus(JobStatus.CONSISTENCY_CHECK_FAILURE);

Reply via email to