[ 
https://issues.apache.org/jira/browse/FLINK-35981?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17871529#comment-17871529
 ] 

MOBIN edited comment on FLINK-35981 at 8/7/24 4:10 AM:
-------------------------------------------------------

Please assign this for me,I'd like to do it.[~xiqian_yu] [~Leonard] 


was (Author: mobin):
Please assign this for me,I'd like to do it.[~xiqian_yu] 

> Transform rule doesn't support referencing one column more than once
> --------------------------------------------------------------------
>
>                 Key: FLINK-35981
>                 URL: https://issues.apache.org/jira/browse/FLINK-35981
>             Project: Flink
>          Issue Type: Bug
>          Components: Flink CDC
>            Reporter: yux
>            Priority: Critical
>
> Currently, transform rule (projection / filtering) doesn't support 
> referencing one column more than once, which means if we write such a 
> projection rule:
> transform:
>   - projection: \*, age * age AS age_square
>     filter: age < 18 OR age > 60
> Janino compiler will crash with the following exception stack. Seems 
> duplicated columns were added into Janino arguments list:
> Caused by: 
> org.apache.flink.shaded.guava31.com.google.common.util.concurrent.UncheckedExecutionException:
>  org.apache.flink.api.common.InvalidProgramException: Expression cannot be 
> compiled. This is a bug. Please file an issue.
> Expression: import static 
> org.apache.flink.cdc.runtime.functions.SystemFunctionUtils.*;age * age
>       at 
> org.apache.flink.shaded.guava31.com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2055)
>       at 
> org.apache.flink.shaded.guava31.com.google.common.cache.LocalCache.get(LocalCache.java:3966)
>       at 
> org.apache.flink.shaded.guava31.com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4863)
>       at 
> org.apache.flink.cdc.runtime.operators.transform.TransformExpressionCompiler.compileExpression(TransformExpressionCompiler.java:46)
>       ... 18 more
> Caused by: org.apache.flink.api.common.InvalidProgramException: Expression 
> cannot be compiled. This is a bug. Please file an issue.
> Expression: import static 
> org.apache.flink.cdc.runtime.functions.SystemFunctionUtils.*;age * age
>       at 
> org.apache.flink.cdc.runtime.operators.transform.TransformExpressionCompiler.lambda$compileExpression$0(TransformExpressionCompiler.java:62)
>       at 
> org.apache.flink.shaded.guava31.com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4868)
>       at 
> org.apache.flink.shaded.guava31.com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3533)
>       at 
> org.apache.flink.shaded.guava31.com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2282)
>       at 
> org.apache.flink.shaded.guava31.com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2159)
>       at 
> org.apache.flink.shaded.guava31.com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2049)
>       ... 21 more
> Caused by: org.codehaus.commons.compiler.CompileException: Line 1, Column 82: 
> Redefinition of parameter "age"



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to