From ec0ad237c8a975ee1e4ee866dae79f7ed0218f8f Mon Sep 17 00:00:00 2001 From: Stefan Kandic Date: Thu, 23 Jan 2025 16:14:29 +0100 Subject: [PATCH] fix failing test --- .../catalyst/analysis/ResolveDefaultStringTypes.scala | 5 ++--- .../spark/sql/catalyst/optimizer/finishAnalysis.scala | 10 +++++----- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/ResolveDefaultStringTypes.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/ResolveDefaultStringTypes.scala index 1f3818c1f383c..2d51ef750c66b 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/ResolveDefaultStringTypes.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/analysis/ResolveDefaultStringTypes.scala @@ -156,11 +156,10 @@ object ResolveDefaultStringTypes extends Rule[LogicalPlan] { case expression if needsCast(expression) => expression.setTagValue(CAST_ADDED_TAG, ()) newType => { - val replacedType = replaceDefaultStringType(expression.dataType, newType) - if (newType == StringType || replacedType.sameType(newType)) { + if (newType == StringType) { expression } else { - Cast(expression, replacedType) + Cast(expression, replaceDefaultStringType(expression.dataType, newType)) } } } diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/finishAnalysis.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/finishAnalysis.scala index a524acc19aea8..afe2c1ac97eba 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/finishAnalysis.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/optimizer/finishAnalysis.scala @@ -33,7 +33,6 @@ import org.apache.spark.sql.catalyst.util.DateTimeUtils import org.apache.spark.sql.catalyst.util.DateTimeUtils.{convertSpecialDate, convertSpecialTimestamp, convertSpecialTimestampNTZ, instantToMicros, localDateTimeToMicros} import org.apache.spark.sql.catalyst.util.TypeUtils.toSQLExpr import org.apache.spark.sql.connector.catalog.CatalogManager -import org.apache.spark.sql.internal.SQLConf import org.apache.spark.sql.types._ @@ -153,14 +152,15 @@ case class ReplaceCurrentLike(catalogManager: CatalogManager) extends Rule[Logic val currentCatalog = catalogManager.currentCatalog.name() val currentUser = CurrentUserContext.getCurrentUser - plan.transformAllExpressionsWithPruning(_.containsPattern(CURRENT_LIKE)) { + val res = plan.transformAllExpressionsWithPruning(_.containsPattern(CURRENT_LIKE)) { case CurrentDatabase() => - Literal.create(currentNamespace, SQLConf.get.defaultStringType) + Literal.create(currentNamespace) case CurrentCatalog() => - Literal.create(currentCatalog, SQLConf.get.defaultStringType) + Literal.create(currentCatalog) case CurrentUser() => - Literal.create(currentUser, SQLConf.get.defaultStringType) + Literal.create(currentUser) } + res } }