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 2f2b58f93d4 Fix "show migration list" getting job sharding infos
failure when job is inactive (#35418)
2f2b58f93d4 is described below
commit 2f2b58f93d4e438c25d881946b1fc94670a9f1b9
Author: Hongsheng Zhong <[email protected]>
AuthorDate: Thu May 15 13:00:52 2025 +0800
Fix "show migration list" getting job sharding infos failure when job is
inactive (#35418)
---
.../migration/query/ShowMigrationListExecutor.java | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)
diff --git
a/kernel/data-pipeline/distsql/handler/src/main/java/org/apache/shardingsphere/data/pipeline/distsql/handler/migration/query/ShowMigrationListExecutor.java
b/kernel/data-pipeline/distsql/handler/src/main/java/org/apache/shardingsphere/data/pipeline/distsql/handler/migration/query/ShowMigrationListExecutor.java
index fc57e46c7a8..536750800df 100644
---
a/kernel/data-pipeline/distsql/handler/src/main/java/org/apache/shardingsphere/data/pipeline/distsql/handler/migration/query/ShowMigrationListExecutor.java
+++
b/kernel/data-pipeline/distsql/handler/src/main/java/org/apache/shardingsphere/data/pipeline/distsql/handler/migration/query/ShowMigrationListExecutor.java
@@ -51,12 +51,23 @@ public final class ShowMigrationListExecutor implements
DistSQLQueryExecutor<Sho
}
private LocalDataQueryResultRow getRow(final PipelineContextKey
contextKey, final PipelineJobInfo jobInfo) {
- return new
LocalDataQueryResultRow(jobInfo.getJobMetaData().getJobId(),
jobInfo.getTableName(), jobInfo.getJobMetaData().isActive(),
jobInfo.getJobMetaData().getCreateTime(),
- jobInfo.getJobMetaData().getStopTime(),
jobInfo.getJobMetaData().getJobItemCount(), getJobShardingNodes(contextKey,
jobInfo.getJobMetaData().getJobId()));
+ boolean active = jobInfo.getJobMetaData().isActive();
+ String jobShardingNodes = active ? getJobShardingNodes(contextKey,
jobInfo.getJobMetaData().getJobId()) : "";
+ return new
LocalDataQueryResultRow(jobInfo.getJobMetaData().getJobId(),
jobInfo.getTableName(), active, jobInfo.getJobMetaData().getCreateTime(),
+ jobInfo.getJobMetaData().getStopTime(),
jobInfo.getJobMetaData().getJobItemCount(), jobShardingNodes);
}
private String getJobShardingNodes(final PipelineContextKey contextKey,
final String jobId) {
- Collection<ShardingInfo> shardingInfos =
pipelineJobManager.getJobShardingInfos(contextKey, jobId);
+ // SPEX CHANGED: BEGIN
+ Collection<ShardingInfo> shardingInfos;
+ try {
+ shardingInfos = pipelineJobManager.getJobShardingInfos(contextKey,
jobId);
+ // CHECKSTYLE:OFF
+ } catch (final RuntimeException ignored) {
+ // CHECKSTYLE:ON
+ return "";
+ }
+ // SPEX CHANGED: END
return shardingInfos.isEmpty() ? "" :
getJobShardingNodes(shardingInfos);
}