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:
[email protected]
With regards,
Apache Git Services
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]