This is an automated email from the ASF dual-hosted git repository.
liugddx 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 6060b13f9 fix class not found exception (#5063)
6060b13f9 is described below
commit 6060b13f9f9a223fd0a85c33d98e5f86df3aa254
Author: Guangdong Liu <[email protected]>
AuthorDate: Wed Jul 12 12:39:08 2023 +0800
fix class not found exception (#5063)
---
.../engine/server/rest/RestHttpGetCommandProcessor.java | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git
a/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/rest/RestHttpGetCommandProcessor.java
b/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/rest/RestHttpGetCommandProcessor.java
index 1540f99c9..6c71ac2fe 100644
---
a/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/rest/RestHttpGetCommandProcessor.java
+++
b/seatunnel-engine/seatunnel-engine-server/src/main/java/org/apache/seatunnel/engine/server/rest/RestHttpGetCommandProcessor.java
@@ -22,6 +22,7 @@ import
org.apache.seatunnel.shade.com.fasterxml.jackson.databind.JsonNode;
import org.apache.seatunnel.shade.com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.seatunnel.engine.common.Constant;
+import
org.apache.seatunnel.engine.common.loader.SeaTunnelChildFirstClassLoader;
import org.apache.seatunnel.engine.core.dag.logical.LogicalDag;
import org.apache.seatunnel.engine.core.job.JobImmutableInformation;
import org.apache.seatunnel.engine.core.job.JobInfo;
@@ -42,6 +43,7 @@ import com.hazelcast.internal.json.JsonObject;
import com.hazelcast.internal.json.JsonValue;
import com.hazelcast.internal.util.JsonUtil;
import com.hazelcast.internal.util.StringUtil;
+import com.hazelcast.jet.impl.execution.init.CustomClassLoadedObject;
import com.hazelcast.map.IMap;
import com.hazelcast.spi.impl.NodeEngine;
@@ -227,12 +229,14 @@ public class RestHttpGetCommandProcessor extends
HttpCommandProcessor<HttpGetCom
.getNodeEngine()
.getSerializationService()
.toObject(jobInfo.getJobImmutableInformation()));
+
+ ClassLoader classLoader =
+ new
SeaTunnelChildFirstClassLoader(jobImmutableInformation.getPluginJarsUrls());
LogicalDag logicalDag =
- this.textCommandService
- .getNode()
- .getNodeEngine()
- .getSerializationService()
- .toObject(jobImmutableInformation.getLogicalDag());
+ CustomClassLoadedObject.deserializeWithCustomClassLoader(
+
this.textCommandService.getNode().getNodeEngine().getSerializationService(),
+ classLoader,
+ jobImmutableInformation.getLogicalDag());
String jobMetrics =
getSeaTunnelServer().getCoordinatorService().getJobMetrics(jobId).toJsonString();