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

zhouyao2023 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 6822b9c363 [Improve] Ignore useless wrong target slot error (#6135)
6822b9c363 is described below

commit 6822b9c363656d657e91c3547fe81ce4e236dca2
Author: Jia Fan <[email protected]>
AuthorDate: Tue Jan 9 19:28:27 2024 +0800

    [Improve] Ignore useless wrong target slot error (#6135)
    
    * [Improve] Ignore useless wrong target slot error
    
    * update
    
    * update
---
 .../resourcemanager/opeartion/ReleaseSlotOperation.java     | 12 +++++++++++-
 .../engine/server/resourcemanager/ResourceManagerTest.java  | 13 ++++---------
 2 files changed, 15 insertions(+), 10 deletions(-)

diff --git 
a/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/resourcemanager/opeartion/ReleaseSlotOperation.java
 
b/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/resourcemanager/opeartion/ReleaseSlotOperation.java
index 02843458cc..cca78a3fd5 100644
--- 
a/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/resourcemanager/opeartion/ReleaseSlotOperation.java
+++ 
b/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/resourcemanager/opeartion/ReleaseSlotOperation.java
@@ -20,14 +20,17 @@ package 
org.apache.seatunnel.engine.server.resourcemanager.opeartion;
 import org.apache.seatunnel.engine.server.SeaTunnelServer;
 import org.apache.seatunnel.engine.server.resourcemanager.resource.SlotProfile;
 import 
org.apache.seatunnel.engine.server.serializable.ResourceDataSerializerHook;
+import 
org.apache.seatunnel.engine.server.service.slot.WrongTargetSlotException;
 
 import com.hazelcast.nio.ObjectDataInput;
 import com.hazelcast.nio.ObjectDataOutput;
 import com.hazelcast.nio.serialization.IdentifiedDataSerializable;
 import com.hazelcast.spi.impl.operationservice.Operation;
+import lombok.extern.slf4j.Slf4j;
 
 import java.io.IOException;
 
+@Slf4j
 public class ReleaseSlotOperation extends Operation implements 
IdentifiedDataSerializable {
 
     private long jobID;
@@ -43,7 +46,14 @@ public class ReleaseSlotOperation extends Operation 
implements IdentifiedDataSer
     @Override
     public void run() throws Exception {
         SeaTunnelServer server = getService();
-        server.getSlotService().releaseSlot(jobID, slotProfile);
+        try {
+            server.getSlotService().releaseSlot(jobID, slotProfile);
+        } catch (WrongTargetSlotException ignore) {
+            log.warn(
+                    "wrong target release operation with job {} and slot 
profile {}",
+                    jobID,
+                    slotProfile);
+        }
     }
 
     @Override
diff --git 
a/seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/resourcemanager/ResourceManagerTest.java
 
b/seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/resourcemanager/ResourceManagerTest.java
index 0f8bd096a5..6dc246d8f4 100644
--- 
a/seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/resourcemanager/ResourceManagerTest.java
+++ 
b/seatunnel-engine/seatunnel-engine-server/src/test/java/org/apache/seatunnel/engine/server/resourcemanager/ResourceManagerTest.java
@@ -63,16 +63,11 @@ public class ResourceManagerTest extends 
AbstractSeaTunnelServerTest {
                 resourceProfiles.get(2).getHeapMemory().getBytes(),
                 
slotProfiles.get(2).getResourceProfile().getHeapMemory().getBytes());
 
-        Assertions.assertThrows(
-                ExecutionException.class,
-                () -> resourceManager.releaseResources(jobId + 1, 
slotProfiles).get());
-
+        // release not existed job id
+        resourceManager.releaseResources(jobId + 1, slotProfiles).get();
+        resourceManager.releaseResources(jobId, slotProfiles).get();
+        // release already released resource
         resourceManager.releaseResources(jobId, slotProfiles).get();
-
-        Assertions.assertThrows(
-                ExecutionException.class,
-                () -> resourceManager.releaseResources(jobId, 
slotProfiles).get());
-
         Assertions.assertThrows(
                 ExecutionException.class,
                 () ->

Reply via email to