summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author王宽 <[email protected]>2024-05-21 10:12:01 +0000
committer王宽 <[email protected]>2024-05-21 10:12:01 +0000
commit6dccbd602c08ca655172d3fae42d885c6c800556 (patch)
tree17e3bfb23c113882b69ce66f22a86bae1f03b3a1
parent3091c84a1196974e4350e900dbadc31a5528b41a (diff)
parent298d6b3690aea3e0098a3f7d0bcce02610021fd7 (diff)
Merge branch 'feature/improve-functions' into 'develop'
[improve][core]增加Aviator表达式执行失败异常处理 See merge request galaxy/platform/groot-stream!54
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/Rename.java15
1 files changed, 12 insertions, 3 deletions
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/Rename.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/Rename.java
index 9dc84dc..b86f472 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/Rename.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/Rename.java
@@ -9,10 +9,11 @@ import com.googlecode.aviator.AviatorEvaluator;
import com.googlecode.aviator.AviatorEvaluatorInstance;
import com.googlecode.aviator.Expression;
import com.googlecode.aviator.Options;
+import lombok.extern.slf4j.Slf4j;
import org.apache.flink.api.common.functions.RuntimeContext;
import java.util.*;
-
+@Slf4j
public class Rename implements UDF {
private static Expression compiledExp;
@@ -78,7 +79,11 @@ public class Rename implements UDF {
}
if (!newKey.startsWith("__")) {
if (renameExpression != null && !renameExpression.isEmpty()) {
- newKey = (String) compiledExp.execute(compiledExp.newEnv("key", newKey));
+ try {
+ newKey = (String) compiledExp.execute(compiledExp.newEnv("key", newKey));
+ } catch (Exception e) {
+ log.error("Error evaluating rename expression: " + renameExpression);
+ }
}
}
renamedMap.put(newKey, value);
@@ -107,7 +112,11 @@ public class Rename implements UDF {
}
if (!newKey.startsWith("__")) {
if (renameExpression != null && !renameExpression.isEmpty()) {
- newKey = (String) compiledExp.execute(compiledExp.newEnv("key", newKey));
+ try {
+ newKey = (String) compiledExp.execute(compiledExp.newEnv("key", newKey));
+ } catch (Exception e) {
+ log.error("Error evaluating rename expression: " + renameExpression);
+ }
}
}
renamedMap.put(newKey, value);