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

xuyang edited comment on FLINK-34254 at 2/6/24 1:43 AM:
--------------------------------------------------------

I have created a Jira (https://issues.apache.org/jira/browse/FLINK-34370) 
linked this one to do the improvement. So close it.


was (Author: xuyangzhong):
I have created a Jira linked this one to do the improvement.

> `DESCRIBE` syntaxes like `DESCRIBE CATALOG xxx` throws strange exceptions
> -------------------------------------------------------------------------
>
>                 Key: FLINK-34254
>                 URL: https://issues.apache.org/jira/browse/FLINK-34254
>             Project: Flink
>          Issue Type: Bug
>          Components: Table SQL / API
>            Reporter: xuyang
>            Priority: Major
>
> Add the test following to CalcITCase to re-produce this bug.
> {code:java}
> @Test
>   def test(): Unit = {
>     tEnv.executeSql(s"""
>                        |create catalog `c_new` with (
>                        |  'type' = 'generic_in_memory',
>                        |  'default-database' = 'my_d'
>                        |)
>                        |""".stripMargin)
>     tEnv
>       .executeSql(s"""
>                      |show catalogs
>                      |""".stripMargin)
>       .print
>     tEnv
>       .executeSql(s"""
>                      | describe catalog default_catalog
>                      |""".stripMargin)
>       .print
>   } {code}
> Result:
> {code:java}
> +-----------------+
> |    catalog name |
> +-----------------+
> |           c_new |
> | default_catalog |
> +-----------------+
> 2 rows in set
>  org.apache.flink.table.api.ValidationException: SQL validation failed. From 
> line 2, column 19 to line 2, column 33: Column 'default_catalog' not found in 
> any table
>       at 
> org.apache.flink.table.planner.calcite.FlinkPlannerImpl.org$apache$flink$table$planner$calcite$FlinkPlannerImpl$$validate(FlinkPlannerImpl.scala:200)
>         at 
> org.apache.flink.table.planner.calcite.FlinkPlannerImpl.validate(FlinkPlannerImpl.scala:117)
>  at 
> org.apache.flink.table.planner.operations.SqlNodeToOperationConversion.convert(SqlNodeToOperationConversion.java:259)
>         at 
> org.apache.flink.table.planner.delegation.ParserImpl.parse(ParserImpl.java:106)
>       at 
> org.apache.flink.table.api.internal.TableEnvironmentImpl.executeSql(TableEnvironmentImpl.java:728)
>    at 
> org.apache.flink.table.planner.runtime.stream.sql.CalcITCase.test(CalcITCase.scala:453)
>       at java.lang.reflect.Method.invoke(Method.java:498)     at 
> java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)  at 
> java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)      at 
> java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1067)  
> at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1703)  at 
> java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:172)Caused
>  by: org.apache.calcite.runtime.CalciteContextException: From line 2, column 
> 19 to line 2, column 33: Column 'default_catalog' not found in any table      
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)      
>   at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
>  at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>  at java.lang.reflect.Constructor.newInstance(Constructor.java:423)      at 
> org.apache.calcite.runtime.Resources$ExInstWithCause.ex(Resources.java:505)  
> at org.apache.calcite.sql.SqlUtil.newContextException(SqlUtil.java:932) at 
> org.apache.calcite.sql.SqlUtil.newContextException(SqlUtil.java:917) at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.newValidationError(SqlValidatorImpl.java:5276)
>       at 
> org.apache.calcite.sql.validate.DelegatingScope.fullyQualify(DelegatingScope.java:273)
>        at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.validateIdentifier(SqlValidatorImpl.java:3150)
>       at 
> org.apache.calcite.sql.SqlIdentifier.validateExpr(SqlIdentifier.java:304)    
> at org.apache.calcite.sql.SqlOperator.validateCall(SqlOperator.java:474)      
>   at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.validateCall(SqlValidatorImpl.java:6005)
>     at org.apache.calcite.sql.SqlCall.validate(SqlCall.java:138)    at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.validateScopedExpression(SqlValidatorImpl.java:1009)
>         at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.validate(SqlValidatorImpl.java:758)
>  at 
> org.apache.flink.table.planner.calcite.FlinkPlannerImpl.org$apache$flink$table$planner$calcite$FlinkPlannerImpl$$validate(FlinkPlannerImpl.scala:196)
>         ... 11 moreCaused by: 
> org.apache.calcite.sql.validate.SqlValidatorException: Column 
> 'default_catalog' not found in any table    at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)        
> at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
>  at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>  at java.lang.reflect.Constructor.newInstance(Constructor.java:423)      at 
> org.apache.calcite.runtime.Resources$ExInstWithCause.ex(Resources.java:505)  
> at org.apache.calcite.runtime.Resources$ExInst.ex(Resources.java:599)   ... 
> 23 more
> {code}
> The syntax `DESCRIBE DATABASE xxx` has the same bug.
>  
> It seems that this flip is not finished yet. 
> https://issues.apache.org/jira/browse/FLINK-14686



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

Reply via email to