Repository: spark
Updated Branches:
  refs/heads/master 4acbda4a9 -> 3370865b0


[SPARK-25785][SQL] Add prettyNames for from_json, to_json, from_csv, and 
schema_of_json

## What changes were proposed in this pull request?

This PR adds `prettyNames` for `from_json`, `to_json`, `from_csv`, and 
`schema_of_json` so that appropriate names are used.

## How was this patch tested?

Unit tests

Closes #22773 from HyukjinKwon/minor-prettyNames.

Authored-by: hyukjinkwon <gurwls...@apache.org>
Signed-off-by: hyukjinkwon <gurwls...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/spark/repo
Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/3370865b
Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/3370865b
Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/3370865b

Branch: refs/heads/master
Commit: 3370865b0ebe9b04c6671631aee5917b41ceba9c
Parents: 4acbda4
Author: hyukjinkwon <gurwls...@apache.org>
Authored: Sat Oct 20 10:15:53 2018 +0800
Committer: hyukjinkwon <gurwls...@apache.org>
Committed: Sat Oct 20 10:15:53 2018 +0800

----------------------------------------------------------------------
 .../catalyst/expressions/csvExpressions.scala   |  2 +
 .../catalyst/expressions/jsonExpressions.scala  |  6 +++
 .../sql-tests/results/csv-functions.sql.out     |  4 +-
 .../sql-tests/results/json-functions.sql.out    | 50 ++++++++++----------
 .../native/stringCastAndExpressions.sql.out     |  2 +-
 5 files changed, 36 insertions(+), 28 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/spark/blob/3370865b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/csvExpressions.scala
----------------------------------------------------------------------
diff --git 
a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/csvExpressions.scala
 
b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/csvExpressions.scala
index a63b624..853b1ea 100644
--- 
a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/csvExpressions.scala
+++ 
b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/csvExpressions.scala
@@ -117,4 +117,6 @@ case class CsvToStructs(
   }
 
   override def inputTypes: Seq[AbstractDataType] = StringType :: Nil
+
+  override def prettyName: String = "from_csv"
 }

http://git-wip-us.apache.org/repos/asf/spark/blob/3370865b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/jsonExpressions.scala
----------------------------------------------------------------------
diff --git 
a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/jsonExpressions.scala
 
b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/jsonExpressions.scala
index 9f28483..b4815b4 100644
--- 
a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/jsonExpressions.scala
+++ 
b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/jsonExpressions.scala
@@ -610,6 +610,8 @@ case class JsonToStructs(
     case _: MapType => "entries"
     case _ => super.sql
   }
+
+  override def prettyName: String = "from_json"
 }
 
 /**
@@ -730,6 +732,8 @@ case class StructsToJson(
   override def nullSafeEval(value: Any): Any = converter(value)
 
   override def inputTypes: Seq[AbstractDataType] = TypeCollection(ArrayType, 
StructType) :: Nil
+
+  override def prettyName: String = "to_json"
 }
 
 /**
@@ -774,6 +778,8 @@ case class SchemaOfJson(
 
     UTF8String.fromString(dt.catalogString)
   }
+
+  override def prettyName: String = "schema_of_json"
 }
 
 object JsonExprUtils {

http://git-wip-us.apache.org/repos/asf/spark/blob/3370865b/sql/core/src/test/resources/sql-tests/results/csv-functions.sql.out
----------------------------------------------------------------------
diff --git 
a/sql/core/src/test/resources/sql-tests/results/csv-functions.sql.out 
b/sql/core/src/test/resources/sql-tests/results/csv-functions.sql.out
index 15dbe36..f19f34a 100644
--- a/sql/core/src/test/resources/sql-tests/results/csv-functions.sql.out
+++ b/sql/core/src/test/resources/sql-tests/results/csv-functions.sql.out
@@ -5,7 +5,7 @@
 -- !query 0
 select from_csv('1, 3.14', 'a INT, f FLOAT')
 -- !query 0 schema
-struct<csvtostructs(1, 3.14):struct<a:int,f:float>>
+struct<from_csv(1, 3.14):struct<a:int,f:float>>
 -- !query 0 output
 {"a":1,"f":3.14}
 
@@ -13,7 +13,7 @@ struct<csvtostructs(1, 3.14):struct<a:int,f:float>>
 -- !query 1
 select from_csv('26/08/2015', 'time Timestamp', map('timestampFormat', 
'dd/MM/yyyy'))
 -- !query 1 schema
-struct<csvtostructs(26/08/2015):struct<time:timestamp>>
+struct<from_csv(26/08/2015):struct<time:timestamp>>
 -- !query 1 output
 {"time":2015-08-26 00:00:00.0}
 

http://git-wip-us.apache.org/repos/asf/spark/blob/3370865b/sql/core/src/test/resources/sql-tests/results/json-functions.sql.out
----------------------------------------------------------------------
diff --git 
a/sql/core/src/test/resources/sql-tests/results/json-functions.sql.out 
b/sql/core/src/test/resources/sql-tests/results/json-functions.sql.out
index 77e9000..868eee8 100644
--- a/sql/core/src/test/resources/sql-tests/results/json-functions.sql.out
+++ b/sql/core/src/test/resources/sql-tests/results/json-functions.sql.out
@@ -44,7 +44,7 @@ Usage: to_json(expr[, options]) - Returns a JSON string with 
a given struct valu
 -- !query 2
 select to_json(named_struct('a', 1, 'b', 2))
 -- !query 2 schema
-struct<structstojson(named_struct(a, 1, b, 2)):string>
+struct<to_json(named_struct(a, 1, b, 2)):string>
 -- !query 2 output
 {"a":1,"b":2}
 
@@ -52,7 +52,7 @@ struct<structstojson(named_struct(a, 1, b, 2)):string>
 -- !query 3
 select to_json(named_struct('time', to_timestamp('2015-08-26', 'yyyy-MM-dd')), 
map('timestampFormat', 'dd/MM/yyyy'))
 -- !query 3 schema
-struct<structstojson(named_struct(time, to_timestamp('2015-08-26', 
'yyyy-MM-dd'))):string>
+struct<to_json(named_struct(time, to_timestamp('2015-08-26', 
'yyyy-MM-dd'))):string>
 -- !query 3 output
 {"time":"26/08/2015"}
 
@@ -60,7 +60,7 @@ struct<structstojson(named_struct(time, 
to_timestamp('2015-08-26', 'yyyy-MM-dd')
 -- !query 4
 select to_json(array(named_struct('a', 1, 'b', 2)))
 -- !query 4 schema
-struct<structstojson(array(named_struct(a, 1, b, 2))):string>
+struct<to_json(array(named_struct(a, 1, b, 2))):string>
 -- !query 4 output
 [{"a":1,"b":2}]
 
@@ -68,7 +68,7 @@ struct<structstojson(array(named_struct(a, 1, b, 2))):string>
 -- !query 5
 select to_json(map(named_struct('a', 1, 'b', 2), named_struct('a', 1, 'b', 2)))
 -- !query 5 schema
-struct<structstojson(map(named_struct(a, 1, b, 2), named_struct(a, 1, b, 
2))):string>
+struct<to_json(map(named_struct(a, 1, b, 2), named_struct(a, 1, b, 2))):string>
 -- !query 5 output
 {"[1,2]":{"a":1,"b":2}}
 
@@ -76,7 +76,7 @@ struct<structstojson(map(named_struct(a, 1, b, 2), 
named_struct(a, 1, b, 2))):st
 -- !query 6
 select to_json(map('a', named_struct('a', 1, 'b', 2)))
 -- !query 6 schema
-struct<structstojson(map(a, named_struct(a, 1, b, 2))):string>
+struct<to_json(map(a, named_struct(a, 1, b, 2))):string>
 -- !query 6 output
 {"a":{"a":1,"b":2}}
 
@@ -84,7 +84,7 @@ struct<structstojson(map(a, named_struct(a, 1, b, 2))):string>
 -- !query 7
 select to_json(map('a', 1))
 -- !query 7 schema
-struct<structstojson(map(a, 1)):string>
+struct<to_json(map(a, 1)):string>
 -- !query 7 output
 {"a":1}
 
@@ -92,7 +92,7 @@ struct<structstojson(map(a, 1)):string>
 -- !query 8
 select to_json(array(map('a',1)))
 -- !query 8 schema
-struct<structstojson(array(map(a, 1))):string>
+struct<to_json(array(map(a, 1))):string>
 -- !query 8 output
 [{"a":1}]
 
@@ -100,7 +100,7 @@ struct<structstojson(array(map(a, 1))):string>
 -- !query 9
 select to_json(array(map('a',1), map('b',2)))
 -- !query 9 schema
-struct<structstojson(array(map(a, 1), map(b, 2))):string>
+struct<to_json(array(map(a, 1), map(b, 2))):string>
 -- !query 9 output
 [{"a":1},{"b":2}]
 
@@ -164,7 +164,7 @@ Usage: from_json(jsonStr, schema[, options]) - Returns a 
struct value with the g
 -- !query 15
 select from_json('{"a":1}', 'a INT')
 -- !query 15 schema
-struct<jsontostructs({"a":1}):struct<a:int>>
+struct<from_json({"a":1}):struct<a:int>>
 -- !query 15 output
 {"a":1}
 
@@ -172,7 +172,7 @@ struct<jsontostructs({"a":1}):struct<a:int>>
 -- !query 16
 select from_json('{"time":"26/08/2015"}', 'time Timestamp', 
map('timestampFormat', 'dd/MM/yyyy'))
 -- !query 16 schema
-struct<jsontostructs({"time":"26/08/2015"}):struct<time:timestamp>>
+struct<from_json({"time":"26/08/2015"}):struct<time:timestamp>>
 -- !query 16 output
 {"time":2015-08-26 00:00:00.0}
 
@@ -271,7 +271,7 @@ struct<entries:map<string,int>>
 -- !query 27
 select from_json('{"a":1, "b":"2"}', 'struct<a:int,b:string>')
 -- !query 27 schema
-struct<jsontostructs({"a":1, "b":"2"}):struct<a:int,b:string>>
+struct<from_json({"a":1, "b":"2"}):struct<a:int,b:string>>
 -- !query 27 output
 {"a":1,"b":"2"}
 
@@ -279,7 +279,7 @@ struct<jsontostructs({"a":1, 
"b":"2"}):struct<a:int,b:string>>
 -- !query 28
 select schema_of_json('{"c1":0, "c2":[1]}')
 -- !query 28 schema
-struct<schemaofjson({"c1":0, "c2":[1]}):string>
+struct<schema_of_json({"c1":0, "c2":[1]}):string>
 -- !query 28 output
 struct<c1:bigint,c2:array<bigint>>
 
@@ -287,7 +287,7 @@ struct<c1:bigint,c2:array<bigint>>
 -- !query 29
 select from_json('{"c1":[1, 2, 3]}', schema_of_json('{"c1":[0]}'))
 -- !query 29 schema
-struct<jsontostructs({"c1":[1, 2, 3]}):struct<c1:array<bigint>>>
+struct<from_json({"c1":[1, 2, 3]}):struct<c1:array<bigint>>>
 -- !query 29 output
 {"c1":[1,2,3]}
 
@@ -295,7 +295,7 @@ struct<jsontostructs({"c1":[1, 2, 
3]}):struct<c1:array<bigint>>>
 -- !query 30
 select from_json('[1, 2, 3]', 'array<int>')
 -- !query 30 schema
-struct<jsontostructs([1, 2, 3]):array<int>>
+struct<from_json([1, 2, 3]):array<int>>
 -- !query 30 output
 [1,2,3]
 
@@ -303,7 +303,7 @@ struct<jsontostructs([1, 2, 3]):array<int>>
 -- !query 31
 select from_json('[1, "2", 3]', 'array<int>')
 -- !query 31 schema
-struct<jsontostructs([1, "2", 3]):array<int>>
+struct<from_json([1, "2", 3]):array<int>>
 -- !query 31 output
 NULL
 
@@ -311,7 +311,7 @@ NULL
 -- !query 32
 select from_json('[1, 2, null]', 'array<int>')
 -- !query 32 schema
-struct<jsontostructs([1, 2, null]):array<int>>
+struct<from_json([1, 2, null]):array<int>>
 -- !query 32 output
 [1,2,null]
 
@@ -319,7 +319,7 @@ struct<jsontostructs([1, 2, null]):array<int>>
 -- !query 33
 select from_json('[{"a": 1}, {"a":2}]', 'array<struct<a:int>>')
 -- !query 33 schema
-struct<jsontostructs([{"a": 1}, {"a":2}]):array<struct<a:int>>>
+struct<from_json([{"a": 1}, {"a":2}]):array<struct<a:int>>>
 -- !query 33 output
 [{"a":1},{"a":2}]
 
@@ -327,7 +327,7 @@ struct<jsontostructs([{"a": 1}, 
{"a":2}]):array<struct<a:int>>>
 -- !query 34
 select from_json('{"a": 1}', 'array<struct<a:int>>')
 -- !query 34 schema
-struct<jsontostructs({"a": 1}):array<struct<a:int>>>
+struct<from_json({"a": 1}):array<struct<a:int>>>
 -- !query 34 output
 [{"a":1}]
 
@@ -335,7 +335,7 @@ struct<jsontostructs({"a": 1}):array<struct<a:int>>>
 -- !query 35
 select from_json('[null, {"a":2}]', 'array<struct<a:int>>')
 -- !query 35 schema
-struct<jsontostructs([null, {"a":2}]):array<struct<a:int>>>
+struct<from_json([null, {"a":2}]):array<struct<a:int>>>
 -- !query 35 output
 [null,{"a":2}]
 
@@ -343,7 +343,7 @@ struct<jsontostructs([null, {"a":2}]):array<struct<a:int>>>
 -- !query 36
 select from_json('[{"a": 1}, {"b":2}]', 'array<map<string,int>>')
 -- !query 36 schema
-struct<jsontostructs([{"a": 1}, {"b":2}]):array<map<string,int>>>
+struct<from_json([{"a": 1}, {"b":2}]):array<map<string,int>>>
 -- !query 36 output
 [{"a":1},{"b":2}]
 
@@ -351,7 +351,7 @@ struct<jsontostructs([{"a": 1}, 
{"b":2}]):array<map<string,int>>>
 -- !query 37
 select from_json('[{"a": 1}, 2]', 'array<map<string,int>>')
 -- !query 37 schema
-struct<jsontostructs([{"a": 1}, 2]):array<map<string,int>>>
+struct<from_json([{"a": 1}, 2]):array<map<string,int>>>
 -- !query 37 output
 NULL
 
@@ -359,7 +359,7 @@ NULL
 -- !query 38
 select to_json(array('1', '2', '3'))
 -- !query 38 schema
-struct<structstojson(array(1, 2, 3)):string>
+struct<to_json(array(1, 2, 3)):string>
 -- !query 38 output
 ["1","2","3"]
 
@@ -367,7 +367,7 @@ struct<structstojson(array(1, 2, 3)):string>
 -- !query 39
 select to_json(array(array(1, 2, 3), array(4)))
 -- !query 39 schema
-struct<structstojson(array(array(1, 2, 3), array(4))):string>
+struct<to_json(array(array(1, 2, 3), array(4))):string>
 -- !query 39 output
 [[1,2,3],[4]]
 
@@ -375,7 +375,7 @@ struct<structstojson(array(array(1, 2, 3), 
array(4))):string>
 -- !query 40
 select schema_of_json('{"c1":1}', map('primitivesAsString', 'true'))
 -- !query 40 schema
-struct<schemaofjson({"c1":1}):string>
+struct<schema_of_json({"c1":1}):string>
 -- !query 40 output
 struct<c1:string>
 
@@ -383,6 +383,6 @@ struct<c1:string>
 -- !query 41
 select schema_of_json('{"c1":01, "c2":0.1}', map('allowNumericLeadingZeros', 
'true', 'prefersDecimal', 'true'))
 -- !query 41 schema
-struct<schemaofjson({"c1":01, "c2":0.1}):string>
+struct<schema_of_json({"c1":01, "c2":0.1}):string>
 -- !query 41 output
 struct<c1:bigint,c2:decimal(1,1)>

http://git-wip-us.apache.org/repos/asf/spark/blob/3370865b/sql/core/src/test/resources/sql-tests/results/typeCoercion/native/stringCastAndExpressions.sql.out
----------------------------------------------------------------------
diff --git 
a/sql/core/src/test/resources/sql-tests/results/typeCoercion/native/stringCastAndExpressions.sql.out
 
b/sql/core/src/test/resources/sql-tests/results/typeCoercion/native/stringCastAndExpressions.sql.out
index 8ed2820..ba9bf76 100644
--- 
a/sql/core/src/test/resources/sql-tests/results/typeCoercion/native/stringCastAndExpressions.sql.out
+++ 
b/sql/core/src/test/resources/sql-tests/results/typeCoercion/native/stringCastAndExpressions.sql.out
@@ -256,6 +256,6 @@ NULL
 -- !query 31
 select from_json(a, 'a INT') from t
 -- !query 31 schema
-struct<jsontostructs(a):struct<a:int>>
+struct<from_json(a):struct<a:int>>
 -- !query 31 output
 NULL


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@spark.apache.org
For additional commands, e-mail: commits-h...@spark.apache.org

Reply via email to