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 0842ec24aa [bugfix][zeta] Fix the issue of two identical IDs appearing
when executing seatunnel.sh -l as the job resumes (#5191)
0842ec24aa is described below
commit 0842ec24aae7bc97190f6663408c728f782acda4
Author: ic4y <[email protected]>
AuthorDate: Tue Aug 1 15:08:53 2023 +0800
[bugfix][zeta] Fix the issue of two identical IDs appearing when executing
seatunnel.sh -l as the job resumes (#5191)
---
.../apache/seatunnel/engine/server/master/JobHistoryService.java | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git
a/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/master/JobHistoryService.java
b/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/master/JobHistoryService.java
index 12dcae40ca..dda9a2d0f3 100644
---
a/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/master/JobHistoryService.java
+++
b/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/master/JobHistoryService.java
@@ -42,7 +42,9 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import java.util.concurrent.TimeUnit;
+import java.util.stream.Collectors;
import java.util.stream.Stream;
public class JobHistoryService {
@@ -101,10 +103,15 @@ public class JobHistoryService {
// Gets the status of a running and completed job
public String listAllJob() {
List<JobStatusData> status = new ArrayList<>();
+ Set<Long> runningJonIds =
+ runningJobMasterMap.values().stream()
+ .map(master ->
master.getJobImmutableInformation().getJobId())
+ .collect(Collectors.toSet());
Stream.concat(
runningJobMasterMap.values().stream()
.map(master -> toJobStateMapper(master, true)),
- finishedJobStateImap.values().stream())
+ finishedJobStateImap.values().stream()
+ .filter(jobState ->
!runningJonIds.contains(jobState.getJobId())))
.forEach(
jobState -> {
JobStatusData jobStatusData =