[
https://issues.apache.org/jira/browse/FLINK-38824?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
lincoln lee updated FLINK-38824:
--------------------------------
Affects Version/s: 1.20.3
> Incorrect default values for primitive types
> --------------------------------------------
>
> Key: FLINK-38824
> URL: https://issues.apache.org/jira/browse/FLINK-38824
> Project: Flink
> Issue Type: Bug
> Components: Table SQL / Planner
> Affects Versions: 1.20.3, 2.2.0, 2.1.1
> Reporter: dylanhz
> Assignee: dylanhz
> Priority: Major
> Labels: pull-request-available
> Fix For: 2.3.0
>
>
> {code:sql}
> SELECT a[1], b[1]
> FROM (
> VALUES (CAST(ARRAY[1,2] AS ARRAY<SMALLINT>), CAST(ARRAY[2,3] AS
> ARRAY<TINYINT>))
> ) t(a, b)
> {code}
> {code:none}
> Caused by: org.apache.flink.api.common.InvalidProgramException: Table program
> cannot be compiled. This is a bug. Please file an issue.
> at
> org.apache.flink.table.runtime.generated.CompileUtils.doCompile(CompileUtils.java:107)
> at
> org.apache.flink.table.runtime.generated.CompileUtils.lambda$compile$0(CompileUtils.java:92)
> at
> org.apache.flink.shaded.guava33.com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4903)
> at
> org.apache.flink.shaded.guava33.com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3574)
> at
> org.apache.flink.shaded.guava33.com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2316)
> at
> org.apache.flink.shaded.guava33.com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2190)
> at
> org.apache.flink.shaded.guava33.com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2080)
> ... 48 more
> Caused by: org.codehaus.commons.compiler.CompileException: Line 107, Column
> 37: Assignment conversion not possible from type "int" to type "short"
> at
> org.codehaus.janino.UnitCompiler.compileError(UnitCompiler.java:13080)
> at
> org.codehaus.janino.UnitCompiler.assignmentConversion(UnitCompiler.java:11297)
> at org.codehaus.janino.UnitCompiler.compileGet2(UnitCompiler.java:4980)
> at org.codehaus.janino.UnitCompiler.access$9000(UnitCompiler.java:237)
> at
> org.codehaus.janino.UnitCompiler$16.visitConditionalExpression(UnitCompiler.java:4763)
> at
> org.codehaus.janino.UnitCompiler$16.visitConditionalExpression(UnitCompiler.java:4742)
> at org.codehaus.janino.Java$ConditionalExpression.accept(Java.java:4902)
> at org.codehaus.janino.UnitCompiler.compileGet(UnitCompiler.java:4742)
> at
> org.codehaus.janino.UnitCompiler.compileGetValue(UnitCompiler.java:5885)
> at org.codehaus.janino.UnitCompiler.access$3800(UnitCompiler.java:237)
> at
> org.codehaus.janino.UnitCompiler$7.visitRvalue(UnitCompiler.java:2767)
> at
> org.codehaus.janino.UnitCompiler$7.visitRvalue(UnitCompiler.java:2755)
> at org.codehaus.janino.Java$Rvalue.accept(Java.java:4498)
> at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:2755)
> at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:2742)
> at org.codehaus.janino.UnitCompiler.access$2700(UnitCompiler.java:237)
> at
> org.codehaus.janino.UnitCompiler$6.visitLocalVariableDeclarationStatement(UnitCompiler.java:1590)
> at
> org.codehaus.janino.UnitCompiler$6.visitLocalVariableDeclarationStatement(UnitCompiler.java:1576)
> at
> org.codehaus.janino.Java$LocalVariableDeclarationStatement.accept(Java.java:3842)
> at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:1576)
> at
> org.codehaus.janino.UnitCompiler.compileStatements(UnitCompiler.java:1662)
> at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:3665)
> at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:3330)
> at
> org.codehaus.janino.UnitCompiler.compileDeclaredMethods(UnitCompiler.java:1448)
> at
> org.codehaus.janino.UnitCompiler.compileDeclaredMethods(UnitCompiler.java:1421)
> at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:830)
> at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:443)
> at org.codehaus.janino.UnitCompiler.access$400(UnitCompiler.java:237)
> at
> org.codehaus.janino.UnitCompiler$3.visitPackageMemberClassDeclaration(UnitCompiler.java:423)
> at
> org.codehaus.janino.UnitCompiler$3.visitPackageMemberClassDeclaration(UnitCompiler.java:419)
> at
> org.codehaus.janino.Java$PackageMemberClassDeclaration.accept(Java.java:1688)
> at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java:419)
> at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java:393)
> at org.codehaus.janino.UnitCompiler.access$000(UnitCompiler.java:237)
> at
> org.codehaus.janino.UnitCompiler$2.visitCompilationUnit(UnitCompiler.java:364)
> at
> org.codehaus.janino.UnitCompiler$2.visitCompilationUnit(UnitCompiler.java:362)
> at org.codehaus.janino.Java$CompilationUnit.accept(Java.java:371)
> at org.codehaus.janino.UnitCompiler.compileUnit(UnitCompiler.java:362)
> at org.codehaus.janino.SimpleCompiler.cook(SimpleCompiler.java:273)
> at
> org.codehaus.janino.SimpleCompiler.compileToClassLoader(SimpleCompiler.java:526)
> at org.codehaus.janino.SimpleCompiler.cook2(SimpleCompiler.java:250)
> at org.codehaus.janino.SimpleCompiler.cook(SimpleCompiler.java:229)
> at org.codehaus.janino.SimpleCompiler.cook(SimpleCompiler.java:219)
> at org.codehaus.commons.compiler.Cookable.cook(Cookable.java:82)
> at org.codehaus.commons.compiler.Cookable.cook(Cookable.java:77)
> at
> org.apache.flink.table.runtime.generated.CompileUtils.doCompile(CompileUtils.java:104)
> ... 54 more
> {code}
> BTW, there was a [related issue|https://github.com/apache/flink/pull/26862]
> before, but it didn't solve the problem completely, the type of primitive
> default values are still incorrect, which will lead to compilation error in
> Janino.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)