From 3c7ac7ec8b45e9636e198fe26b72a22bd4a412e8 Mon Sep 17 00:00:00 2001 From: chenyidao <979136761@qq.com> Date: Tue, 20 Sep 2022 16:48:37 +0800 Subject: [PATCH] rockball --- .../boostkit/spark/expression/OmniExpressionAdaptor.scala | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/omnioperator/omniop-spark-extension/java/src/main/scala/com/huawei/boostkit/spark/expression/OmniExpressionAdaptor.scala b/omnioperator/omniop-spark-extension/java/src/main/scala/com/huawei/boostkit/spark/expression/OmniExpressionAdaptor.scala index da577ab71..1788852ba 100644 --- a/omnioperator/omniop-spark-extension/java/src/main/scala/com/huawei/boostkit/spark/expression/OmniExpressionAdaptor.scala +++ b/omnioperator/omniop-spark-extension/java/src/main/scala/com/huawei/boostkit/spark/expression/OmniExpressionAdaptor.scala @@ -301,10 +301,10 @@ object OmniExpressionAdaptor extends Logging { } private def unsupportedCastCheck(expr: Expression, cast: Cast): Unit = { - def isDecimalOrStringType(dataType: DataType): Boolean = (dataType.isInstanceOf[DecimalType]) || (dataType.isInstanceOf[StringType]) + def isDecimalOrStringType(dataType: DataType): Boolean = dataType == DecimalType || dataType == StringType // not support Cast(string as !(decimal/string)) and Cast(!(decimal/string) as string) - if ((cast.dataType.isInstanceOf[StringType] && !isDecimalOrStringType(cast.child.dataType)) || - (!isDecimalOrStringType(cast.dataType) && cast.child.dataType.isInstanceOf[StringType])) { + if ((cast.dataType == StringType && !isDecimalOrStringType(cast.child.dataType)) || + (!isDecimalOrStringType(cast.dataType) && cast.child.dataType == StringType)) { throw new UnsupportedOperationException(s"Unsupported expression: $expr") } } -- Gitee