cloud-fan commented on a change in pull request #26741: [SPARK-30104][SQL] Fix catalog resolution for 'global_temp' URL: https://github.com/apache/spark/pull/26741#discussion_r355843243
########## File path: sql/catalyst/src/main/scala/org/apache/spark/sql/connector/catalog/LookupCatalog.scala ########## @@ -92,15 +92,50 @@ private[sql] trait LookupCatalog extends Logging { * Catalog name takes precedence over namespaces. */ object CatalogAndNamespace { - def unapply(parts: Seq[String]): Some[(CatalogPlugin, Option[Seq[String]])] = parts match { - case Seq(catalogName, tail @ _*) => + def unapply(nameParts: Seq[String]): Some[(CatalogPlugin, Seq[String])] = { + assert(nameParts.nonEmpty) + nameParts match { + case Seq(catalogName, tail @ _*) => + try { + Some( + (catalogManager.catalog(catalogName), tail)) + } catch { + case _: CatalogNotFoundException => + Some((currentCatalog, nameParts)) + } + } + } + } + + /** + * Extract catalog and table identifier from a multi-part identifier with the current catalog if + * needed. Table identifier takes precedence over catalog name. + */ + object CatalogAndTableIdentifier { Review comment: It's not only for table, but also view, function as well. Shall we name it `CatalogAndIdentifier`? There is already a `CatalogAndIdentifier` and we need to unify them here. ---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org