Hisoka-X commented on code in PR #4248:
URL: https://github.com/apache/flink-cdc/pull/4248#discussion_r2746588659


##########
flink-cdc-composer/src/test/java/org/apache/flink/cdc/composer/flink/FlinkPipelineTransformITCase.java:
##########
@@ -2737,14 +2736,9 @@ void testTransformErrorMessage() {
                 .cause()
                 .isExactlyInstanceOf(FlinkRuntimeException.class)
                 .hasMessage(
-                        "Failed to compile expression 
TransformExpressionKey{originalExpression='id1 > 0', expression='"
-                                + JaninoCompiler.LOAD_MODULES_EXPRESSION
-                                + "greaterThan($0, 0)', 
argumentNames=[__time_zone__, __epoch_time__], argumentClasses=[class 
java.lang.String, class java.lang.Long], returnClass=class java.lang.Boolean, 
columnNameMap={id1=$0}}")
+                        "Failed to compile expression 
TransformExpressionKey{originalExpression='id1 > 0', 
expression='greaterThan($0, 0)', argumentNames=[__time_zone__, __epoch_time__], 
argumentClasses=[class java.lang.String, class java.lang.Long], 
returnClass=class java.lang.Boolean, columnNameMap={id1=$0}}")

Review Comment:
   how about rename the expression key?
   ```suggestion
                           "Failed to compile expression 
TransformExpressionKey{originalExpression='id1 > 0', 
compiledExpression='greaterThan($0, 0)', argumentNames=[__time_zone__, 
__epoch_time__], argumentClasses=[class java.lang.String, class 
java.lang.Long], returnClass=class java.lang.Boolean, columnNameMap={id1=$0}}")
   ```



##########
flink-cdc-runtime/src/main/java/org/apache/flink/cdc/runtime/parser/TransformParser.java:
##########
@@ -597,4 +606,37 @@ public static Map<String, String> 
generateColumnNameMap(List<String> originalCol
         }
         return columnNameMap;
     }
+
+    public static DataType deduceSubExpressionType(

Review Comment:
   cool! It's useful for complex type inference.



##########
flink-cdc-runtime/src/main/java/org/apache/flink/cdc/runtime/operators/transform/TransformExpressionCompiler.java:
##########
@@ -73,7 +73,7 @@ public static ExpressionEvaluator compileExpression(
                         
expressionEvaluator.setExpressionType(key.getReturnClass());
                         try {
                             // Compile
-                            expressionEvaluator.cook(key.getExpression());
+                            expressionEvaluator.cook(key.getFullExpression());

Review Comment:
   Maybe we should add a debug level log to print the full expression for user?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to