Repository: spark Updated Branches: refs/heads/master a140dd77c -> e1d7f6429
[SPARK-10472] [SQL] Fixes DataType.typeName for UDT Before this fix, `MyDenseVectorUDT.typeName` gives `mydensevecto`, which is not desirable. Author: Cheng Lian <l...@databricks.com> Closes #8640 from liancheng/spark-10472/udt-type-name. Project: http://git-wip-us.apache.org/repos/asf/spark/repo Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/e1d7f642 Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/e1d7f642 Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/e1d7f642 Branch: refs/heads/master Commit: e1d7f64296d8164cc4c935aa524af664f63bf9c1 Parents: a140dd7 Author: Cheng Lian <l...@databricks.com> Authored: Fri Sep 11 18:26:56 2015 +0800 Committer: Cheng Lian <l...@databricks.com> Committed: Fri Sep 11 18:26:56 2015 +0800 ---------------------------------------------------------------------- .../src/main/scala/org/apache/spark/sql/types/DataType.scala | 4 +++- .../test/scala/org/apache/spark/sql/UserDefinedTypeSuite.scala | 6 ++++++ 2 files changed, 9 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/spark/blob/e1d7f642/sql/catalyst/src/main/scala/org/apache/spark/sql/types/DataType.scala ---------------------------------------------------------------------- diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/types/DataType.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/types/DataType.scala index 7bcd623..4b54c31 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/types/DataType.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/types/DataType.scala @@ -51,7 +51,9 @@ abstract class DataType extends AbstractDataType { def defaultSize: Int /** Name of the type used in JSON serialization. */ - def typeName: String = this.getClass.getSimpleName.stripSuffix("$").dropRight(4).toLowerCase + def typeName: String = { + this.getClass.getSimpleName.stripSuffix("$").stripSuffix("Type").stripSuffix("UDT").toLowerCase + } private[sql] def jsonValue: JValue = typeName http://git-wip-us.apache.org/repos/asf/spark/blob/e1d7f642/sql/core/src/test/scala/org/apache/spark/sql/UserDefinedTypeSuite.scala ---------------------------------------------------------------------- diff --git a/sql/core/src/test/scala/org/apache/spark/sql/UserDefinedTypeSuite.scala b/sql/core/src/test/scala/org/apache/spark/sql/UserDefinedTypeSuite.scala index fa8f9c8..46d8784 100644 --- a/sql/core/src/test/scala/org/apache/spark/sql/UserDefinedTypeSuite.scala +++ b/sql/core/src/test/scala/org/apache/spark/sql/UserDefinedTypeSuite.scala @@ -157,4 +157,10 @@ class UserDefinedTypeSuite extends QueryTest with SharedSQLContext { Nil ) } + + test("SPARK-10472 UserDefinedType.typeName") { + assert(IntegerType.typeName === "integer") + assert(new MyDenseVectorUDT().typeName === "mydensevector") + assert(new OpenHashSetUDT(IntegerType).typeName === "openhashset") + } } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@spark.apache.org For additional commands, e-mail: commits-h...@spark.apache.org