From 8e7b66612dd0e90d0f183edcf733c9d5a99edcec Mon Sep 17 00:00:00 2001 From: Yuming Wang Date: Fri, 3 Jan 2020 13:18:59 +0800 Subject: [PATCH] v1Table.v1Table.qualifiedName -> catalog.name +: ident.namespace :+ ident.name --- .../org/apache/spark/sql/catalyst/analysis/Analyzer.scala | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala index e13d5bf3d767a..4309dc2902c8f 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/Analyzer.scala @@ -99,7 +99,7 @@ object FakeV2SessionCatalog extends TableCatalog { case class AnalysisContext( catalogAndNamespace: Seq[String] = Nil, nestedViewDepth: Int = 0, - relationCache: mutable.Map[String, LogicalPlan] = mutable.Map.empty) + relationCache: mutable.Map[Seq[String], LogicalPlan] = mutable.Map.empty) object AnalysisContext { private val value = new ThreadLocal[AnalysisContext]() { @@ -874,8 +874,9 @@ class Analyzer( case SessionCatalogAndIdentifier(catalog, ident) => CatalogV2Util.loadTable(catalog, ident).map { case v1Table: V1Table => + val key = catalog.name +: ident.namespace :+ ident.name AnalysisContext.get.relationCache.getOrElseUpdate( - v1Table.v1Table.qualifiedName, v1SessionCatalog.getRelation(v1Table.v1Table)) + key, v1SessionCatalog.getRelation(v1Table.v1Table)) case table => DataSourceV2Relation.create(table) }