[ 
https://issues.apache.org/jira/browse/FLINK-40166?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated FLINK-40166:
-----------------------------------
    Labels: pull-request-available sql  (was: sql)

> SQL query parsing fails if current catalog is unreachable
> ---------------------------------------------------------
>
>                 Key: FLINK-40166
>                 URL: https://issues.apache.org/jira/browse/FLINK-40166
>             Project: Flink
>          Issue Type: Bug
>          Components: Table SQL / Planner
>            Reporter: Dale Lane
>            Priority: Minor
>              Labels: pull-request-available, sql
>         Attachments: flink-catalog-repro.zip
>
>
> To recreate:
>  * consider two catalogs: "workingcatalog" which is reachable, and 
> "brokencatalog" which is not
>  * set the current catalog to “brokencatalog”
>  * parse a fully-qualified SQL statement which accesses a table in 
> workingcatalog, such as “SELECT * FROM 
> workingcatalog.workingdatabase.workingtable;”
> This will fail with a CatalogException
> The stack trace shows that this is because Flink is attempting to call 
> databaseExists for the database “workingdatabase” but in the current catalog 
> (“brokencatalog”).
> {{Caused by: org.apache.flink.table.catalog.exceptions.CatalogException: 
> Failed to connect to Kafka cluster for database 'workingdatabase' of catalog 
> 'brokencatalog'. }}
> {{        at 
> org.apache.flink.table.catalog.CatalogManager.lambda$permanentDatabaseExists$14(CatalogManager.java:1064)}}
> {{        at java.base/java.util.Optional.map(Optional.java:260)}}
> {{        at 
> org.apache.flink.table.catalog.CatalogManager.permanentDatabaseExists(CatalogManager.java:1064)}}
> {{        at 
> org.apache.flink.table.catalog.CatalogManager.schemaExists(CatalogManager.java:1052)}}
> {{        at 
> org.apache.flink.table.planner.catalog.CatalogCalciteSchema.getSubSchema(CatalogCalciteSchema.java:61)}}
> {{        at 
> org.apache.calcite.jdbc.SimpleCalciteSchema.getImplicitSubSchema(SimpleCalciteSchema.java:146)}}
> {{        at 
> org.apache.calcite.jdbc.CalciteSchema.getSubSchema(CalciteSchema.java:260)}}
> {{        at 
> org.apache.calcite.sql.validate.EmptyScope.resolve_(EmptyScope.java:135)}}
> {{        at 
> org.apache.calcite.sql.validate.EmptyScope.resolveTable(EmptyScope.java:101)}}
> {{        at 
> org.apache.calcite.sql.validate.DelegatingScope.resolveTable(DelegatingScope.java:230)}}
> {{        at 
> org.apache.calcite.sql.validate.IdentifierNamespace.resolveImpl(IdentifierNamespace.java:116)}}
> {{        at 
> org.apache.calcite.sql.validate.IdentifierNamespace.validateImpl(IdentifierNamespace.java:189)}}
> {{        at 
> org.apache.calcite.sql.validate.AbstractNamespace.validate(AbstractNamespace.java:88)}}
> {{        at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.validateNamespace(SqlValidatorImpl.java:1133)}}
> {{        at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.validateQuery(SqlValidatorImpl.java:1108)}}
> {{        at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.validateFrom(SqlValidatorImpl.java:3486)}}
> {{        at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.validateFrom(SqlValidatorImpl.java:3468)}}
> {{        at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.validateSelect(SqlValidatorImpl.java:3823)}}
> {{        at 
> org.apache.calcite.sql.validate.SelectNamespace.validateImpl(SelectNamespace.java:61)}}
> {{        at 
> org.apache.calcite.sql.validate.AbstractNamespace.validate(AbstractNamespace.java:88)}}
> {{        at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.validateNamespace(SqlValidatorImpl.java:1133)}}
> {{        at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.validateQuery(SqlValidatorImpl.java:1108)}}
> {{        at org.apache.calcite.sql.SqlSelect.validate(SqlSelect.java:282)}}
> {{        at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.validateScopedExpression(SqlValidatorImpl.java:1075)}}
> {{        at 
> org.apache.calcite.sql.validate.SqlValidatorImpl.validate(SqlValidatorImpl.java:824)}}
> {{        at 
> org.apache.flink.table.planner.calcite.FlinkPlannerImpl.org$apache$flink$table$planner$calcite$FlinkPlannerImpl$$validate(FlinkPlannerImpl.scala:201)}}
> {{        ... 5 more}}
>  
> A standalone recreate is attached



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

Reply via email to