You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ai...@apache.org on 2016/12/15 14:40:47 UTC

[1/3] hive git commit: HIVE-15383: Add additional info to 'desc function extended' output (Aihua Xu, reviewed by Yongzhi Chen)

Repository: hive
Updated Branches:
  refs/heads/master b862d6a20 -> cb7918c6a


http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_var_pop.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_var_pop.q.out b/ql/src/test/results/clientpositive/udf_var_pop.q.out
index cd9c61e..47baf99 100644
--- a/ql/src/test/results/clientpositive/udf_var_pop.q.out
+++ b/ql/src/test/results/clientpositive/udf_var_pop.q.out
@@ -9,3 +9,5 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED var_pop
 POSTHOOK: type: DESCFUNCTION
 var_pop(x) - Returns the variance of a set of numbers
 Synonyms: variance
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFVariance
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_var_samp.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_var_samp.q.out b/ql/src/test/results/clientpositive/udf_var_samp.q.out
index 190435d..4a5c9b4 100644
--- a/ql/src/test/results/clientpositive/udf_var_samp.q.out
+++ b/ql/src/test/results/clientpositive/udf_var_samp.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED var_samp
 POSTHOOK: type: DESCFUNCTION
 var_samp(x) - Returns the sample variance of a set of numbers
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFVarianceSample
+Function type:BUILTIN
 PREHOOK: query: DESCRIBE FUNCTION var_samp
 PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION var_samp
@@ -18,3 +20,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED var_samp
 POSTHOOK: type: DESCFUNCTION
 var_samp(x) - Returns the sample variance of a set of numbers
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFVarianceSample
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_variance.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_variance.q.out b/ql/src/test/results/clientpositive/udf_variance.q.out
index c00dd66..7df1659 100644
--- a/ql/src/test/results/clientpositive/udf_variance.q.out
+++ b/ql/src/test/results/clientpositive/udf_variance.q.out
@@ -9,6 +9,8 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED variance
 POSTHOOK: type: DESCFUNCTION
 variance(x) - Returns the variance of a set of numbers
 Synonyms: var_pop
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFVariance
+Function type:BUILTIN
 PREHOOK: query: DESCRIBE FUNCTION var_pop
 PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION var_pop
@@ -20,6 +22,8 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED var_pop
 POSTHOOK: type: DESCFUNCTION
 var_pop(x) - Returns the variance of a set of numbers
 Synonyms: variance
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFVariance
+Function type:BUILTIN
 PREHOOK: query: DESCRIBE FUNCTION variance
 PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION variance
@@ -31,6 +35,8 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED variance
 POSTHOOK: type: DESCFUNCTION
 variance(x) - Returns the variance of a set of numbers
 Synonyms: var_pop
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFVariance
+Function type:BUILTIN
 PREHOOK: query: DESCRIBE FUNCTION var_pop
 PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION var_pop
@@ -42,3 +48,5 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED var_pop
 POSTHOOK: type: DESCFUNCTION
 var_pop(x) - Returns the variance of a set of numbers
 Synonyms: variance
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFVariance
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_weekofyear.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_weekofyear.q.out b/ql/src/test/results/clientpositive/udf_weekofyear.q.out
index 40cab0d..6e6c661 100644
--- a/ql/src/test/results/clientpositive/udf_weekofyear.q.out
+++ b/ql/src/test/results/clientpositive/udf_weekofyear.q.out
@@ -13,6 +13,8 @@ Examples:
   8
   > SELECT weekofyear('1980-12-31 12:59:59') FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.UDFWeekOfYear
+Function type:BUILTIN
 PREHOOK: query: SELECT weekofyear('1980-01-01'), weekofyear('1980-01-06'), weekofyear('1980-01-07'), weekofyear('1980-12-31'),
 weekofyear('1984-1-1'), weekofyear('2008-02-20 00:00:00'), weekofyear('1980-12-28 23:59:59'), weekofyear('1980-12-29 23:59:59')
 FROM src tablesample (1 rows)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_when.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_when.q.out b/ql/src/test/results/clientpositive/udf_when.q.out
index 7a5cc1d..f2d7eda 100644
--- a/ql/src/test/results/clientpositive/udf_when.q.out
+++ b/ql/src/test/results/clientpositive/udf_when.q.out
@@ -20,6 +20,8 @@ Example:
    ELSE Asia-Pac
  END
  FROM emp_details
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFWhen
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT CASE
         WHEN 1=1 THEN 2

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_xpath.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_xpath.q.out b/ql/src/test/results/clientpositive/udf_xpath.q.out
index 9992895..a0d813b 100644
--- a/ql/src/test/results/clientpositive/udf_xpath.q.out
+++ b/ql/src/test/results/clientpositive/udf_xpath.q.out
@@ -15,6 +15,8 @@ Example:
   ["b1","b2","b3"]
   > SELECT xpath('<a><b>b1</b><b>b2</b><b>b3</b><c>c1</c><c>c2</c></a>', 'a/c/text()') FROM src LIMIT 1
   ["c1","c2"]
+Function class:org.apache.hadoop.hive.ql.udf.xml.GenericUDFXPath
+Function type:BUILTIN
 PREHOOK: query: SELECT xpath ('<a><b>b1</b><b>b2</b><b>b3</b><c>c1</c><c>c2</c></a>', 'a/text()') FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_xpath_boolean.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_xpath_boolean.q.out b/ql/src/test/results/clientpositive/udf_xpath_boolean.q.out
index cf277f8..9332e39 100644
--- a/ql/src/test/results/clientpositive/udf_xpath_boolean.q.out
+++ b/ql/src/test/results/clientpositive/udf_xpath_boolean.q.out
@@ -13,6 +13,8 @@ Example:
   true
   > SELECT xpath_boolean('<a><b>1</b></a>','a/b = 2') FROM src LIMIT 1;
   false
+Function class:org.apache.hadoop.hive.ql.udf.xml.UDFXPathBoolean
+Function type:BUILTIN
 PREHOOK: query: SELECT xpath_boolean ('<a><b>b</b></a>', 'a/b') FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_xpath_double.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_xpath_double.q.out b/ql/src/test/results/clientpositive/udf_xpath_double.q.out
index dd63858..f38d222 100644
--- a/ql/src/test/results/clientpositive/udf_xpath_double.q.out
+++ b/ql/src/test/results/clientpositive/udf_xpath_double.q.out
@@ -12,6 +12,8 @@ Synonyms: xpath_double
 Example:
   > SELECT xpath_number('<a><b>1</b><b>2</b></a>','sum(a/b)') FROM src LIMIT 1;
   3.0
+Function class:org.apache.hadoop.hive.ql.udf.xml.UDFXPathDouble
+Function type:BUILTIN
 PREHOOK: query: DESCRIBE FUNCTION xpath_double
 PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION xpath_double
@@ -26,6 +28,8 @@ Synonyms: xpath_number
 Example:
   > SELECT xpath_double('<a><b>1</b><b>2</b></a>','sum(a/b)') FROM src LIMIT 1;
   3.0
+Function class:org.apache.hadoop.hive.ql.udf.xml.UDFXPathDouble
+Function type:BUILTIN
 PREHOOK: query: SELECT xpath_double ('<a>this is not a number</a>', 'a') FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_xpath_float.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_xpath_float.q.out b/ql/src/test/results/clientpositive/udf_xpath_float.q.out
index b90edb5..ed15a62 100644
--- a/ql/src/test/results/clientpositive/udf_xpath_float.q.out
+++ b/ql/src/test/results/clientpositive/udf_xpath_float.q.out
@@ -11,6 +11,8 @@ xpath_float(xml, xpath) - Returns a float value that matches the xpath expressio
 Example:
   > SELECT xpath_float('<a><b>1</b><b>2</b></a>','sum(a/b)') FROM src LIMIT 1;
   3.0
+Function class:org.apache.hadoop.hive.ql.udf.xml.UDFXPathFloat
+Function type:BUILTIN
 PREHOOK: query: SELECT xpath_float ('<a>this is not a number</a>', 'a') FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_xpath_int.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_xpath_int.q.out b/ql/src/test/results/clientpositive/udf_xpath_int.q.out
index f958511..ec3a885 100644
--- a/ql/src/test/results/clientpositive/udf_xpath_int.q.out
+++ b/ql/src/test/results/clientpositive/udf_xpath_int.q.out
@@ -11,6 +11,8 @@ xpath_int(xml, xpath) - Returns an integer value that matches the xpath expressi
 Example:
   > SELECT xpath_int('<a><b>1</b><b>2</b></a>','sum(a/b)') FROM src LIMIT 1;
   3
+Function class:org.apache.hadoop.hive.ql.udf.xml.UDFXPathInteger
+Function type:BUILTIN
 PREHOOK: query: SELECT xpath_int ('<a>this is not a number</a>', 'a') FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_xpath_long.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_xpath_long.q.out b/ql/src/test/results/clientpositive/udf_xpath_long.q.out
index bd7f88c..8a23e40 100644
--- a/ql/src/test/results/clientpositive/udf_xpath_long.q.out
+++ b/ql/src/test/results/clientpositive/udf_xpath_long.q.out
@@ -11,6 +11,8 @@ xpath_long(xml, xpath) - Returns a long value that matches the xpath expression
 Example:
   > SELECT xpath_long('<a><b>1</b><b>2</b></a>','sum(a/b)') FROM src LIMIT 1;
   3
+Function class:org.apache.hadoop.hive.ql.udf.xml.UDFXPathLong
+Function type:BUILTIN
 PREHOOK: query: SELECT xpath_long ('<a>this is not a number</a>', 'a') FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_xpath_short.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_xpath_short.q.out b/ql/src/test/results/clientpositive/udf_xpath_short.q.out
index ef1e962..ce0548b 100644
--- a/ql/src/test/results/clientpositive/udf_xpath_short.q.out
+++ b/ql/src/test/results/clientpositive/udf_xpath_short.q.out
@@ -11,6 +11,8 @@ xpath_short(xml, xpath) - Returns a short value that matches the xpath expressio
 Example:
   > SELECT xpath_short('<a><b>1</b><b>2</b></a>','sum(a/b)') FROM src LIMIT 1;
   3
+Function class:org.apache.hadoop.hive.ql.udf.xml.UDFXPathShort
+Function type:BUILTIN
 PREHOOK: query: SELECT xpath_short ('<a>this is not a number</a>', 'a') FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_xpath_string.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_xpath_string.q.out b/ql/src/test/results/clientpositive/udf_xpath_string.q.out
index a46ee9b..836514e 100644
--- a/ql/src/test/results/clientpositive/udf_xpath_string.q.out
+++ b/ql/src/test/results/clientpositive/udf_xpath_string.q.out
@@ -17,6 +17,8 @@ Example:
   'b2'
   > SELECT xpath_string('<a><b>b1</b><b>b2</b></a>','a') FROM src LIMIT 1;
   'b1b2'
+Function class:org.apache.hadoop.hive.ql.udf.xml.UDFXPathString
+Function type:BUILTIN
 PREHOOK: query: SELECT xpath_string ('<a><b>bb</b><c>cc</c></a>', 'a') FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udtf_explode.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udtf_explode.q.out b/ql/src/test/results/clientpositive/udtf_explode.q.out
index f00c9f4..4892cd5 100644
--- a/ql/src/test/results/clientpositive/udtf_explode.q.out
+++ b/ql/src/test/results/clientpositive/udtf_explode.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED explode
 POSTHOOK: type: DESCFUNCTION
 explode(a) - separates the elements of array a into multiple rows, or the elements of a map into multiple rows and columns 
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDTFExplode
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN EXTENDED SELECT explode(array(1,2,3)) AS myCol FROM src LIMIT 3
 PREHOOK: type: QUERY
 POSTHOOK: query: EXPLAIN EXTENDED SELECT explode(array(1,2,3)) AS myCol FROM src LIMIT 3

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udtf_parse_url_tuple.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udtf_parse_url_tuple.q.out b/ql/src/test/results/clientpositive/udtf_parse_url_tuple.q.out
index ab6cee7..bbab029 100644
--- a/ql/src/test/results/clientpositive/udtf_parse_url_tuple.q.out
+++ b/ql/src/test/results/clientpositive/udtf_parse_url_tuple.q.out
@@ -59,6 +59,8 @@ Note: Partnames are case-sensitive, and should not contain unnecessary white spa
 Example:
   > SELECT b.* FROM src LATERAL VIEW parse_url_tuple(fullurl, 'HOST', 'PATH', 'QUERY', 'QUERY:id') b as host, path, query, query_id LIMIT 1;
   > SELECT parse_url_tuple(a.fullurl, 'HOST', 'PATH', 'QUERY', 'REF', 'PROTOCOL', 'FILE',  'AUTHORITY', 'USERINFO', 'QUERY:k1') as (ho, pa, qu, re, pr, fi, au, us, qk1) from src a;
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDTFParseUrlTuple
+Function type:BUILTIN
 PREHOOK: query: explain 
 select a.key, b.* from url_t a lateral view parse_url_tuple(a.fullurl, 'HOST', 'PATH', 'QUERY', 'REF', 'PROTOCOL', 'FILE', 'AUTHORITY', 'USERINFO', 'QUERY:k1') b as ho, pa, qu, re, pr, fi, au, us, qk1 order by a.key
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udtf_replicate_rows.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udtf_replicate_rows.q.out b/ql/src/test/results/clientpositive/udtf_replicate_rows.q.out
index d6add93..2967d6b 100644
--- a/ql/src/test/results/clientpositive/udtf_replicate_rows.q.out
+++ b/ql/src/test/results/clientpositive/udtf_replicate_rows.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED replicate_rows
 POSTHOOK: type: DESCFUNCTION
 replicate_rows(n, cols...) - turns 1 row into n rows
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDTFReplicateRows
+Function type:BUILTIN
 PREHOOK: query: create table t (x bigint, y string, z int)
 PREHOOK: type: CREATETABLE
 PREHOOK: Output: database:default


[3/3] hive git commit: HIVE-15383: Add additional info to 'desc function extended' output (Aihua Xu, reviewed by Yongzhi Chen)

Posted by ai...@apache.org.
HIVE-15383: Add additional info to 'desc function extended' output (Aihua Xu, reviewed by Yongzhi Chen)


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

Branch: refs/heads/master
Commit: cb7918c6aa21d059f5a195bb55261381116557b8
Parents: b862d6a
Author: Aihua Xu <ai...@apache.org>
Authored: Wed Dec 7 17:45:57 2016 -0500
Committer: Aihua Xu <ai...@apache.org>
Committed: Thu Dec 15 09:24:56 2016 -0500

----------------------------------------------------------------------
 .../test/results/clientpositive/dboutput.q.out   |   2 ++
 .../clientpositive/udaf_example_max.q.out        |   2 ++
 .../clientpositive/udaf_example_min.q.out        |   2 ++
 .../clientpositive/udf_row_sequence.q.out        |   2 ++
 .../org/apache/hadoop/hive/ql/exec/DDLTask.java  |  15 +++++++++++++++
 .../clientpositive/cbo_rp_udf_percentile.q.out   |   2 ++
 .../clientpositive/cbo_rp_udf_percentile2.q.out  |   2 ++
 .../results/clientpositive/cbo_udf_max.q.out     |   2 ++
 .../results/clientpositive/create_func1.q.out    |   4 ++++
 .../clientpositive/llap/udaf_collect_set_2.q.out |   4 ++++
 .../clientpositive/spark/udaf_collect_set.q.out  |   4 ++++
 .../results/clientpositive/spark/udf_max.q.out   |   2 ++
 .../results/clientpositive/spark/udf_min.q.out   |   2 ++
 .../clientpositive/spark/udf_percentile.q.out    |   2 ++
 .../test/results/clientpositive/str_to_map.q.out |   2 ++
 .../clientpositive/udaf_collect_set.q.out        |   4 ++++
 .../test/results/clientpositive/udaf_corr.q.out  |   2 ++
 .../results/clientpositive/udaf_covar_pop.q.out  |   2 ++
 .../results/clientpositive/udaf_covar_samp.q.out |   2 ++
 ql/src/test/results/clientpositive/udf_E.q.out   |   4 ++++
 ql/src/test/results/clientpositive/udf_PI.q.out  |   4 ++++
 ql/src/test/results/clientpositive/udf_abs.q.out |   2 ++
 .../test/results/clientpositive/udf_acos.q.out   |   2 ++
 ql/src/test/results/clientpositive/udf_add.q.out |   2 ++
 .../results/clientpositive/udf_add_months.q.out  |   2 ++
 .../results/clientpositive/udf_aes_decrypt.q.out |   2 ++
 .../results/clientpositive/udf_aes_encrypt.q.out |   2 ++
 .../test/results/clientpositive/udf_array.q.out  |   2 ++
 .../clientpositive/udf_array_contains.q.out      |   2 ++
 .../test/results/clientpositive/udf_ascii.q.out  |   2 ++
 .../test/results/clientpositive/udf_asin.q.out   |   2 ++
 .../test/results/clientpositive/udf_atan.q.out   |   4 ++++
 ql/src/test/results/clientpositive/udf_avg.q.out |   2 ++
 .../results/clientpositive/udf_between.q.out     |   2 ++
 .../test/results/clientpositive/udf_bigint.q.out |   2 ++
 ql/src/test/results/clientpositive/udf_bin.q.out |   2 ++
 .../results/clientpositive/udf_bitwise_and.q.out |   2 ++
 .../results/clientpositive/udf_bitwise_not.q.out |   2 ++
 .../results/clientpositive/udf_bitwise_or.q.out  |   2 ++
 .../clientpositive/udf_bitwise_shiftleft.q.out   |   2 ++
 .../clientpositive/udf_bitwise_shiftright.q.out  |   2 ++
 .../udf_bitwise_shiftrightunsigned.q.out         |   2 ++
 .../results/clientpositive/udf_bitwise_xor.q.out |   2 ++
 .../results/clientpositive/udf_boolean.q.out     |   2 ++
 .../test/results/clientpositive/udf_bround.q.out |   2 ++
 .../test/results/clientpositive/udf_case.q.out   |   2 ++
 .../test/results/clientpositive/udf_cbrt.q.out   |   2 ++
 .../test/results/clientpositive/udf_ceil.q.out   |   2 ++
 .../results/clientpositive/udf_ceiling.q.out     |   2 ++
 ql/src/test/results/clientpositive/udf_chr.q.out | Bin 1476 -> 1550 bytes
 .../results/clientpositive/udf_coalesce.q.out    |   2 ++
 .../test/results/clientpositive/udf_concat.q.out |   2 ++
 .../results/clientpositive/udf_concat_ws.q.out   |   2 ++
 .../test/results/clientpositive/udf_conv.q.out   |   2 ++
 ql/src/test/results/clientpositive/udf_cos.q.out |   2 ++
 .../test/results/clientpositive/udf_count.q.out  |   2 ++
 .../test/results/clientpositive/udf_crc32.q.out  |   2 ++
 .../clientpositive/udf_current_user.q.out        |   2 ++
 .../results/clientpositive/udf_date_add.q.out    |   2 ++
 .../results/clientpositive/udf_date_format.q.out |   2 ++
 .../results/clientpositive/udf_date_sub.q.out    |   2 ++
 .../results/clientpositive/udf_datediff.q.out    |   2 ++
 ql/src/test/results/clientpositive/udf_day.q.out |   2 ++
 .../results/clientpositive/udf_dayofmonth.q.out  |   2 ++
 .../test/results/clientpositive/udf_decode.q.out |   2 ++
 .../results/clientpositive/udf_degrees.q.out     |   4 ++++
 ql/src/test/results/clientpositive/udf_div.q.out |   2 ++
 .../test/results/clientpositive/udf_divide.q.out |   2 ++
 .../test/results/clientpositive/udf_double.q.out |   2 ++
 ql/src/test/results/clientpositive/udf_elt.q.out |   2 ++
 .../test/results/clientpositive/udf_equal.q.out  |   6 ++++++
 ql/src/test/results/clientpositive/udf_exp.q.out |   2 ++
 .../results/clientpositive/udf_explode.q.out     |   2 ++
 .../results/clientpositive/udf_factorial.q.out   |   2 ++
 .../test/results/clientpositive/udf_field.q.out  |   2 ++
 .../results/clientpositive/udf_find_in_set.q.out |   2 ++
 .../test/results/clientpositive/udf_float.q.out  |   2 ++
 .../test/results/clientpositive/udf_floor.q.out  |   2 ++
 .../clientpositive/udf_format_number.q.out       |   2 ++
 .../clientpositive/udf_from_unixtime.q.out       |   2 ++
 .../clientpositive/udf_from_utc_timestamp.q.out  |   2 ++
 .../clientpositive/udf_get_json_object.q.out     |   2 ++
 .../results/clientpositive/udf_greaterthan.q.out |   2 ++
 .../clientpositive/udf_greaterthanorequal.q.out  |   2 ++
 .../results/clientpositive/udf_greatest.q.out    |   2 ++
 .../test/results/clientpositive/udf_hash.q.out   |   2 ++
 ql/src/test/results/clientpositive/udf_hex.q.out |   2 ++
 .../test/results/clientpositive/udf_hour.q.out   |   2 ++
 ql/src/test/results/clientpositive/udf_if.q.out  |   2 ++
 .../results/clientpositive/udf_initcap.q.out     |   2 ++
 .../test/results/clientpositive/udf_instr.q.out  |   2 ++
 ql/src/test/results/clientpositive/udf_int.q.out |   2 ++
 .../results/clientpositive/udf_isnotnull.q.out   |   2 ++
 .../test/results/clientpositive/udf_isnull.q.out |   2 ++
 .../clientpositive/udf_isnull_isnotnull.q.out    |   4 ++++
 .../results/clientpositive/udf_java_method.q.out |   2 ++
 .../results/clientpositive/udf_last_day.q.out    |   2 ++
 .../test/results/clientpositive/udf_lcase.q.out  |   2 ++
 .../test/results/clientpositive/udf_least.q.out  |   2 ++
 .../test/results/clientpositive/udf_length.q.out |   2 ++
 .../results/clientpositive/udf_lessthan.q.out    |   2 ++
 .../clientpositive/udf_lessthanorequal.q.out     |   2 ++
 .../results/clientpositive/udf_levenshtein.q.out |   2 ++
 .../test/results/clientpositive/udf_like.q.out   |   2 ++
 ql/src/test/results/clientpositive/udf_ln.q.out  |   2 ++
 .../test/results/clientpositive/udf_locate.q.out |   2 ++
 ql/src/test/results/clientpositive/udf_log.q.out |   2 ++
 .../test/results/clientpositive/udf_log10.q.out  |   2 ++
 .../test/results/clientpositive/udf_log2.q.out   |   2 ++
 .../clientpositive/udf_logged_in_user.q.out      |   2 ++
 .../test/results/clientpositive/udf_lower.q.out  |   2 ++
 .../test/results/clientpositive/udf_lpad.q.out   |   2 ++
 .../test/results/clientpositive/udf_ltrim.q.out  |   2 ++
 ql/src/test/results/clientpositive/udf_map.q.out |   2 ++
 .../results/clientpositive/udf_map_keys.q.out    |   2 ++
 .../results/clientpositive/udf_map_values.q.out  |   2 ++
 .../test/results/clientpositive/udf_mask.q.out   |   2 ++
 .../clientpositive/udf_mask_first_n.q.out        |   2 ++
 .../results/clientpositive/udf_mask_hash.q.out   |   2 ++
 .../results/clientpositive/udf_mask_last_n.q.out |   2 ++
 .../clientpositive/udf_mask_show_first_n.q.out   |   2 ++
 .../clientpositive/udf_mask_show_last_n.q.out    |   2 ++
 ql/src/test/results/clientpositive/udf_max.q.out |   2 ++
 ql/src/test/results/clientpositive/udf_md5.q.out |   2 ++
 ql/src/test/results/clientpositive/udf_min.q.out |   2 ++
 .../test/results/clientpositive/udf_minute.q.out |   2 ++
 .../test/results/clientpositive/udf_modulo.q.out |   2 ++
 .../test/results/clientpositive/udf_month.q.out  |   2 ++
 .../clientpositive/udf_months_between.q.out      |   2 ++
 .../clientpositive/udf_named_struct.q.out        |   2 ++
 .../results/clientpositive/udf_negative.q.out    |   4 ++++
 .../results/clientpositive/udf_next_day.q.out    |   2 ++
 ql/src/test/results/clientpositive/udf_not.q.out |   4 ++++
 .../results/clientpositive/udf_notequal.q.out    |   4 ++++
 .../test/results/clientpositive/udf_nullif.q.out |   2 ++
 ql/src/test/results/clientpositive/udf_nvl.q.out |   2 ++
 ql/src/test/results/clientpositive/udf_or.q.out  |   2 ++
 .../results/clientpositive/udf_parse_url.q.out   |   2 ++
 .../results/clientpositive/udf_percentile.q.out  |   2 ++
 .../test/results/clientpositive/udf_pmod.q.out   |   2 ++
 .../results/clientpositive/udf_positive.q.out    |   4 ++++
 ql/src/test/results/clientpositive/udf_pow.q.out |   2 ++
 .../test/results/clientpositive/udf_power.q.out  |   2 ++
 .../test/results/clientpositive/udf_printf.q.out |   2 ++
 .../results/clientpositive/udf_quarter.q.out     |   2 ++
 .../results/clientpositive/udf_radians.q.out     |   4 ++++
 .../test/results/clientpositive/udf_rand.q.out   |   2 ++
 .../results/clientpositive/udf_reflect.q.out     |   2 ++
 .../results/clientpositive/udf_reflect2.q.out    |   2 ++
 .../test/results/clientpositive/udf_regexp.q.out |   2 ++
 .../clientpositive/udf_regexp_extract.q.out      |   2 ++
 .../clientpositive/udf_regexp_replace.q.out      |   2 ++
 .../test/results/clientpositive/udf_repeat.q.out |   2 ++
 .../results/clientpositive/udf_replace.q.out     |   2 ++
 .../results/clientpositive/udf_reverse.q.out     |   2 ++
 .../test/results/clientpositive/udf_rlike.q.out  |   2 ++
 .../test/results/clientpositive/udf_round.q.out  |   2 ++
 .../test/results/clientpositive/udf_rpad.q.out   |   2 ++
 .../test/results/clientpositive/udf_rtrim.q.out  |   2 ++
 .../test/results/clientpositive/udf_second.q.out |   2 ++
 .../test/results/clientpositive/udf_sha1.q.out   |   2 ++
 .../test/results/clientpositive/udf_sha2.q.out   |   2 ++
 .../test/results/clientpositive/udf_sign.q.out   |   4 ++++
 ql/src/test/results/clientpositive/udf_sin.q.out |   2 ++
 .../test/results/clientpositive/udf_size.q.out   |   2 ++
 .../results/clientpositive/udf_smallint.q.out    |   2 ++
 .../results/clientpositive/udf_sort_array.q.out  |   4 +++-
 .../clientpositive/udf_sort_array_by.q.out       |   2 ++
 .../results/clientpositive/udf_soundex.q.out     |   2 ++
 .../test/results/clientpositive/udf_space.q.out  |   2 ++
 .../test/results/clientpositive/udf_split.q.out  |   2 ++
 .../test/results/clientpositive/udf_sqrt.q.out   |   2 ++
 ql/src/test/results/clientpositive/udf_std.q.out |   2 ++
 .../test/results/clientpositive/udf_stddev.q.out |   2 ++
 .../results/clientpositive/udf_stddev_samp.q.out |   4 ++++
 .../test/results/clientpositive/udf_string.q.out |   2 ++
 .../test/results/clientpositive/udf_struct.q.out |   2 ++
 .../test/results/clientpositive/udf_substr.q.out |   2 ++
 .../results/clientpositive/udf_substring.q.out   |   2 ++
 .../clientpositive/udf_substring_index.q.out     |   2 ++
 .../results/clientpositive/udf_subtract.q.out    |   2 ++
 ql/src/test/results/clientpositive/udf_sum.q.out |   4 ++++
 ql/src/test/results/clientpositive/udf_tan.q.out |   4 ++++
 .../results/clientpositive/udf_tinyint.q.out     |   2 ++
 .../results/clientpositive/udf_to_date.q.out     |   2 ++
 .../clientpositive/udf_to_unix_timestamp.q.out   |   2 ++
 .../clientpositive/udf_to_utc_timestamp.q.out    |   2 ++
 .../results/clientpositive/udf_translate.q.out   |   2 ++
 .../test/results/clientpositive/udf_trim.q.out   |   2 ++
 .../test/results/clientpositive/udf_trunc.q.out  |   2 ++
 .../test/results/clientpositive/udf_ucase.q.out  |   2 ++
 .../test/results/clientpositive/udf_unhex.q.out  |   2 ++
 .../test/results/clientpositive/udf_union.q.out  |   2 ++
 .../clientpositive/udf_unix_timestamp.q.out      |   2 ++
 .../test/results/clientpositive/udf_upper.q.out  |   2 ++
 .../results/clientpositive/udf_var_pop.q.out     |   2 ++
 .../results/clientpositive/udf_var_samp.q.out    |   4 ++++
 .../results/clientpositive/udf_variance.q.out    |   8 ++++++++
 .../results/clientpositive/udf_weekofyear.q.out  |   2 ++
 .../test/results/clientpositive/udf_when.q.out   |   2 ++
 .../test/results/clientpositive/udf_xpath.q.out  |   2 ++
 .../clientpositive/udf_xpath_boolean.q.out       |   2 ++
 .../clientpositive/udf_xpath_double.q.out        |   4 ++++
 .../results/clientpositive/udf_xpath_float.q.out |   2 ++
 .../results/clientpositive/udf_xpath_int.q.out   |   2 ++
 .../results/clientpositive/udf_xpath_long.q.out  |   2 ++
 .../results/clientpositive/udf_xpath_short.q.out |   2 ++
 .../clientpositive/udf_xpath_string.q.out        |   2 ++
 .../results/clientpositive/udtf_explode.q.out    |   2 ++
 .../clientpositive/udtf_parse_url_tuple.q.out    |   2 ++
 .../clientpositive/udtf_replicate_rows.q.out     |   2 ++
 211 files changed, 484 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/contrib/src/test/results/clientpositive/dboutput.q.out
----------------------------------------------------------------------
diff --git a/contrib/src/test/results/clientpositive/dboutput.q.out b/contrib/src/test/results/clientpositive/dboutput.q.out
index dc79c6c..fb985ea 100644
--- a/contrib/src/test/results/clientpositive/dboutput.q.out
+++ b/contrib/src/test/results/clientpositive/dboutput.q.out
@@ -20,6 +20,8 @@ argument 2 is the password
 argument 3 is an SQL query to be used in the PreparedStatement
 argument (4-n) The remaining arguments must be primitive and are passed to the PreparedStatement object
 
+Function class:org.apache.hadoop.hive.contrib.genericudf.example.GenericUDFDBOutput
+Function type:TEMPORARY
 PREHOOK: query: EXPLAIN FROM src
 
 SELECT dboutput ( 'jdbc:derby:../build/test_dboutput_db;create=true','','',

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/contrib/src/test/results/clientpositive/udaf_example_max.q.out
----------------------------------------------------------------------
diff --git a/contrib/src/test/results/clientpositive/udaf_example_max.q.out b/contrib/src/test/results/clientpositive/udaf_example_max.q.out
index fc5a896..1794c1e 100644
--- a/contrib/src/test/results/clientpositive/udaf_example_max.q.out
+++ b/contrib/src/test/results/clientpositive/udaf_example_max.q.out
@@ -9,6 +9,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED example_max
 POSTHOOK: type: DESCFUNCTION
 example_max(expr) - Returns the maximum value of expr
+Function class:org.apache.hadoop.hive.contrib.udaf.example.UDAFExampleMax
+Function type:TEMPORARY
 PREHOOK: query: EXPLAIN
 SELECT example_max(substr(value,5)),
        example_max(IF(substr(value,5) > 250, NULL, substr(value,5)))

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/contrib/src/test/results/clientpositive/udaf_example_min.q.out
----------------------------------------------------------------------
diff --git a/contrib/src/test/results/clientpositive/udaf_example_min.q.out b/contrib/src/test/results/clientpositive/udaf_example_min.q.out
index feb2add..4f3f8f8 100644
--- a/contrib/src/test/results/clientpositive/udaf_example_min.q.out
+++ b/contrib/src/test/results/clientpositive/udaf_example_min.q.out
@@ -9,6 +9,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED example_min
 POSTHOOK: type: DESCFUNCTION
 example_min(expr) - Returns the minimum value of expr
+Function class:org.apache.hadoop.hive.contrib.udaf.example.UDAFExampleMin
+Function type:TEMPORARY
 PREHOOK: query: EXPLAIN
 SELECT example_min(substr(value,5)),
        example_min(IF(substr(value,5) > 250, NULL, substr(value,5)))

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/contrib/src/test/results/clientpositive/udf_row_sequence.q.out
----------------------------------------------------------------------
diff --git a/contrib/src/test/results/clientpositive/udf_row_sequence.q.out b/contrib/src/test/results/clientpositive/udf_row_sequence.q.out
index 14798ae..65c7732 100644
--- a/contrib/src/test/results/clientpositive/udf_row_sequence.q.out
+++ b/contrib/src/test/results/clientpositive/udf_row_sequence.q.out
@@ -23,6 +23,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED row_sequence
 POSTHOOK: type: DESCFUNCTION
 row_sequence() - Returns a generated row sequence number starting from 1
+Function class:org.apache.hadoop.hive.contrib.udf.UDFRowSequence
+Function type:TEMPORARY
 PREHOOK: query: explain
 select key, row_sequence() as r
 from (select key from src order by key) x

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
index 8a1a2ac..8a25399 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
@@ -99,6 +99,7 @@ import org.apache.hadoop.hive.ql.ErrorMsg;
 import org.apache.hadoop.hive.ql.QueryPlan;
 import org.apache.hadoop.hive.ql.QueryState;
 import org.apache.hadoop.hive.ql.exec.ArchiveUtils.PartSpecInfo;
+import org.apache.hadoop.hive.ql.exec.FunctionInfo.FunctionResource;
 import org.apache.hadoop.hive.ql.exec.tez.TezTask;
 import org.apache.hadoop.hive.ql.hooks.LineageInfo.DataContainer;
 import org.apache.hadoop.hive.ql.hooks.ReadEntity;
@@ -2954,6 +2955,20 @@ public class DDLTask extends Task<DDLWork> implements Serializable {
       }
 
       outStream.write(terminator);
+      if (descFunc.isExtended()) {
+        if (funcClass != null) {
+          outStream.writeBytes("Function class:" + funcClass.getName() + "\n");
+        }
+        if (functionInfo != null) {
+          outStream.writeBytes("Function type:" + functionInfo.getFunctionType() + "\n");
+          FunctionResource[] resources = functionInfo.getResources();
+          if (resources != null) {
+            for (FunctionResource resource : resources) {
+              outStream.writeBytes("Resource:" + resource.getResourceURI() + "\n");
+            }
+          }
+        }
+      }
     } catch (FileNotFoundException e) {
       LOG.warn("describe function: " + stringifyException(e));
       return 1;

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/cbo_rp_udf_percentile.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/cbo_rp_udf_percentile.q.out b/ql/src/test/results/clientpositive/cbo_rp_udf_percentile.q.out
index c699a95..3f8890b 100644
--- a/ql/src/test/results/clientpositive/cbo_rp_udf_percentile.q.out
+++ b/ql/src/test/results/clientpositive/cbo_rp_udf_percentile.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED percentile
 POSTHOOK: type: DESCFUNCTION
 percentile(expr, pc) - Returns the percentile(s) of expr at pc (range: [0,1]).pc can be a double or double array
+Function class:org.apache.hadoop.hive.ql.udf.UDAFPercentile
+Function type:BUILTIN
 PREHOOK: query: -- SORT_QUERY_RESULTS
 
 SELECT CAST(key AS INT) DIV 10,

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/cbo_rp_udf_percentile2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/cbo_rp_udf_percentile2.q.out b/ql/src/test/results/clientpositive/cbo_rp_udf_percentile2.q.out
index de6db7d..66d4f16 100644
--- a/ql/src/test/results/clientpositive/cbo_rp_udf_percentile2.q.out
+++ b/ql/src/test/results/clientpositive/cbo_rp_udf_percentile2.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED percentile
 POSTHOOK: type: DESCFUNCTION
 percentile(expr, pc) - Returns the percentile(s) of expr at pc (range: [0,1]).pc can be a double or double array
+Function class:org.apache.hadoop.hive.ql.udf.UDAFPercentile
+Function type:BUILTIN
 PREHOOK: query: -- SORT_QUERY_RESULTS
 
 SELECT CAST(key AS INT) DIV 10,

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/cbo_udf_max.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/cbo_udf_max.q.out b/ql/src/test/results/clientpositive/cbo_udf_max.q.out
index aa36489..461351d 100644
--- a/ql/src/test/results/clientpositive/cbo_udf_max.q.out
+++ b/ql/src/test/results/clientpositive/cbo_udf_max.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED max
 POSTHOOK: type: DESCFUNCTION
 max(expr) - Returns the maximum value of expr
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFMax
+Function type:BUILTIN
 PREHOOK: query: SELECT max(struct(CAST(key as INT), value)),
        max(struct(key, value))
 FROM src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/create_func1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/create_func1.q.out b/ql/src/test/results/clientpositive/create_func1.q.out
index 30c16c7..c5e035a 100644
--- a/ql/src/test/results/clientpositive/create_func1.q.out
+++ b/ql/src/test/results/clientpositive/create_func1.q.out
@@ -15,6 +15,8 @@ POSTHOOK: query: describe function extended qtest_get_java_boolean
 POSTHOOK: type: DESCFUNCTION
 qtest_get_java_boolean(str) - GenericUDF to return native Java's boolean type
 Synonyms: default.qtest_get_java_boolean
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFTestGetJavaBoolean
+Function type:PERSISTENT
 PREHOOK: query: create database mydb
 PREHOOK: type: CREATEDATABASE
 PREHOOK: Output: database:mydb
@@ -43,6 +45,8 @@ Synonyms: upper, ucase
 Example:
   > SELECT mydb.func1('Facebook') FROM src LIMIT 1;
   'FACEBOOK'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFUpper
+Function type:PERSISTENT
 PREHOOK: query: select mydb.func1('abc') from src limit 1
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/llap/udaf_collect_set_2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/llap/udaf_collect_set_2.q.out b/ql/src/test/results/clientpositive/llap/udaf_collect_set_2.q.out
index f2e76a7..c622f96 100644
--- a/ql/src/test/results/clientpositive/llap/udaf_collect_set_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/udaf_collect_set_2.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED collect_set
 POSTHOOK: type: DESCFUNCTION
 collect_set(x) - Returns a set of objects with duplicate elements eliminated
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFCollectSet
+Function type:BUILTIN
 PREHOOK: query: DESCRIBE FUNCTION collect_list
 PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION collect_list
@@ -18,6 +20,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED collect_list
 POSTHOOK: type: DESCFUNCTION
 collect_list(x) - Returns a list of objects with duplicates
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFCollectList
+Function type:BUILTIN
 PREHOOK: query: -- initialize tables
 
 CREATE TABLE customers (id int, name varchar(10), age int)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/spark/udaf_collect_set.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/udaf_collect_set.q.out b/ql/src/test/results/clientpositive/spark/udaf_collect_set.q.out
index 42f2d9d..ee152ca 100644
--- a/ql/src/test/results/clientpositive/spark/udaf_collect_set.q.out
+++ b/ql/src/test/results/clientpositive/spark/udaf_collect_set.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED collect_set
 POSTHOOK: type: DESCFUNCTION
 collect_set(x) - Returns a set of objects with duplicate elements eliminated
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFCollectSet
+Function type:BUILTIN
 PREHOOK: query: DESCRIBE FUNCTION collect_list
 PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION collect_list
@@ -18,6 +20,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED collect_list
 POSTHOOK: type: DESCFUNCTION
 collect_list(x) - Returns a list of objects with duplicates
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFCollectList
+Function type:BUILTIN
 PREHOOK: query: SELECT key, collect_set(value)
 FROM src
 GROUP BY key ORDER BY key limit 20

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/spark/udf_max.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/udf_max.q.out b/ql/src/test/results/clientpositive/spark/udf_max.q.out
index 8535752..9671bf1 100644
--- a/ql/src/test/results/clientpositive/spark/udf_max.q.out
+++ b/ql/src/test/results/clientpositive/spark/udf_max.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED max
 POSTHOOK: type: DESCFUNCTION
 max(expr) - Returns the maximum value of expr
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFMax
+Function type:BUILTIN
 PREHOOK: query: SELECT max(struct(CAST(key as INT), value)),
        max(struct(key, value))
 FROM src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/spark/udf_min.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/udf_min.q.out b/ql/src/test/results/clientpositive/spark/udf_min.q.out
index ca8158e..8d3d0a0 100644
--- a/ql/src/test/results/clientpositive/spark/udf_min.q.out
+++ b/ql/src/test/results/clientpositive/spark/udf_min.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED min
 POSTHOOK: type: DESCFUNCTION
 min(expr) - Returns the minimum value of expr
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFMin
+Function type:BUILTIN
 PREHOOK: query: SELECT min(struct(CAST(key as INT), value)),
        min(struct(key, value))
 FROM src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/spark/udf_percentile.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/udf_percentile.q.out b/ql/src/test/results/clientpositive/spark/udf_percentile.q.out
index c699a95..3f8890b 100644
--- a/ql/src/test/results/clientpositive/spark/udf_percentile.q.out
+++ b/ql/src/test/results/clientpositive/spark/udf_percentile.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED percentile
 POSTHOOK: type: DESCFUNCTION
 percentile(expr, pc) - Returns the percentile(s) of expr at pc (range: [0,1]).pc can be a double or double array
+Function class:org.apache.hadoop.hive.ql.udf.UDAFPercentile
+Function type:BUILTIN
 PREHOOK: query: -- SORT_QUERY_RESULTS
 
 SELECT CAST(key AS INT) DIV 10,

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/str_to_map.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/str_to_map.q.out b/ql/src/test/results/clientpositive/str_to_map.q.out
index 30c98db..6afe1c8 100644
--- a/ql/src/test/results/clientpositive/str_to_map.q.out
+++ b/ql/src/test/results/clientpositive/str_to_map.q.out
@@ -9,6 +9,8 @@ POSTHOOK: query: desc function extended str_to_map
 POSTHOOK: type: DESCFUNCTION
 str_to_map(text, delimiter1, delimiter2) - Creates a map by parsing text 
 Split text into key-value pairs using two delimiters. The first delimiter seperates pairs, and the second delimiter sperates key and value. If only one parameter is given, default delimiters are used: ',' as delimiter1 and '=' as delimiter2.
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFStringToMap
+Function type:BUILTIN
 PREHOOK: query: explain select str_to_map('a=1,b=2,c=3',',','=')['a'] from src limit 3
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select str_to_map('a=1,b=2,c=3',',','=')['a'] from src limit 3

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udaf_collect_set.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udaf_collect_set.q.out b/ql/src/test/results/clientpositive/udaf_collect_set.q.out
index 42f2d9d..ee152ca 100644
--- a/ql/src/test/results/clientpositive/udaf_collect_set.q.out
+++ b/ql/src/test/results/clientpositive/udaf_collect_set.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED collect_set
 POSTHOOK: type: DESCFUNCTION
 collect_set(x) - Returns a set of objects with duplicate elements eliminated
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFCollectSet
+Function type:BUILTIN
 PREHOOK: query: DESCRIBE FUNCTION collect_list
 PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION collect_list
@@ -18,6 +20,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED collect_list
 POSTHOOK: type: DESCFUNCTION
 collect_list(x) - Returns a list of objects with duplicates
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFCollectList
+Function type:BUILTIN
 PREHOOK: query: SELECT key, collect_set(value)
 FROM src
 GROUP BY key ORDER BY key limit 20

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udaf_corr.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udaf_corr.q.out b/ql/src/test/results/clientpositive/udaf_corr.q.out
index 1b468c4..b061763 100644
--- a/ql/src/test/results/clientpositive/udaf_corr.q.out
+++ b/ql/src/test/results/clientpositive/udaf_corr.q.out
@@ -43,6 +43,8 @@ a singleton set, NULL will be returned. Otherwise, it computes the following:
 where neither x nor y is null,
 COVAR_POP is the population covariance,
 and STDDEV_POP is the population standard deviation.
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFCorrelation
+Function type:BUILTIN
 PREHOOK: query: SELECT corr(b, c) FROM covar_tab WHERE a < 1
 PREHOOK: type: QUERY
 PREHOOK: Input: default@covar_tab

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udaf_covar_pop.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udaf_covar_pop.q.out b/ql/src/test/results/clientpositive/udaf_covar_pop.q.out
index 4a32636..555f484 100644
--- a/ql/src/test/results/clientpositive/udaf_covar_pop.q.out
+++ b/ql/src/test/results/clientpositive/udaf_covar_pop.q.out
@@ -39,6 +39,8 @@ Any pair with a NULL is ignored. If the function is applied to an empty set, NUL
 will be returned. Otherwise, it computes the following:
    (SUM(x*y)-SUM(x)*SUM(y)/COUNT(x,y))/COUNT(x,y)
 where neither x nor y is null.
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFCovariance
+Function type:BUILTIN
 PREHOOK: query: SELECT covar_pop(b, c) FROM covar_tab WHERE a < 1
 PREHOOK: type: QUERY
 PREHOOK: Input: default@covar_tab

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udaf_covar_samp.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udaf_covar_samp.q.out b/ql/src/test/results/clientpositive/udaf_covar_samp.q.out
index cbd8d78..a009f68 100644
--- a/ql/src/test/results/clientpositive/udaf_covar_samp.q.out
+++ b/ql/src/test/results/clientpositive/udaf_covar_samp.q.out
@@ -39,6 +39,8 @@ Any pair with a NULL is ignored. If the function is applied to an empty set, NUL
 will be returned. Otherwise, it computes the following:
    (SUM(x*y)-SUM(x)*SUM(y)/COUNT(x,y))/(COUNT(x,y)-1)
 where neither x nor y is null.
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFCovarianceSample
+Function type:BUILTIN
 PREHOOK: query: SELECT covar_samp(b, c) FROM covar_tab WHERE a < 1
 PREHOOK: type: QUERY
 PREHOOK: Input: default@covar_tab

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_E.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_E.q.out b/ql/src/test/results/clientpositive/udf_E.q.out
index fed6f3f..4ba0e1f 100644
--- a/ql/src/test/results/clientpositive/udf_E.q.out
+++ b/ql/src/test/results/clientpositive/udf_E.q.out
@@ -45,6 +45,8 @@ Synonyms: e
 Example:
  > SELECT E() FROM src LIMIT 1;
  2.718281828459045
+Function class:org.apache.hadoop.hive.ql.udf.UDFE
+Function type:BUILTIN
 PREHOOK: query: explain 
 select E() FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
@@ -92,3 +94,5 @@ Synonyms: e
 Example:
  > SELECT E() FROM src LIMIT 1;
  2.718281828459045
+Function class:org.apache.hadoop.hive.ql.udf.UDFE
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_PI.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_PI.q.out b/ql/src/test/results/clientpositive/udf_PI.q.out
index 2015aa2..0479eef 100644
--- a/ql/src/test/results/clientpositive/udf_PI.q.out
+++ b/ql/src/test/results/clientpositive/udf_PI.q.out
@@ -45,6 +45,8 @@ Synonyms: pi
 Example:
  > SELECT PI() FROM src LIMIT 1;
  3.14159...
+Function class:org.apache.hadoop.hive.ql.udf.UDFPI
+Function type:BUILTIN
 PREHOOK: query: explain 
 select PI() FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
@@ -92,3 +94,5 @@ Synonyms: pi
 Example:
  > SELECT PI() FROM src LIMIT 1;
  3.14159...
+Function class:org.apache.hadoop.hive.ql.udf.UDFPI
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_abs.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_abs.q.out b/ql/src/test/results/clientpositive/udf_abs.q.out
index 10e5458..5a8c4d7 100644
--- a/ql/src/test/results/clientpositive/udf_abs.q.out
+++ b/ql/src/test/results/clientpositive/udf_abs.q.out
@@ -13,6 +13,8 @@ Example:
   0
   > SELECT abs(-5) FROM src LIMIT 1;
   5
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFAbs
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN SELECT
   abs(0),
   abs(-1),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_acos.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_acos.q.out b/ql/src/test/results/clientpositive/udf_acos.q.out
index 311291a..fff2720 100644
--- a/ql/src/test/results/clientpositive/udf_acos.q.out
+++ b/ql/src/test/results/clientpositive/udf_acos.q.out
@@ -13,6 +13,8 @@ Example:
   0
   > SELECT acos(2) FROM src LIMIT 1;
   NULL
+Function class:org.apache.hadoop.hive.ql.udf.UDFAcos
+Function type:BUILTIN
 PREHOOK: query: SELECT acos(null)
 FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_add.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_add.q.out b/ql/src/test/results/clientpositive/udf_add.q.out
index 0efdbe1..292cbac 100644
--- a/ql/src/test/results/clientpositive/udf_add.q.out
+++ b/ql/src/test/results/clientpositive/udf_add.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED +
 POSTHOOK: type: DESCFUNCTION
 a + b - Returns a+b
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPPlus
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_add_months.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_add_months.q.out b/ql/src/test/results/clientpositive/udf_add_months.q.out
index 2639c33..3468b9f 100644
--- a/ql/src/test/results/clientpositive/udf_add_months.q.out
+++ b/ql/src/test/results/clientpositive/udf_add_months.q.out
@@ -12,6 +12,8 @@ start_date is a string in the format 'yyyy-MM-dd HH:mm:ss' or 'yyyy-MM-dd'. num_
 Example:
   > SELECT add_months('2009-08-31', 1) FROM src LIMIT 1;
  '2009-09-30'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFAddMonths
+Function type:BUILTIN
 PREHOOK: query: explain select add_months('2014-01-14', 1)
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select add_months('2014-01-14', 1)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_aes_decrypt.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_aes_decrypt.q.out b/ql/src/test/results/clientpositive/udf_aes_decrypt.q.out
index 83780a9..83ff03d 100644
--- a/ql/src/test/results/clientpositive/udf_aes_decrypt.q.out
+++ b/ql/src/test/results/clientpositive/udf_aes_decrypt.q.out
@@ -11,6 +11,8 @@ aes_decrypt(input binary, key string/binary) - Decrypt input using AES.
 AES (Advanced Encryption Standard) algorithm. Key lengths of 128, 192 or 256 bits can be used. 192 and 256 bits keys can be used if Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files are installed. If either argument is NULL or the key length is not one of the permitted values, the return value is NULL.
 Example: > SELECT aes_decrypt(unbase64('y6Ss+zCYObpCbgfWfyNWTw=='), '1234567890123456');
  'ABC'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFAesDecrypt
+Function type:BUILTIN
 PREHOOK: query: explain select aes_decrypt(unbase64("y6Ss+zCYObpCbgfWfyNWTw=="), '1234567890123456')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select aes_decrypt(unbase64("y6Ss+zCYObpCbgfWfyNWTw=="), '1234567890123456')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_aes_encrypt.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_aes_encrypt.q.out b/ql/src/test/results/clientpositive/udf_aes_encrypt.q.out
index 9e356b2..2e1bf9e 100644
--- a/ql/src/test/results/clientpositive/udf_aes_encrypt.q.out
+++ b/ql/src/test/results/clientpositive/udf_aes_encrypt.q.out
@@ -11,6 +11,8 @@ aes_encrypt(input string/binary, key string/binary) - Encrypt input using AES.
 AES (Advanced Encryption Standard) algorithm. Key lengths of 128, 192 or 256 bits can be used. 192 and 256 bits keys can be used if Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files are installed. If either argument is NULL or the key length is not one of the permitted values, the return value is NULL.
 Example: > SELECT base64(aes_encrypt('ABC', '1234567890123456'));
  'y6Ss+zCYObpCbgfWfyNWTw=='
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFAesEncrypt
+Function type:BUILTIN
 PREHOOK: query: explain select aes_encrypt('ABC', '1234567890123456')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select aes_encrypt('ABC', '1234567890123456')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_array.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_array.q.out b/ql/src/test/results/clientpositive/udf_array.q.out
index b390c39..1abb399 100644
--- a/ql/src/test/results/clientpositive/udf_array.q.out
+++ b/ql/src/test/results/clientpositive/udf_array.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED array
 POSTHOOK: type: DESCFUNCTION
 array(n0, n1...) - Creates an array with the given elements 
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFArray
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN SELECT array(), array()[1], array(1, 2, 3), array(1, 2, 3)[2], array(1,"a", 2, 3), array(1,"a", 2, 3)[2],
 array(array(1), array(2), array(3), array(4))[1][0] FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_array_contains.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_array_contains.q.out b/ql/src/test/results/clientpositive/udf_array_contains.q.out
index 63aafca..9320deb 100644
--- a/ql/src/test/results/clientpositive/udf_array_contains.q.out
+++ b/ql/src/test/results/clientpositive/udf_array_contains.q.out
@@ -11,6 +11,8 @@ array_contains(array, value) - Returns TRUE if the array contains value.
 Example:
   > SELECT array_contains(array(1, 2, 3), 2) FROM src LIMIT 1;
   true
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFArrayContains
+Function type:BUILTIN
 PREHOOK: query: -- evalutes function for array of primitives
 SELECT array_contains(array(1, 2, 3), 1) FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_ascii.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_ascii.q.out b/ql/src/test/results/clientpositive/udf_ascii.q.out
index a755486..780e3e0 100644
--- a/ql/src/test/results/clientpositive/udf_ascii.q.out
+++ b/ql/src/test/results/clientpositive/udf_ascii.q.out
@@ -13,6 +13,8 @@ Example:
   > SELECT ascii('222') FROM src LIMIT 1;  50
   > SELECT ascii(2) FROM src LIMIT 1;
   50
+Function class:org.apache.hadoop.hive.ql.udf.UDFAscii
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN SELECT
   ascii('Facebook'),
   ascii(''),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_asin.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_asin.q.out b/ql/src/test/results/clientpositive/udf_asin.q.out
index 39659af..c99e438 100644
--- a/ql/src/test/results/clientpositive/udf_asin.q.out
+++ b/ql/src/test/results/clientpositive/udf_asin.q.out
@@ -13,6 +13,8 @@ Example:
   0
   > SELECT asin(2) FROM src LIMIT 1;
   NULL
+Function class:org.apache.hadoop.hive.ql.udf.UDFAsin
+Function type:BUILTIN
 PREHOOK: query: SELECT asin(null)
 FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_atan.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_atan.q.out b/ql/src/test/results/clientpositive/udf_atan.q.out
index cc1bf35..8f32ce7 100644
--- a/ql/src/test/results/clientpositive/udf_atan.q.out
+++ b/ql/src/test/results/clientpositive/udf_atan.q.out
@@ -11,6 +11,8 @@ atan(x) - returns the atan (arctan) of x (x is in radians)
 Example:
    > SELECT atan(0) FROM src LIMIT 1;
   0
+Function class:org.apache.hadoop.hive.ql.udf.UDFAtan
+Function type:BUILTIN
 PREHOOK: query: SELECT atan(null)
 FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
@@ -46,6 +48,8 @@ atan(x) - returns the atan (arctan) of x (x is in radians)
 Example:
    > SELECT atan(0) FROM src LIMIT 1;
   0
+Function class:org.apache.hadoop.hive.ql.udf.UDFAtan
+Function type:BUILTIN
 PREHOOK: query: SELECT atan(null)
 FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_avg.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_avg.q.out b/ql/src/test/results/clientpositive/udf_avg.q.out
index 7ac139f..5e1d4b7 100644
--- a/ql/src/test/results/clientpositive/udf_avg.q.out
+++ b/ql/src/test/results/clientpositive/udf_avg.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED avg
 POSTHOOK: type: DESCFUNCTION
 avg(x) - Returns the mean of a set of numbers
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFAverage
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_between.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_between.q.out b/ql/src/test/results/clientpositive/udf_between.q.out
index bd9b4bb..5b01554 100644
--- a/ql/src/test/results/clientpositive/udf_between.q.out
+++ b/ql/src/test/results/clientpositive/udf_between.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: describe function extended between
 POSTHOOK: type: DESCFUNCTION
 between a [NOT] BETWEEN b AND c - evaluate if a is [not] in between b and c
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFBetween
+Function type:BUILTIN
 PREHOOK: query: explain SELECT * FROM src where key + 100 between (150 + -50) AND (150 + 50) LIMIT 20
 PREHOOK: type: QUERY
 POSTHOOK: query: explain SELECT * FROM src where key + 100 between (150 + -50) AND (150 + 50) LIMIT 20

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_bigint.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_bigint.q.out b/ql/src/test/results/clientpositive/udf_bigint.q.out
index 36f809a..5a7430e 100644
--- a/ql/src/test/results/clientpositive/udf_bigint.q.out
+++ b/ql/src/test/results/clientpositive/udf_bigint.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED bigint
 POSTHOOK: type: DESCFUNCTION
 There is no documentation for function 'bigint'
+Function class:org.apache.hadoop.hive.ql.udf.UDFToLong
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_bin.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_bin.q.out b/ql/src/test/results/clientpositive/udf_bin.q.out
index e83df28..c34a549 100644
--- a/ql/src/test/results/clientpositive/udf_bin.q.out
+++ b/ql/src/test/results/clientpositive/udf_bin.q.out
@@ -12,6 +12,8 @@ n is a BIGINT. Returns NULL if n is NULL.
 Example:
   > SELECT bin(13) FROM src LIMIT 1
   '1101'
+Function class:org.apache.hadoop.hive.ql.udf.UDFBin
+Function type:BUILTIN
 PREHOOK: query: SELECT
   bin(1),
   bin(0),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_bitwise_and.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_bitwise_and.q.out b/ql/src/test/results/clientpositive/udf_bitwise_and.q.out
index bfd2253..bab2518 100644
--- a/ql/src/test/results/clientpositive/udf_bitwise_and.q.out
+++ b/ql/src/test/results/clientpositive/udf_bitwise_and.q.out
@@ -11,3 +11,5 @@ a & b - Bitwise and
 Example:
   > SELECT 3 & 5 FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.UDFOPBitAnd
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_bitwise_not.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_bitwise_not.q.out b/ql/src/test/results/clientpositive/udf_bitwise_not.q.out
index 1da99fc..f5e6156 100644
--- a/ql/src/test/results/clientpositive/udf_bitwise_not.q.out
+++ b/ql/src/test/results/clientpositive/udf_bitwise_not.q.out
@@ -11,3 +11,5 @@ POSTHOOK: type: DESCFUNCTION
 Example:
   > SELECT ~ 0 FROM src LIMIT 1;
   -1
+Function class:org.apache.hadoop.hive.ql.udf.UDFOPBitNot
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_bitwise_or.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_bitwise_or.q.out b/ql/src/test/results/clientpositive/udf_bitwise_or.q.out
index d3e7237..71debdb 100644
--- a/ql/src/test/results/clientpositive/udf_bitwise_or.q.out
+++ b/ql/src/test/results/clientpositive/udf_bitwise_or.q.out
@@ -11,3 +11,5 @@ a | b - Bitwise or
 Example:
   > SELECT 3 | 5 FROM src LIMIT 1;
   7
+Function class:org.apache.hadoop.hive.ql.udf.UDFOPBitOr
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_bitwise_shiftleft.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_bitwise_shiftleft.q.out b/ql/src/test/results/clientpositive/udf_bitwise_shiftleft.q.out
index 62d41a6..faea544 100644
--- a/ql/src/test/results/clientpositive/udf_bitwise_shiftleft.q.out
+++ b/ql/src/test/results/clientpositive/udf_bitwise_shiftleft.q.out
@@ -12,6 +12,8 @@ Returns int for tinyint, smallint and int a. Returns bigint for bigint a.
 Example:
   > SELECT shiftleft(2, 1);
   4
+Function class:org.apache.hadoop.hive.ql.udf.UDFOPBitShiftLeft
+Function type:BUILTIN
 PREHOOK: query: explain select shiftleft(4, 1)
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select shiftleft(4, 1)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_bitwise_shiftright.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_bitwise_shiftright.q.out b/ql/src/test/results/clientpositive/udf_bitwise_shiftright.q.out
index 25c8d86..1d297c1 100644
--- a/ql/src/test/results/clientpositive/udf_bitwise_shiftright.q.out
+++ b/ql/src/test/results/clientpositive/udf_bitwise_shiftright.q.out
@@ -12,6 +12,8 @@ Returns int for tinyint, smallint and int a. Returns bigint for bigint a.
 Example:
   > SELECT shiftright(4, 1);
   2
+Function class:org.apache.hadoop.hive.ql.udf.UDFOPBitShiftRight
+Function type:BUILTIN
 PREHOOK: query: explain select shiftright(4, 1)
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select shiftright(4, 1)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_bitwise_shiftrightunsigned.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_bitwise_shiftrightunsigned.q.out b/ql/src/test/results/clientpositive/udf_bitwise_shiftrightunsigned.q.out
index 5583fb2..8f194f0 100644
--- a/ql/src/test/results/clientpositive/udf_bitwise_shiftrightunsigned.q.out
+++ b/ql/src/test/results/clientpositive/udf_bitwise_shiftrightunsigned.q.out
@@ -12,6 +12,8 @@ Returns int for tinyint, smallint and int a. Returns bigint for bigint a.
 Example:
   > SELECT shiftrightunsigned(4, 1);
   2
+Function class:org.apache.hadoop.hive.ql.udf.UDFOPBitShiftRightUnsigned
+Function type:BUILTIN
 PREHOOK: query: explain select shiftrightunsigned(4, 1)
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select shiftrightunsigned(4, 1)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_bitwise_xor.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_bitwise_xor.q.out b/ql/src/test/results/clientpositive/udf_bitwise_xor.q.out
index 72f721e..4a24db3 100644
--- a/ql/src/test/results/clientpositive/udf_bitwise_xor.q.out
+++ b/ql/src/test/results/clientpositive/udf_bitwise_xor.q.out
@@ -11,3 +11,5 @@ a ^ b - Bitwise exclusive or
 Example:
   > SELECT 3 ^ 5 FROM src LIMIT 1;
   2
+Function class:org.apache.hadoop.hive.ql.udf.UDFOPBitXor
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_boolean.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_boolean.q.out b/ql/src/test/results/clientpositive/udf_boolean.q.out
index d4f299c..8d66d5c 100644
--- a/ql/src/test/results/clientpositive/udf_boolean.q.out
+++ b/ql/src/test/results/clientpositive/udf_boolean.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED boolean
 POSTHOOK: type: DESCFUNCTION
 There is no documentation for function 'boolean'
+Function class:org.apache.hadoop.hive.ql.udf.UDFToBoolean
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_bround.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_bround.q.out b/ql/src/test/results/clientpositive/udf_bround.q.out
index fd6354d..d3cd0d4 100644
--- a/ql/src/test/results/clientpositive/udf_bround.q.out
+++ b/ql/src/test/results/clientpositive/udf_bround.q.out
@@ -12,6 +12,8 @@ Banker's rounding. The value is rounded to the nearest even number. Also known a
 Example:
   > SELECT bround(12.25, 1);
   12.2
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFBRound
+Function type:BUILTIN
 PREHOOK: query: select
 bround(2.5),
 bround(3.5),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_case.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_case.q.out b/ql/src/test/results/clientpositive/udf_case.q.out
index efa58a8..3933496 100644
--- a/ql/src/test/results/clientpositive/udf_case.q.out
+++ b/ql/src/test/results/clientpositive/udf_case.q.out
@@ -20,6 +20,8 @@ Example:
    ELSE Asia-Pac
  END
  FROM emp_details
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFCase
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT CASE 1
         WHEN 1 THEN 2

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_cbrt.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_cbrt.q.out b/ql/src/test/results/clientpositive/udf_cbrt.q.out
index 5366d2e..de90a12 100644
--- a/ql/src/test/results/clientpositive/udf_cbrt.q.out
+++ b/ql/src/test/results/clientpositive/udf_cbrt.q.out
@@ -11,6 +11,8 @@ cbrt(double) - Returns the cube root of a double value.
 Example:
  > SELECT cbrt(27.0);
  3.0
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFCbrt
+Function type:BUILTIN
 PREHOOK: query: explain select cbrt(27.0)
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select cbrt(27.0)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_ceil.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_ceil.q.out b/ql/src/test/results/clientpositive/udf_ceil.q.out
index 0cb7eee..a62d2db 100644
--- a/ql/src/test/results/clientpositive/udf_ceil.q.out
+++ b/ql/src/test/results/clientpositive/udf_ceil.q.out
@@ -14,3 +14,5 @@ Example:
   0
   > SELECT ceil(5) FROM src LIMIT 1;
   5
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFCeil
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_ceiling.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_ceiling.q.out b/ql/src/test/results/clientpositive/udf_ceiling.q.out
index 6e89322..1c0fbd1 100644
--- a/ql/src/test/results/clientpositive/udf_ceiling.q.out
+++ b/ql/src/test/results/clientpositive/udf_ceiling.q.out
@@ -14,3 +14,5 @@ Example:
   0
   > SELECT ceiling(5) FROM src LIMIT 1;
   5
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFCeil
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_chr.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_chr.q.out b/ql/src/test/results/clientpositive/udf_chr.q.out
index a662e70..98ab3c3 100644
Binary files a/ql/src/test/results/clientpositive/udf_chr.q.out and b/ql/src/test/results/clientpositive/udf_chr.q.out differ

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_coalesce.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_coalesce.q.out b/ql/src/test/results/clientpositive/udf_coalesce.q.out
index 81e85fc..361d173 100644
--- a/ql/src/test/results/clientpositive/udf_coalesce.q.out
+++ b/ql/src/test/results/clientpositive/udf_coalesce.q.out
@@ -11,6 +11,8 @@ coalesce(a1, a2, ...) - Returns the first non-null argument
 Example:
   > SELECT coalesce(NULL, 1, NULL) FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFCoalesce
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT COALESCE(1),
        COALESCE(1, 2),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_concat.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_concat.q.out b/ql/src/test/results/clientpositive/udf_concat.q.out
index 6cc4c0f..00b87b4 100644
--- a/ql/src/test/results/clientpositive/udf_concat.q.out
+++ b/ql/src/test/results/clientpositive/udf_concat.q.out
@@ -12,6 +12,8 @@ Returns NULL if any argument is NULL.
 Example:
   > SELECT concat('abc', 'def') FROM src LIMIT 1;
   'abcdef'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFConcat
+Function type:BUILTIN
 PREHOOK: query: SELECT
   concat('a', 'b'),
   concat('a', 'b', 'c'),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_concat_ws.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_concat_ws.q.out b/ql/src/test/results/clientpositive/udf_concat_ws.q.out
index ea2d703..09a2ed4 100644
--- a/ql/src/test/results/clientpositive/udf_concat_ws.q.out
+++ b/ql/src/test/results/clientpositive/udf_concat_ws.q.out
@@ -11,6 +11,8 @@ concat_ws(separator, [string | array(string)]+) - returns the concatenation of t
 Example:
   > SELECT concat_ws('.', 'www', array('facebook', 'com')) FROM src LIMIT 1;
   'www.facebook.com'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFConcatWS
+Function type:BUILTIN
 PREHOOK: query: CREATE TABLE dest1(c1 STRING, c2 STRING, c3 STRING)
 PREHOOK: type: CREATETABLE
 PREHOOK: Output: database:default

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_conv.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_conv.q.out b/ql/src/test/results/clientpositive/udf_conv.q.out
index 09b256d..036bbfb 100644
--- a/ql/src/test/results/clientpositive/udf_conv.q.out
+++ b/ql/src/test/results/clientpositive/udf_conv.q.out
@@ -14,6 +14,8 @@ Example:
   '4'
   > SELECT conv(-10, 16, -10) FROM src LIMIT 1;
   '16'
+Function class:org.apache.hadoop.hive.ql.udf.UDFConv
+Function type:BUILTIN
 PREHOOK: query: -- conv must work on both strings and integers up to 64-bit precision
 
 -- Some simple conversions to test different bases

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_cos.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_cos.q.out b/ql/src/test/results/clientpositive/udf_cos.q.out
index 02ba24e..5b7560a 100644
--- a/ql/src/test/results/clientpositive/udf_cos.q.out
+++ b/ql/src/test/results/clientpositive/udf_cos.q.out
@@ -11,6 +11,8 @@ cos(x) - returns the cosine of x (x is in radians)
 Example:
    > SELECT cos(0) FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.UDFCos
+Function type:BUILTIN
 PREHOOK: query: SELECT cos(null)
 FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_count.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_count.q.out b/ql/src/test/results/clientpositive/udf_count.q.out
index 4c5c4ec..f60ad04 100644
--- a/ql/src/test/results/clientpositive/udf_count.q.out
+++ b/ql/src/test/results/clientpositive/udf_count.q.out
@@ -12,6 +12,8 @@ POSTHOOK: type: DESCFUNCTION
 count(*) - Returns the total number of retrieved rows, including rows containing NULL values.
 count(expr) - Returns the number of rows for which the supplied expression is non-NULL.
 count(DISTINCT expr[, expr...]) - Returns the number of rows for which the supplied expression(s) are unique and non-NULL.
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFCount
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN SELECT count(key) FROM src
 PREHOOK: type: QUERY
 POSTHOOK: query: EXPLAIN SELECT count(key) FROM src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_crc32.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_crc32.q.out b/ql/src/test/results/clientpositive/udf_crc32.q.out
index 59fba15..c40d670 100644
--- a/ql/src/test/results/clientpositive/udf_crc32.q.out
+++ b/ql/src/test/results/clientpositive/udf_crc32.q.out
@@ -13,6 +13,8 @@ Example:
   2743272264
   > SELECT crc32(binary('ABC'));
   2743272264
+Function class:org.apache.hadoop.hive.ql.udf.UDFCrc32
+Function type:BUILTIN
 PREHOOK: query: explain select crc32('ABC')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select crc32('ABC')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_current_user.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_current_user.q.out b/ql/src/test/results/clientpositive/udf_current_user.q.out
index 8262462..86ba8f9 100644
--- a/ql/src/test/results/clientpositive/udf_current_user.q.out
+++ b/ql/src/test/results/clientpositive/udf_current_user.q.out
@@ -9,6 +9,8 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED current_user
 POSTHOOK: type: DESCFUNCTION
 current_user() - Returns current user name
 SessionState UserFromAuthenticator
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFCurrentUser
+Function type:BUILTIN
 PREHOOK: query: select current_user()
 FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_date_add.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_date_add.q.out b/ql/src/test/results/clientpositive/udf_date_add.q.out
index 12ce15b..54d9022 100644
--- a/ql/src/test/results/clientpositive/udf_date_add.q.out
+++ b/ql/src/test/results/clientpositive/udf_date_add.q.out
@@ -12,6 +12,8 @@ start_date is a string in the format 'yyyy-MM-dd HH:mm:ss' or 'yyyy-MM-dd'. num_
 Example:
    > SELECT date_add('2009-07-30', 1) FROM src LIMIT 1;
   '2009-07-31'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFDateAdd
+Function type:BUILTIN
 PREHOOK: query: -- Test different numeric data types for date_add
 SELECT date_add('1900-01-01', cast(10 as tinyint)),
        date_add('1900-01-01', cast(10 as smallint)),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_date_format.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_date_format.q.out b/ql/src/test/results/clientpositive/udf_date_format.q.out
index 9b39ae4..08eb469 100644
--- a/ql/src/test/results/clientpositive/udf_date_format.q.out
+++ b/ql/src/test/results/clientpositive/udf_date_format.q.out
@@ -11,6 +11,8 @@ date_format(date/timestamp/string, fmt) - converts a date/timestamp/string to a
 Supported formats are SimpleDateFormat formats - https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html. Second argument fmt should be constant.
 Example: > SELECT date_format('2015-04-08', 'y');
  '2015'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFDateFormat
+Function type:BUILTIN
 PREHOOK: query: explain select date_format('2015-04-08', 'EEEE')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select date_format('2015-04-08', 'EEEE')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_date_sub.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_date_sub.q.out b/ql/src/test/results/clientpositive/udf_date_sub.q.out
index 2ee1ee5..ac3b4aa 100644
--- a/ql/src/test/results/clientpositive/udf_date_sub.q.out
+++ b/ql/src/test/results/clientpositive/udf_date_sub.q.out
@@ -12,6 +12,8 @@ start_date is a string in the format 'yyyy-MM-dd HH:mm:ss' or 'yyyy-MM-dd'. num_
 Example:
    > SELECT date_sub('2009-07-30', 1) FROM src LIMIT 1;
   '2009-07-29'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFDateSub
+Function type:BUILTIN
 PREHOOK: query: -- Test different numeric data types for date_add
 SELECT date_sub('1900-01-01', cast(10 as tinyint)),
        date_sub('1900-01-01', cast(10 as smallint)),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_datediff.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_datediff.q.out b/ql/src/test/results/clientpositive/udf_datediff.q.out
index 86f30f6..b78d902 100644
--- a/ql/src/test/results/clientpositive/udf_datediff.q.out
+++ b/ql/src/test/results/clientpositive/udf_datediff.q.out
@@ -12,3 +12,5 @@ date1 and date2 are strings in the format 'yyyy-MM-dd HH:mm:ss' or 'yyyy-MM-dd'.
 Example:
    > SELECT datediff('2009-07-30', '2009-07-31') FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFDateDiff
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_day.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_day.q.out b/ql/src/test/results/clientpositive/udf_day.q.out
index 4131531..48e8161 100644
--- a/ql/src/test/results/clientpositive/udf_day.q.out
+++ b/ql/src/test/results/clientpositive/udf_day.q.out
@@ -16,3 +16,5 @@ param can be one of:
 4. A day-time interval valueExample:
    > SELECT day('2009-07-30') FROM src LIMIT 1;
   30
+Function class:org.apache.hadoop.hive.ql.udf.UDFDayOfMonth
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_dayofmonth.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_dayofmonth.q.out b/ql/src/test/results/clientpositive/udf_dayofmonth.q.out
index e31154e..3f12c01 100644
--- a/ql/src/test/results/clientpositive/udf_dayofmonth.q.out
+++ b/ql/src/test/results/clientpositive/udf_dayofmonth.q.out
@@ -16,3 +16,5 @@ param can be one of:
 4. A day-time interval valueExample:
    > SELECT dayofmonth('2009-07-30') FROM src LIMIT 1;
   30
+Function class:org.apache.hadoop.hive.ql.udf.UDFDayOfMonth
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_decode.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_decode.q.out b/ql/src/test/results/clientpositive/udf_decode.q.out
index a3608d1..d381544 100644
--- a/ql/src/test/results/clientpositive/udf_decode.q.out
+++ b/ql/src/test/results/clientpositive/udf_decode.q.out
@@ -11,6 +11,8 @@ decode(bin, str) - Decode the first argument using the second argument character
 Possible options for the character set are 'US-ASCII', 'ISO-8859-1',
 'UTF-8', 'UTF-16BE', 'UTF-16LE', and 'UTF-16'. If either argument
 is null, the result will also be null
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFDecode
+Function type:BUILTIN
 PREHOOK: query: explain select decode(binary('TestDecode1'), 'UTF-8')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select decode(binary('TestDecode1'), 'UTF-8')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_degrees.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_degrees.q.out b/ql/src/test/results/clientpositive/udf_degrees.q.out
index 2a7408e..867663b 100644
--- a/ql/src/test/results/clientpositive/udf_degrees.q.out
+++ b/ql/src/test/results/clientpositive/udf_degrees.q.out
@@ -45,6 +45,8 @@ Example:
   > SELECT degrees(30) FROM src LIMIT 1;
   -1
 
+Function class:org.apache.hadoop.hive.ql.udf.UDFDegrees
+Function type:BUILTIN
 PREHOOK: query: explain 
 select degrees(PI()) FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
@@ -92,3 +94,5 @@ Example:
   > SELECT degrees(30) FROM src LIMIT 1;
   -1
 
+Function class:org.apache.hadoop.hive.ql.udf.UDFDegrees
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_div.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_div.q.out b/ql/src/test/results/clientpositive/udf_div.q.out
index d200e0c..1ccfca4 100644
--- a/ql/src/test/results/clientpositive/udf_div.q.out
+++ b/ql/src/test/results/clientpositive/udf_div.q.out
@@ -11,6 +11,8 @@ a div b - Divide a by b rounded to the long integer
 Example:
   > SELECT 3 div 2 FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.UDFOPLongDivide
+Function type:BUILTIN
 PREHOOK: query: SELECT 3 DIV 2 FROM SRC tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_divide.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_divide.q.out b/ql/src/test/results/clientpositive/udf_divide.q.out
index e0594cf..b22122a 100644
--- a/ql/src/test/results/clientpositive/udf_divide.q.out
+++ b/ql/src/test/results/clientpositive/udf_divide.q.out
@@ -11,6 +11,8 @@ a / b - Divide a by b
 Example:
   > SELECT 3 / 2 FROM src LIMIT 1;
   1.5
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPDivide
+Function type:BUILTIN
 PREHOOK: query: SELECT 3 / 2 FROM SRC tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_double.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_double.q.out b/ql/src/test/results/clientpositive/udf_double.q.out
index 857bbbb..f34efca 100644
--- a/ql/src/test/results/clientpositive/udf_double.q.out
+++ b/ql/src/test/results/clientpositive/udf_double.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED double
 POSTHOOK: type: DESCFUNCTION
 There is no documentation for function 'double'
+Function class:org.apache.hadoop.hive.ql.udf.UDFToDouble
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_elt.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_elt.q.out b/ql/src/test/results/clientpositive/udf_elt.q.out
index 8edfa6d..792a1e8 100644
--- a/ql/src/test/results/clientpositive/udf_elt.q.out
+++ b/ql/src/test/results/clientpositive/udf_elt.q.out
@@ -11,6 +11,8 @@ elt(n, str1, str2, ...) - returns the n-th string
 Example:
   > SELECT elt(1, 'face', 'book') FROM src LIMIT 1;
   'face'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFElt
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT elt(2, 'abc', 'defg'),
        elt(3, 'aa', 'bb', 'cc', 'dd', 'ee', 'ff', 'gg'),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_equal.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_equal.q.out b/ql/src/test/results/clientpositive/udf_equal.q.out
index 0aad354..52bd843 100644
--- a/ql/src/test/results/clientpositive/udf_equal.q.out
+++ b/ql/src/test/results/clientpositive/udf_equal.q.out
@@ -9,6 +9,8 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED =
 POSTHOOK: type: DESCFUNCTION
 a = b - Returns TRUE if a equals b and false otherwise
 Synonyms: ==
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPEqual
+Function type:BUILTIN
 PREHOOK: query: DESCRIBE FUNCTION ==
 PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION ==
@@ -20,6 +22,8 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED ==
 POSTHOOK: type: DESCFUNCTION
 a == b - Returns TRUE if a equals b and false otherwise
 Synonyms: =
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPEqual
+Function type:BUILTIN
 PREHOOK: query: SELECT true=false, false=true, false=false, true=true, NULL=NULL, true=NULL, NULL=true, false=NULL, NULL=false FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src
@@ -39,6 +43,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED <=>
 POSTHOOK: type: DESCFUNCTION
 a <=> b - Returns same result with EQUAL(=) operator for non-null operands, but returns TRUE if both are NULL, FALSE if one of the them is NULL
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPEqualNS
+Function type:BUILTIN
 PREHOOK: query: SELECT true<=>false, false<=>true, false<=>false, true<=>true, NULL<=>NULL, true<=>NULL, NULL<=>true, false<=>NULL, NULL<=>false FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_exp.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_exp.q.out b/ql/src/test/results/clientpositive/udf_exp.q.out
index ef97ac5..b2042ba 100644
--- a/ql/src/test/results/clientpositive/udf_exp.q.out
+++ b/ql/src/test/results/clientpositive/udf_exp.q.out
@@ -11,3 +11,5 @@ exp(x) - Returns e to the power of x
 Example:
    > SELECT exp(0) FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.UDFExp
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_explode.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_explode.q.out b/ql/src/test/results/clientpositive/udf_explode.q.out
index bd68e96..0a3ab11 100644
--- a/ql/src/test/results/clientpositive/udf_explode.q.out
+++ b/ql/src/test/results/clientpositive/udf_explode.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED explode
 POSTHOOK: type: DESCFUNCTION
 explode(a) - separates the elements of array a into multiple rows, or the elements of a map into multiple rows and columns 
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDTFExplode
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN EXTENDED SELECT explode(array(1,2,3)) AS myCol FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 POSTHOOK: query: EXPLAIN EXTENDED SELECT explode(array(1,2,3)) AS myCol FROM src tablesample (1 rows)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_factorial.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_factorial.q.out b/ql/src/test/results/clientpositive/udf_factorial.q.out
index 7cdf42c..634ed0e 100644
--- a/ql/src/test/results/clientpositive/udf_factorial.q.out
+++ b/ql/src/test/results/clientpositive/udf_factorial.q.out
@@ -12,6 +12,8 @@ Returns null if n is out of [0..20] range.
 Example:
  > SELECT factorial(5);
  120
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFFactorial
+Function type:BUILTIN
 PREHOOK: query: explain select factorial(5)
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select factorial(5)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_field.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_field.q.out b/ql/src/test/results/clientpositive/udf_field.q.out
index 8786608..186cdd9 100644
--- a/ql/src/test/results/clientpositive/udf_field.q.out
+++ b/ql/src/test/results/clientpositive/udf_field.q.out
@@ -9,6 +9,8 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED field
 POSTHOOK: type: DESCFUNCTION
 field(str, str1, str2, ...) - returns the index of str in the str1,str2,... list or 0 if not found
 All primitive types are supported, arguments are compared using str.equals(x). If str is NULL, the return value is 0.
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFField
+Function type:BUILTIN
 PREHOOK: query: SELECT
   field("x", "a", "b", "c", "d"),
   field(NULL, "a", "b", "c", "d"),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_find_in_set.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_find_in_set.q.out b/ql/src/test/results/clientpositive/udf_find_in_set.q.out
index 9d01f7b..79ce332 100644
--- a/ql/src/test/results/clientpositive/udf_find_in_set.q.out
+++ b/ql/src/test/results/clientpositive/udf_find_in_set.q.out
@@ -14,6 +14,8 @@ Example:
   > SELECT * FROM src1 WHERE NOT find_in_set(key,'311,128,345,956')=0;
   311  val_311
   128
+Function class:org.apache.hadoop.hive.ql.udf.UDFFindInSet
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 FROM src1 SELECT find_in_set(src1.key,concat(src1.key,',',src1.value))
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_float.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_float.q.out b/ql/src/test/results/clientpositive/udf_float.q.out
index bb034f3..d151329 100644
--- a/ql/src/test/results/clientpositive/udf_float.q.out
+++ b/ql/src/test/results/clientpositive/udf_float.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED float
 POSTHOOK: type: DESCFUNCTION
 There is no documentation for function 'float'
+Function class:org.apache.hadoop.hive.ql.udf.UDFToFloat
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_floor.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_floor.q.out b/ql/src/test/results/clientpositive/udf_floor.q.out
index ccd0c00..4e5d7e8 100644
--- a/ql/src/test/results/clientpositive/udf_floor.q.out
+++ b/ql/src/test/results/clientpositive/udf_floor.q.out
@@ -13,3 +13,5 @@ Example:
   -1
   > SELECT floor(5) FROM src LIMIT 1;
   5
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFFloor
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_format_number.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_format_number.q.out b/ql/src/test/results/clientpositive/udf_format_number.q.out
index a860f9e..602f78b 100644
--- a/ql/src/test/results/clientpositive/udf_format_number.q.out
+++ b/ql/src/test/results/clientpositive/udf_format_number.q.out
@@ -23,6 +23,8 @@ Example:
   '12,332.1235'
   > SELECT format_number(12332.123456, '##################.###') FROM src LIMIT 1;
   '12332.123'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFFormatNumber
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT format_number(12332.123456, 4),
     format_number(12332.1,4),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_from_unixtime.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_from_unixtime.q.out b/ql/src/test/results/clientpositive/udf_from_unixtime.q.out
index 605df1a..87af1f7 100644
--- a/ql/src/test/results/clientpositive/udf_from_unixtime.q.out
+++ b/ql/src/test/results/clientpositive/udf_from_unixtime.q.out
@@ -11,3 +11,5 @@ from_unixtime(unix_time, format) - returns unix_time in the specified format
 Example:
   > SELECT from_unixtime(0, 'yyyy-MM-dd HH:mm:ss') FROM src LIMIT 1;
   '1970-01-01 00:00:00'
+Function class:org.apache.hadoop.hive.ql.udf.UDFFromUnixTime
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_from_utc_timestamp.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_from_utc_timestamp.q.out b/ql/src/test/results/clientpositive/udf_from_utc_timestamp.q.out
index be2cb1a..1f91fbf 100644
--- a/ql/src/test/results/clientpositive/udf_from_utc_timestamp.q.out
+++ b/ql/src/test/results/clientpositive/udf_from_utc_timestamp.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESC FUNCTION EXTENDED from_utc_timestamp
 POSTHOOK: type: DESCFUNCTION
 from_utc_timestamp(timestamp, string timezone) - Assumes given timestamp is UTC and converts to given timezone (as of Hive 0.8.0)
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFFromUtcTimestamp
+Function type:BUILTIN
 PREHOOK: query: explain select from_utc_timestamp('2012-02-11 10:30:00', 'PST')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select from_utc_timestamp('2012-02-11 10:30:00', 'PST')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_get_json_object.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_get_json_object.q.out b/ql/src/test/results/clientpositive/udf_get_json_object.q.out
index fb95700..0ce9608 100644
--- a/ql/src/test/results/clientpositive/udf_get_json_object.q.out
+++ b/ql/src/test/results/clientpositive/udf_get_json_object.q.out
@@ -23,6 +23,8 @@ Syntax not supported that's worth noticing:
   [,] : Union operator
   [start:end:step] : array slice operator
 
+Function class:org.apache.hadoop.hive.ql.udf.UDFJson
+Function type:BUILTIN
 PREHOOK: query: CREATE TABLE dest1(c1 STRING) STORED AS TEXTFILE
 PREHOOK: type: CREATETABLE
 PREHOOK: Output: database:default

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_greaterthan.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_greaterthan.q.out b/ql/src/test/results/clientpositive/udf_greaterthan.q.out
index bf31f31..c8d0e81 100644
--- a/ql/src/test/results/clientpositive/udf_greaterthan.q.out
+++ b/ql/src/test/results/clientpositive/udf_greaterthan.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED >
 POSTHOOK: type: DESCFUNCTION
 a > b - Returns TRUE if a is greater than b
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPGreaterThan
+Function type:BUILTIN
 PREHOOK: query: SELECT true>false, false>true, false>false, true>true FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_greaterthanorequal.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_greaterthanorequal.q.out b/ql/src/test/results/clientpositive/udf_greaterthanorequal.q.out
index 86333cd..5d21d81 100644
--- a/ql/src/test/results/clientpositive/udf_greaterthanorequal.q.out
+++ b/ql/src/test/results/clientpositive/udf_greaterthanorequal.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED >=
 POSTHOOK: type: DESCFUNCTION
 a >= b - Returns TRUE if a is not smaller than b
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPEqualOrGreaterThan
+Function type:BUILTIN
 PREHOOK: query: SELECT true>=false, false>=true, false>=false, true>=true FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_greatest.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_greatest.q.out b/ql/src/test/results/clientpositive/udf_greatest.q.out
index 7ba3758..f5be6db 100644
--- a/ql/src/test/results/clientpositive/udf_greatest.q.out
+++ b/ql/src/test/results/clientpositive/udf_greatest.q.out
@@ -11,6 +11,8 @@ greatest(v1, v2, ...) - Returns the greatest value in a list of values
 Example:
   > SELECT greatest(2, 3, 1) FROM src LIMIT 1;
   3
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFGreatest
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT GREATEST('a', 'b', 'c'),
        GREATEST('C', 'a', 'B'),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_hash.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_hash.q.out b/ql/src/test/results/clientpositive/udf_hash.q.out
index 5f9ca16..94b0bde 100644
--- a/ql/src/test/results/clientpositive/udf_hash.q.out
+++ b/ql/src/test/results/clientpositive/udf_hash.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED hash
 POSTHOOK: type: DESCFUNCTION
 hash(a1, a2, ...) - Returns a hash value of the arguments
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFHash
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT hash(CAST(1 AS TINYINT)), hash(CAST(2 AS SMALLINT)),
        hash(3), hash(CAST('123456789012' AS BIGINT)),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_hex.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_hex.q.out b/ql/src/test/results/clientpositive/udf_hex.q.out
index 540b361..87b6e11 100644
--- a/ql/src/test/results/clientpositive/udf_hex.q.out
+++ b/ql/src/test/results/clientpositive/udf_hex.q.out
@@ -15,6 +15,8 @@ Example:
   'H1'
   > SELECT hex('Facebook') FROM src LIMIT 1;
   '46616365626F6F6B'
+Function class:org.apache.hadoop.hive.ql.udf.UDFHex
+Function type:BUILTIN
 PREHOOK: query: -- If the argument is a string, hex should return a string containing two hex
 -- digits for every character in the input.
 SELECT

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_hour.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_hour.q.out b/ql/src/test/results/clientpositive/udf_hour.q.out
index cf7f78b..d37c079 100644
--- a/ql/src/test/results/clientpositive/udf_hour.q.out
+++ b/ql/src/test/results/clientpositive/udf_hour.q.out
@@ -16,6 +16,8 @@ param can be one of:
   12
   > SELECT hour('12:58:59') FROM src LIMIT 1;
   12
+Function class:org.apache.hadoop.hive.ql.udf.UDFHour
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT hour('2009-08-07 13:14:15'), hour('13:14:15'), hour('2009-08-07')
 FROM src WHERE key = 86


[2/3] hive git commit: HIVE-15383: Add additional info to 'desc function extended' output (Aihua Xu, reviewed by Yongzhi Chen)

Posted by ai...@apache.org.
http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_if.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_if.q.out b/ql/src/test/results/clientpositive/udf_if.q.out
index 1114b69..5364509 100644
--- a/ql/src/test/results/clientpositive/udf_if.q.out
+++ b/ql/src/test/results/clientpositive/udf_if.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED if
 POSTHOOK: type: DESCFUNCTION
 IF(expr1,expr2,expr3) - If expr1 is TRUE (expr1 <> 0 and expr1 <> NULL) then IF() returns expr2; otherwise it returns expr3. IF() returns a numeric or string value, depending on the context in which it is used.
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFIf
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT IF(TRUE, 1, 2) AS COL1,
        IF(FALSE, CAST(NULL AS STRING), CAST(1 AS STRING)) AS COL2,

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_initcap.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_initcap.q.out b/ql/src/test/results/clientpositive/udf_initcap.q.out
index 179e544..1abd004 100644
--- a/ql/src/test/results/clientpositive/udf_initcap.q.out
+++ b/ql/src/test/results/clientpositive/udf_initcap.q.out
@@ -11,3 +11,5 @@ initcap(str) - Returns str, with the first letter of each word in uppercase, all
 Example:
  > SELECT initcap('tHe soap') FROM src LIMIT 1;
  'The Soap'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFInitCap
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_instr.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_instr.q.out b/ql/src/test/results/clientpositive/udf_instr.q.out
index 50e65a1..e5d6a34 100644
--- a/ql/src/test/results/clientpositive/udf_instr.q.out
+++ b/ql/src/test/results/clientpositive/udf_instr.q.out
@@ -11,6 +11,8 @@ instr(str, substr) - Returns the index of the first occurance of substr in str
 Example:
   > SELECT instr('Facebook', 'boo') FROM src LIMIT 1;
   5
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFInstr
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT instr('abcd', 'abc'),
        instr('abcabc', 'ccc'),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_int.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_int.q.out b/ql/src/test/results/clientpositive/udf_int.q.out
index 2a268c1..c954e58 100644
--- a/ql/src/test/results/clientpositive/udf_int.q.out
+++ b/ql/src/test/results/clientpositive/udf_int.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED int
 POSTHOOK: type: DESCFUNCTION
 There is no documentation for function 'int'
+Function class:org.apache.hadoop.hive.ql.udf.UDFToInteger
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_isnotnull.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_isnotnull.q.out b/ql/src/test/results/clientpositive/udf_isnotnull.q.out
index a8162aa..156f94b 100644
--- a/ql/src/test/results/clientpositive/udf_isnotnull.q.out
+++ b/ql/src/test/results/clientpositive/udf_isnotnull.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED isnotnull
 POSTHOOK: type: DESCFUNCTION
 isnotnull a - Returns true if a is not NULL and false otherwise
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNotNull
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_isnull.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_isnull.q.out b/ql/src/test/results/clientpositive/udf_isnull.q.out
index f450b35..082c181 100644
--- a/ql/src/test/results/clientpositive/udf_isnull.q.out
+++ b/ql/src/test/results/clientpositive/udf_isnull.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED isnull
 POSTHOOK: type: DESCFUNCTION
 isnull a - Returns true if a is NULL and false otherwise
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNull
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_isnull_isnotnull.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_isnull_isnotnull.q.out b/ql/src/test/results/clientpositive/udf_isnull_isnotnull.q.out
index 9253d6c..fff6937 100644
--- a/ql/src/test/results/clientpositive/udf_isnull_isnotnull.q.out
+++ b/ql/src/test/results/clientpositive/udf_isnull_isnotnull.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED isnull
 POSTHOOK: type: DESCFUNCTION
 isnull a - Returns true if a is NULL and false otherwise
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNull
+Function type:BUILTIN
 PREHOOK: query: DESCRIBE FUNCTION isnotnull
 PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION isnotnull
@@ -18,6 +20,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED isnotnull
 POSTHOOK: type: DESCFUNCTION
 isnotnull a - Returns true if a is not NULL and false otherwise
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNotNull
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT NULL IS NULL,
        1 IS NOT NULL, 

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_java_method.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_java_method.q.out b/ql/src/test/results/clientpositive/udf_java_method.q.out
index 1f232fc..0f42524 100644
--- a/ql/src/test/results/clientpositive/udf_java_method.q.out
+++ b/ql/src/test/results/clientpositive/udf_java_method.q.out
@@ -11,6 +11,8 @@ java_method(class,method[,arg1[,arg2..]]) calls method with reflection
 Synonyms: reflect
 Use this UDF to call Java methods by matching the argument signature
 
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFReflect
+Function type:BUILTIN
 PREHOOK: query: -- java_method() is a synonym for reflect()
 
 EXPLAIN EXTENDED

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_last_day.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_last_day.q.out b/ql/src/test/results/clientpositive/udf_last_day.q.out
index d1070cb..1cbc390 100644
--- a/ql/src/test/results/clientpositive/udf_last_day.q.out
+++ b/ql/src/test/results/clientpositive/udf_last_day.q.out
@@ -12,6 +12,8 @@ date is a string in the format 'yyyy-MM-dd HH:mm:ss' or 'yyyy-MM-dd'. The time p
 Example:
   > SELECT last_day('2009-01-12') FROM src LIMIT 1;
  '2009-01-31'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFLastDay
+Function type:BUILTIN
 PREHOOK: query: explain select last_day('2015-02-05')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select last_day('2015-02-05')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_lcase.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_lcase.q.out b/ql/src/test/results/clientpositive/udf_lcase.q.out
index 57882f8..5aa7af4 100644
--- a/ql/src/test/results/clientpositive/udf_lcase.q.out
+++ b/ql/src/test/results/clientpositive/udf_lcase.q.out
@@ -12,3 +12,5 @@ Synonyms: lower
 Example:
   > SELECT lcase('Facebook') FROM src LIMIT 1;
   'facebook'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFLower
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_least.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_least.q.out b/ql/src/test/results/clientpositive/udf_least.q.out
index d6e1a23..606a372 100644
--- a/ql/src/test/results/clientpositive/udf_least.q.out
+++ b/ql/src/test/results/clientpositive/udf_least.q.out
@@ -11,6 +11,8 @@ least(v1, v2, ...) - Returns the least value in a list of values
 Example:
   > SELECT least(2, 3, 1) FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFLeast
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT LEAST('a', 'b', 'c'),
        LEAST('C', 'a', 'B'),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_length.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_length.q.out b/ql/src/test/results/clientpositive/udf_length.q.out
index 0dc39ea..461e129 100644
--- a/ql/src/test/results/clientpositive/udf_length.q.out
+++ b/ql/src/test/results/clientpositive/udf_length.q.out
@@ -11,6 +11,8 @@ length(str | binary) - Returns the length of str or number of bytes in binary da
 Example:
   > SELECT length('Facebook') FROM src LIMIT 1;
   8
+Function class:org.apache.hadoop.hive.ql.udf.UDFLength
+Function type:BUILTIN
 PREHOOK: query: CREATE TABLE dest1(len INT)
 PREHOOK: type: CREATETABLE
 PREHOOK: Output: database:default

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_lessthan.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_lessthan.q.out b/ql/src/test/results/clientpositive/udf_lessthan.q.out
index 630d502..635b2d9 100644
--- a/ql/src/test/results/clientpositive/udf_lessthan.q.out
+++ b/ql/src/test/results/clientpositive/udf_lessthan.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED <
 POSTHOOK: type: DESCFUNCTION
 a < b - Returns TRUE if a is less than b
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPLessThan
+Function type:BUILTIN
 PREHOOK: query: SELECT true<false, false<true, false<false, true<true FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_lessthanorequal.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_lessthanorequal.q.out b/ql/src/test/results/clientpositive/udf_lessthanorequal.q.out
index 18dd790..b0db7be 100644
--- a/ql/src/test/results/clientpositive/udf_lessthanorequal.q.out
+++ b/ql/src/test/results/clientpositive/udf_lessthanorequal.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED <=
 POSTHOOK: type: DESCFUNCTION
 a <= b - Returns TRUE if a is not greater than b
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPEqualOrLessThan
+Function type:BUILTIN
 PREHOOK: query: SELECT true<=false, false<=true, false<=false, true<=true FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_levenshtein.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_levenshtein.q.out b/ql/src/test/results/clientpositive/udf_levenshtein.q.out
index 21b713a..fd1fd28 100644
--- a/ql/src/test/results/clientpositive/udf_levenshtein.q.out
+++ b/ql/src/test/results/clientpositive/udf_levenshtein.q.out
@@ -11,6 +11,8 @@ levenshtein(str1, str2) - This function calculates the Levenshtein distance betw
 Levenshtein distance is a string metric for measuring the difference between two sequences. Informally, the Levenshtein distance between two words is the minimum number of single-character edits (i.e. insertions, deletions or substitutions) required to change one word into the other. It is named after Vladimir Levenshtein, who considered this distance in 1965.Example:
   > SELECT levenshtein('kitten', 'sitting');
  3
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFLevenshtein
+Function type:BUILTIN
 PREHOOK: query: explain select levenshtein('Test String1', 'Test String2')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select levenshtein('Test String1', 'Test String2')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_like.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_like.q.out b/ql/src/test/results/clientpositive/udf_like.q.out
index 8ffcf9b..64c17bd 100644
--- a/ql/src/test/results/clientpositive/udf_like.q.out
+++ b/ql/src/test/results/clientpositive/udf_like.q.out
@@ -11,6 +11,8 @@ like(str, pattern) - Checks if str matches pattern
 Example:
   > SELECT a.* FROM srcpart a WHERE a.hr like '%2' LIMIT 1;
   27      val_27  2008-04-08      12
+Function class:org.apache.hadoop.hive.ql.udf.UDFLike
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT '_%_' LIKE '%\_\%\_%', '__' LIKE '%\_\%\_%', '%%_%_' LIKE '%\_\%\_%', '%_%_%' LIKE '%\%\_\%',
   '_%_' LIKE '\%\_%', '%__' LIKE '__\%%', '_%' LIKE '\_\%\_\%%', '_%' LIKE '\_\%_%',

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_ln.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_ln.q.out b/ql/src/test/results/clientpositive/udf_ln.q.out
index ea1a16a..42fd621 100644
--- a/ql/src/test/results/clientpositive/udf_ln.q.out
+++ b/ql/src/test/results/clientpositive/udf_ln.q.out
@@ -11,3 +11,5 @@ ln(x) - Returns the natural logarithm of x
 Example:
   > SELECT ln(1) FROM src LIMIT 1;
   0
+Function class:org.apache.hadoop.hive.ql.udf.UDFLn
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_locate.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_locate.q.out b/ql/src/test/results/clientpositive/udf_locate.q.out
index 00136dc..8688074 100644
--- a/ql/src/test/results/clientpositive/udf_locate.q.out
+++ b/ql/src/test/results/clientpositive/udf_locate.q.out
@@ -11,6 +11,8 @@ locate(substr, str[, pos]) - Returns the position of the first occurance of subs
 Example:
   > SELECT locate('bar', 'foobarbar', 5) FROM src LIMIT 1;
   7
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFLocate
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT locate('abc', 'abcd'),
        locate('ccc', 'abcabc'),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_log.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_log.q.out b/ql/src/test/results/clientpositive/udf_log.q.out
index 1576401..7b2f3e5 100644
--- a/ql/src/test/results/clientpositive/udf_log.q.out
+++ b/ql/src/test/results/clientpositive/udf_log.q.out
@@ -11,3 +11,5 @@ log([b], x) - Returns the logarithm of x with base b
 Example:
   > SELECT log(13, 13) FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.UDFLog
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_log10.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_log10.q.out b/ql/src/test/results/clientpositive/udf_log10.q.out
index b53f0ae..46d4504 100644
--- a/ql/src/test/results/clientpositive/udf_log10.q.out
+++ b/ql/src/test/results/clientpositive/udf_log10.q.out
@@ -11,3 +11,5 @@ log10(x) - Returns the logarithm of x with base 10
 Example:
   > SELECT log10(10) FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.UDFLog10
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_log2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_log2.q.out b/ql/src/test/results/clientpositive/udf_log2.q.out
index e810bee..4e9ca0f 100644
--- a/ql/src/test/results/clientpositive/udf_log2.q.out
+++ b/ql/src/test/results/clientpositive/udf_log2.q.out
@@ -11,3 +11,5 @@ log2(x) - Returns the logarithm of x with base 2
 Example:
   > SELECT log2(2) FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.UDFLog2
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_logged_in_user.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_logged_in_user.q.out b/ql/src/test/results/clientpositive/udf_logged_in_user.q.out
index ffb19ca..da8b894 100644
--- a/ql/src/test/results/clientpositive/udf_logged_in_user.q.out
+++ b/ql/src/test/results/clientpositive/udf_logged_in_user.q.out
@@ -9,6 +9,8 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED logged_in_user
 POSTHOOK: type: DESCFUNCTION
 logged_in_user() - Returns logged in user name
 SessionState GetUserName - the username provided at session initialization
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFLoggedInUser
+Function type:BUILTIN
 PREHOOK: query: select logged_in_user()
 FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_lower.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_lower.q.out b/ql/src/test/results/clientpositive/udf_lower.q.out
index 6832dab..e816594 100644
--- a/ql/src/test/results/clientpositive/udf_lower.q.out
+++ b/ql/src/test/results/clientpositive/udf_lower.q.out
@@ -12,6 +12,8 @@ Synonyms: lcase
 Example:
   > SELECT lower('Facebook') FROM src LIMIT 1;
   'facebook'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFLower
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT lower('AbC 123'), upper('AbC 123') FROM src WHERE key = 86
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_lpad.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_lpad.q.out b/ql/src/test/results/clientpositive/udf_lpad.q.out
index 1f7c06a..7d7cc92 100644
--- a/ql/src/test/results/clientpositive/udf_lpad.q.out
+++ b/ql/src/test/results/clientpositive/udf_lpad.q.out
@@ -13,6 +13,8 @@ Example:
   > SELECT lpad('hi', 5, '??') FROM src LIMIT 1;
   '???hi'  > SELECT lpad('hi', 1, '??') FROM src LIMIT 1;
   'h'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFLpad
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN SELECT
   lpad('hi', 1, '?'),
   lpad('hi', 5, '.'),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_ltrim.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_ltrim.q.out b/ql/src/test/results/clientpositive/udf_ltrim.q.out
index 207ad96..4295bd4 100644
--- a/ql/src/test/results/clientpositive/udf_ltrim.q.out
+++ b/ql/src/test/results/clientpositive/udf_ltrim.q.out
@@ -11,3 +11,5 @@ ltrim(str) - Removes the leading space characters from str
 Example:
   > SELECT ltrim('   facebook') FROM src LIMIT 1;
   'facebook'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFLTrim
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_map.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_map.q.out b/ql/src/test/results/clientpositive/udf_map.q.out
index 8ea4f11..ba6195a 100644
--- a/ql/src/test/results/clientpositive/udf_map.q.out
+++ b/ql/src/test/results/clientpositive/udf_map.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED map
 POSTHOOK: type: DESCFUNCTION
 map(key0, value0, key1, value1...) - Creates a map with the given key/value pairs 
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFMap
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN SELECT map(), map(1, "a", 2, "b", 3, "c"), map(1, 2, "a", "b"), 
 map(1, "a", 2, "b", 3, "c")[2],  map(1, 2, "a", "b")["a"], map(1, array("a"))[1][0] FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_map_keys.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_map_keys.q.out b/ql/src/test/results/clientpositive/udf_map_keys.q.out
index 49beca3..d8f90fd 100644
--- a/ql/src/test/results/clientpositive/udf_map_keys.q.out
+++ b/ql/src/test/results/clientpositive/udf_map_keys.q.out
@@ -18,6 +18,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED map_keys
 POSTHOOK: type: DESCFUNCTION
 map_keys(map) - Returns an unordered array containing the keys of the input map.
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFMapKeys
+Function type:BUILTIN
 PREHOOK: query: -- Evaluate function against INT valued keys
 SELECT map_keys(map(1, "a", 2, "b", 3, "c")) FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_map_values.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_map_values.q.out b/ql/src/test/results/clientpositive/udf_map_values.q.out
index 8e502b5..905b237 100644
--- a/ql/src/test/results/clientpositive/udf_map_values.q.out
+++ b/ql/src/test/results/clientpositive/udf_map_values.q.out
@@ -18,6 +18,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED map_values
 POSTHOOK: type: DESCFUNCTION
 map_values(map) - Returns an unordered array containing the values of the input map.
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFMapValues
+Function type:BUILTIN
 PREHOOK: query: -- Evaluate function against STRING valued values
 SELECT map_values(map(1, "a", 2, "b", 3, "c")) FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_mask.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_mask.q.out b/ql/src/test/results/clientpositive/udf_mask.q.out
index ac0e273..118bb75 100644
--- a/ql/src/test/results/clientpositive/udf_mask.q.out
+++ b/ql/src/test/results/clientpositive/udf_mask.q.out
@@ -24,6 +24,8 @@ Examples:
      monthValue - value to replace month field in a date with. Specify -1 to retain original value. Valid values: 0-11. Default value: 0
      yearValue  - value to replace year field in a date with. Specify -1 to retain original value. Default value: 0
  
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFMask
+Function type:BUILTIN
 PREHOOK: query: explain select mask('TestString-123', 'X', 'x', '0', '1')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select mask('TestString-123', 'X', 'x', '0', '1')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_mask_first_n.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_mask_first_n.q.out b/ql/src/test/results/clientpositive/udf_mask_first_n.q.out
index 988cf70..d46e3e1 100644
--- a/ql/src/test/results/clientpositive/udf_mask_first_n.q.out
+++ b/ql/src/test/results/clientpositive/udf_mask_first_n.q.out
@@ -21,6 +21,8 @@ Examples:
      otherChar  - character to replace all other characters with. Specify -1 to retain original character. Default value: -1
      numberChar - character to replace digits in a number with. Valid values: 0-9. Default value: '1'
  
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFMaskFirstN
+Function type:BUILTIN
 PREHOOK: query: explain select mask_first_n('TestString-123', 4, 'X', 'x', '0', '1')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select mask_first_n('TestString-123', 4, 'X', 'x', '0', '1')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_mask_hash.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_mask_hash.q.out b/ql/src/test/results/clientpositive/udf_mask_hash.q.out
index 9fc34bb..200f817 100644
--- a/ql/src/test/results/clientpositive/udf_mask_hash.q.out
+++ b/ql/src/test/results/clientpositive/udf_mask_hash.q.out
@@ -12,6 +12,8 @@ Examples:
    mask_hash(value)
  Arguments:
    value - value to mask. Supported types: STRING, VARCHAR, CHAR
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFMaskHash
+Function type:BUILTIN
 PREHOOK: query: explain select mask_hash('TestString-123')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select mask_hash('TestString-123')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_mask_last_n.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_mask_last_n.q.out b/ql/src/test/results/clientpositive/udf_mask_last_n.q.out
index ae75d51..a71562d 100644
--- a/ql/src/test/results/clientpositive/udf_mask_last_n.q.out
+++ b/ql/src/test/results/clientpositive/udf_mask_last_n.q.out
@@ -21,6 +21,8 @@ Examples:
      otherChar  - character to replace all other characters with. Specify -1 to retain original character. Default value: -1
       numberChar - character to replace digits in a number with. Valid values: 0-9. Default value: '1'
  
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFMaskLastN
+Function type:BUILTIN
 PREHOOK: query: explain select mask_last_n('TestString-123', 4, 'X', 'x', '0', '1')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select mask_last_n('TestString-123', 4, 'X', 'x', '0', '1')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_mask_show_first_n.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_mask_show_first_n.q.out b/ql/src/test/results/clientpositive/udf_mask_show_first_n.q.out
index d8ada97..8e491b2 100644
--- a/ql/src/test/results/clientpositive/udf_mask_show_first_n.q.out
+++ b/ql/src/test/results/clientpositive/udf_mask_show_first_n.q.out
@@ -21,6 +21,8 @@ Examples:
      otherChar  - character to replace all other characters with. Specify -1 to retain original character. Default value: -1
      numberChar - character to replace digits in a number with. Valid values: 0-9. Default value: '1'
  
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFMaskShowFirstN
+Function type:BUILTIN
 PREHOOK: query: explain select mask_show_first_n('TestString-123', 4, 'X', 'x', '0', '1')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select mask_show_first_n('TestString-123', 4, 'X', 'x', '0', '1')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_mask_show_last_n.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_mask_show_last_n.q.out b/ql/src/test/results/clientpositive/udf_mask_show_last_n.q.out
index 3bf2e62..b4f30a0 100644
--- a/ql/src/test/results/clientpositive/udf_mask_show_last_n.q.out
+++ b/ql/src/test/results/clientpositive/udf_mask_show_last_n.q.out
@@ -21,6 +21,8 @@ Examples:
      otherChar  - character to replace all other characters with. Specify -1 to retain original character. Default value: -1
      numberChar - character to replace digits in a number with. Valid values: 0-9. Default value: '1'
  
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFMaskShowLastN
+Function type:BUILTIN
 PREHOOK: query: explain select mask_show_last_n('TestString-123', 4, 'X', 'x', '0', '1')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select mask_show_last_n('TestString-123', 4, 'X', 'x', '0', '1')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_max.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_max.q.out b/ql/src/test/results/clientpositive/udf_max.q.out
index 8535752..9671bf1 100644
--- a/ql/src/test/results/clientpositive/udf_max.q.out
+++ b/ql/src/test/results/clientpositive/udf_max.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED max
 POSTHOOK: type: DESCFUNCTION
 max(expr) - Returns the maximum value of expr
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFMax
+Function type:BUILTIN
 PREHOOK: query: SELECT max(struct(CAST(key as INT), value)),
        max(struct(key, value))
 FROM src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_md5.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_md5.q.out b/ql/src/test/results/clientpositive/udf_md5.q.out
index 7f8961b..0b3e38e 100644
--- a/ql/src/test/results/clientpositive/udf_md5.q.out
+++ b/ql/src/test/results/clientpositive/udf_md5.q.out
@@ -14,6 +14,8 @@ Example:
   '902fbdd2b1df0c4f70b4a5d23525e932'
   > SELECT md5(binary('ABC'));
   '902fbdd2b1df0c4f70b4a5d23525e932'
+Function class:org.apache.hadoop.hive.ql.udf.UDFMd5
+Function type:BUILTIN
 PREHOOK: query: explain select md5('ABC')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select md5('ABC')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_min.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_min.q.out b/ql/src/test/results/clientpositive/udf_min.q.out
index ca8158e..8d3d0a0 100644
--- a/ql/src/test/results/clientpositive/udf_min.q.out
+++ b/ql/src/test/results/clientpositive/udf_min.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED min
 POSTHOOK: type: DESCFUNCTION
 min(expr) - Returns the minimum value of expr
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFMin
+Function type:BUILTIN
 PREHOOK: query: SELECT min(struct(CAST(key as INT), value)),
        min(struct(key, value))
 FROM src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_minute.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_minute.q.out b/ql/src/test/results/clientpositive/udf_minute.q.out
index 04998a6..f7141d2 100644
--- a/ql/src/test/results/clientpositive/udf_minute.q.out
+++ b/ql/src/test/results/clientpositive/udf_minute.q.out
@@ -16,6 +16,8 @@ param can be one of:
   58
   > SELECT minute('12:58:59') FROM src LIMIT 1;
   58
+Function class:org.apache.hadoop.hive.ql.udf.UDFMinute
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT minute('2009-08-07 13:14:15'), minute('13:14:15'), minute('2009-08-07')
 FROM src WHERE key = 86

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_modulo.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_modulo.q.out b/ql/src/test/results/clientpositive/udf_modulo.q.out
index 57a06b0..084dc45 100644
--- a/ql/src/test/results/clientpositive/udf_modulo.q.out
+++ b/ql/src/test/results/clientpositive/udf_modulo.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED %
 POSTHOOK: type: DESCFUNCTION
 a % b - Returns the remainder when dividing a by b
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPMod
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_month.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_month.q.out b/ql/src/test/results/clientpositive/udf_month.q.out
index 7b81bb8..c07c98f 100644
--- a/ql/src/test/results/clientpositive/udf_month.q.out
+++ b/ql/src/test/results/clientpositive/udf_month.q.out
@@ -16,3 +16,5 @@ param can be one of:
   58
   > SELECT minute('12:58:59') FROM src LIMIT 1;
   58
+Function class:org.apache.hadoop.hive.ql.udf.UDFMinute
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_months_between.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_months_between.q.out b/ql/src/test/results/clientpositive/udf_months_between.q.out
index c8beeed..913cd35 100644
--- a/ql/src/test/results/clientpositive/udf_months_between.q.out
+++ b/ql/src/test/results/clientpositive/udf_months_between.q.out
@@ -13,6 +13,8 @@ date1 and date2 type can be date, timestamp or string in the format 'yyyy-MM-dd'
  Example:
   > SELECT months_between('1997-02-28 10:30:00', '1996-10-30');
  3.94959677
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFMonthsBetween
+Function type:BUILTIN
 PREHOOK: query: --test string format
 explain select months_between('1995-02-02', '1995-01-01')
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_named_struct.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_named_struct.q.out b/ql/src/test/results/clientpositive/udf_named_struct.q.out
index 278336e..a15126a 100644
--- a/ql/src/test/results/clientpositive/udf_named_struct.q.out
+++ b/ql/src/test/results/clientpositive/udf_named_struct.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED named_struct
 POSTHOOK: type: DESCFUNCTION
 named_struct(name1, val1, name2, val2, ...) - Creates a struct with the given field names and values
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFNamedStruct
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT named_struct("foo", 1, "bar", 2),
        named_struct("foo", 1, "bar", 2).foo FROM src tablesample (1 rows)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_negative.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_negative.q.out b/ql/src/test/results/clientpositive/udf_negative.q.out
index 7863688..e26dbf8 100644
--- a/ql/src/test/results/clientpositive/udf_negative.q.out
+++ b/ql/src/test/results/clientpositive/udf_negative.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED negative
 POSTHOOK: type: DESCFUNCTION
 negative a - Returns -a
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNegative
+Function type:BUILTIN
 PREHOOK: query: -- synonym
 DESCRIBE FUNCTION -
 PREHOOK: type: DESCFUNCTION
@@ -20,6 +22,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED -
 POSTHOOK: type: DESCFUNCTION
 a - b - Returns the difference a-b
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPMinus
+Function type:BUILTIN
 PREHOOK: query: select - null from src tablesample (1 rows)
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_next_day.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_next_day.q.out b/ql/src/test/results/clientpositive/udf_next_day.q.out
index 37f5640..d67c645 100644
--- a/ql/src/test/results/clientpositive/udf_next_day.q.out
+++ b/ql/src/test/results/clientpositive/udf_next_day.q.out
@@ -11,6 +11,8 @@ next_day(start_date, day_of_week) - Returns the first date which is later than s
 start_date is a string in the format 'yyyy-MM-dd HH:mm:ss' or 'yyyy-MM-dd'. day_of_week is day of the week (e.g. Mo, tue, FRIDAY).Example:
   > SELECT next_day('2015-01-14', 'TU') FROM src LIMIT 1;
  '2015-01-20'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFNextDay
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN SELECT next_day('2014-01-14', 'MO')
 FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_not.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_not.q.out b/ql/src/test/results/clientpositive/udf_not.q.out
index b80d7b6..134640e 100644
--- a/ql/src/test/results/clientpositive/udf_not.q.out
+++ b/ql/src/test/results/clientpositive/udf_not.q.out
@@ -9,6 +9,8 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED not
 POSTHOOK: type: DESCFUNCTION
 not a - Logical not
 Synonyms: !
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNot
+Function type:BUILTIN
 PREHOOK: query: -- synonym
 DESCRIBE FUNCTION !
 PREHOOK: type: DESCFUNCTION
@@ -22,3 +24,5 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED !
 POSTHOOK: type: DESCFUNCTION
 ! a - Logical not
 Synonyms: not
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNot
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_notequal.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_notequal.q.out b/ql/src/test/results/clientpositive/udf_notequal.q.out
index 25162da..390390f 100644
--- a/ql/src/test/results/clientpositive/udf_notequal.q.out
+++ b/ql/src/test/results/clientpositive/udf_notequal.q.out
@@ -9,6 +9,8 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED <>
 POSTHOOK: type: DESCFUNCTION
 a <> b - Returns TRUE if a is not equal to b
 Synonyms: !=
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNotEqual
+Function type:BUILTIN
 PREHOOK: query: DESCRIBE FUNCTION !=
 PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION !=
@@ -20,6 +22,8 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED !=
 POSTHOOK: type: DESCFUNCTION
 a != b - Returns TRUE if a is not equal to b
 Synonyms: <>
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNotEqual
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT key, value
 FROM src

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_nullif.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_nullif.q.out b/ql/src/test/results/clientpositive/udf_nullif.q.out
index 95bd0c2..12cfbec 100644
--- a/ql/src/test/results/clientpositive/udf_nullif.q.out
+++ b/ql/src/test/results/clientpositive/udf_nullif.q.out
@@ -10,6 +10,8 @@ POSTHOOK: type: DESCFUNCTION
 nullif(a1, a2) - shorthand for: case when a1 = a2 then null else a1
 Example:
  SELECT nullif(1,1),nullif(1,2)
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFNullif
+Function type:BUILTIN
 PREHOOK: query: explain select nullif(1,2)
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select nullif(1,2)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_nvl.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_nvl.q.out b/ql/src/test/results/clientpositive/udf_nvl.q.out
index 50ca083..583df01 100644
--- a/ql/src/test/results/clientpositive/udf_nvl.q.out
+++ b/ql/src/test/results/clientpositive/udf_nvl.q.out
@@ -11,6 +11,8 @@ nvl(value,default_value) - Returns default value if value is null else returns v
 Example:
   > SELECT nvl(null,'bla') FROM src LIMIT 1;
   bla
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFNvl
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT NVL( 1 , 2 ) AS COL1,
        NVL( NULL, 5 ) AS COL2

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_or.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_or.q.out b/ql/src/test/results/clientpositive/udf_or.q.out
index cd3e2da..7e415c3 100644
--- a/ql/src/test/results/clientpositive/udf_or.q.out
+++ b/ql/src/test/results/clientpositive/udf_or.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED or
 POSTHOOK: type: DESCFUNCTION
 a1 or a2 or ... or an - Logical or
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPOr
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_parse_url.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_parse_url.q.out b/ql/src/test/results/clientpositive/udf_parse_url.q.out
index dece0af..0ea8584 100644
--- a/ql/src/test/results/clientpositive/udf_parse_url.q.out
+++ b/ql/src/test/results/clientpositive/udf_parse_url.q.out
@@ -17,6 +17,8 @@ Example:
   'query=1'
   > SELECT parse_url('http://facebook.com/path/p1.php?query=1', 'QUERY', 'query') FROM src LIMIT 1;
   '1'
+Function class:org.apache.hadoop.hive.ql.udf.UDFParseUrl
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT parse_url('http://facebook.com/path1/p.php?k1=v1&k2=v2#Ref1', 'HOST'), 
 parse_url('http://facebook.com/path1/p.php?k1=v1&k2=v2#Ref1', 'PATH'), 

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_percentile.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_percentile.q.out b/ql/src/test/results/clientpositive/udf_percentile.q.out
index c699a95..3f8890b 100644
--- a/ql/src/test/results/clientpositive/udf_percentile.q.out
+++ b/ql/src/test/results/clientpositive/udf_percentile.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED percentile
 POSTHOOK: type: DESCFUNCTION
 percentile(expr, pc) - Returns the percentile(s) of expr at pc (range: [0,1]).pc can be a double or double array
+Function class:org.apache.hadoop.hive.ql.udf.UDAFPercentile
+Function type:BUILTIN
 PREHOOK: query: -- SORT_QUERY_RESULTS
 
 SELECT CAST(key AS INT) DIV 10,

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_pmod.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_pmod.q.out b/ql/src/test/results/clientpositive/udf_pmod.q.out
index 0c77243..ca714ea 100644
--- a/ql/src/test/results/clientpositive/udf_pmod.q.out
+++ b/ql/src/test/results/clientpositive/udf_pmod.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED pmod
 POSTHOOK: type: DESCFUNCTION
 a pmod b - Compute the positive modulo
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFPosMod
+Function type:BUILTIN
 PREHOOK: query: SELECT pmod(null, null)
 FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_positive.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_positive.q.out b/ql/src/test/results/clientpositive/udf_positive.q.out
index 4524950..09c0c1f 100644
--- a/ql/src/test/results/clientpositive/udf_positive.q.out
+++ b/ql/src/test/results/clientpositive/udf_positive.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED positive
 POSTHOOK: type: DESCFUNCTION
 positive a - Returns a
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPPositive
+Function type:BUILTIN
 PREHOOK: query: -- synonym
 DESCRIBE FUNCTION +
 PREHOOK: type: DESCFUNCTION
@@ -20,3 +22,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED +
 POSTHOOK: type: DESCFUNCTION
 a + b - Returns a+b
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPPlus
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_pow.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_pow.q.out b/ql/src/test/results/clientpositive/udf_pow.q.out
index 30a3c54..d2da8b1 100644
--- a/ql/src/test/results/clientpositive/udf_pow.q.out
+++ b/ql/src/test/results/clientpositive/udf_pow.q.out
@@ -12,3 +12,5 @@ Synonyms: power
 Example:
   > SELECT pow(2, 3) FROM src LIMIT 1;
   8
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFPower
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_power.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_power.q.out b/ql/src/test/results/clientpositive/udf_power.q.out
index ae14546..ab60e9b 100644
--- a/ql/src/test/results/clientpositive/udf_power.q.out
+++ b/ql/src/test/results/clientpositive/udf_power.q.out
@@ -12,3 +12,5 @@ Synonyms: pow
 Example:
   > SELECT power(2, 3) FROM src LIMIT 1;
   8
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFPower
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_printf.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_printf.q.out b/ql/src/test/results/clientpositive/udf_printf.q.out
index cf07189..47bc071 100644
--- a/ql/src/test/results/clientpositive/udf_printf.q.out
+++ b/ql/src/test/results/clientpositive/udf_printf.q.out
@@ -21,6 +21,8 @@ printf(String format, Obj... args) - function that can format strings according
 Example:
   > SELECT printf("Hello World %d %s", 100, "days")FROM src LIMIT 1;
   "Hello World 100 days"
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFPrintf
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT printf("Hello World %d %s", 100, "days") FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_quarter.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_quarter.q.out b/ql/src/test/results/clientpositive/udf_quarter.q.out
index fdfba11..47304e3 100644
--- a/ql/src/test/results/clientpositive/udf_quarter.q.out
+++ b/ql/src/test/results/clientpositive/udf_quarter.q.out
@@ -10,6 +10,8 @@ POSTHOOK: type: DESCFUNCTION
 quarter(date/timestamp/string) - Returns the quarter of the year for date, in the range 1 to 4.
 Example: > SELECT quarter('2015-04-08');
  2
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFQuarter
+Function type:BUILTIN
 PREHOOK: query: explain select quarter('2015-04-24')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select quarter('2015-04-24')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_radians.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_radians.q.out b/ql/src/test/results/clientpositive/udf_radians.q.out
index 30bf241..14bd78c 100644
--- a/ql/src/test/results/clientpositive/udf_radians.q.out
+++ b/ql/src/test/results/clientpositive/udf_radians.q.out
@@ -54,6 +54,8 @@ Example:
   > SELECT radians(90) FROM src LIMIT 1;
   1.5707963267949mo
 
+Function class:org.apache.hadoop.hive.ql.udf.UDFRadians
+Function type:BUILTIN
 PREHOOK: query: explain 
 select radians(57.2958) FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
@@ -110,3 +112,5 @@ Example:
   > SELECT radians(90) FROM src LIMIT 1;
   1.5707963267949mo
 
+Function class:org.apache.hadoop.hive.ql.udf.UDFRadians
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_rand.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_rand.q.out b/ql/src/test/results/clientpositive/udf_rand.q.out
index c46ffc2..b1e1646 100644
--- a/ql/src/test/results/clientpositive/udf_rand.q.out
+++ b/ql/src/test/results/clientpositive/udf_rand.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED rand
 POSTHOOK: type: DESCFUNCTION
 rand([seed]) - Returns a pseudorandom number between 0 and 1
+Function class:org.apache.hadoop.hive.ql.udf.UDFRand
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_reflect.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_reflect.q.out b/ql/src/test/results/clientpositive/udf_reflect.q.out
index cb81302..a9863f7 100644
--- a/ql/src/test/results/clientpositive/udf_reflect.q.out
+++ b/ql/src/test/results/clientpositive/udf_reflect.q.out
@@ -11,6 +11,8 @@ reflect(class,method[,arg1[,arg2..]]) calls method with reflection
 Synonyms: java_method
 Use this UDF to call Java methods by matching the argument signature
 
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFReflect
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN EXTENDED
 SELECT reflect("java.lang.String", "valueOf", 1),
        reflect("java.lang.String", "isEmpty"),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_reflect2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_reflect2.q.out b/ql/src/test/results/clientpositive/udf_reflect2.q.out
index a862990..a1074f8 100644
--- a/ql/src/test/results/clientpositive/udf_reflect2.q.out
+++ b/ql/src/test/results/clientpositive/udf_reflect2.q.out
@@ -10,6 +10,8 @@ POSTHOOK: type: DESCFUNCTION
 reflect2(arg0,method[,arg1[,arg2..]]) calls method of arg0 with reflection
 Use this UDF to call Java methods by matching the argument signature
 
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFReflect2
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN EXTENDED
 SELECT key,
        reflect2(key,   "byteValue"),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_regexp.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_regexp.q.out b/ql/src/test/results/clientpositive/udf_regexp.q.out
index e27f46a..1cbce0a 100644
--- a/ql/src/test/results/clientpositive/udf_regexp.q.out
+++ b/ql/src/test/results/clientpositive/udf_regexp.q.out
@@ -12,6 +12,8 @@ Synonyms: rlike
 Example:
   > SELECT 'fb' regexp '.*' FROM src LIMIT 1;
   true
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFRegExp
+Function type:BUILTIN
 PREHOOK: query: SELECT 'fofo' REGEXP '^fo', 'fo\no' REGEXP '^fo\no$', 'Bn' REGEXP '^Ba*n', 'afofo' REGEXP 'fo',
 'afofo' REGEXP '^fo', 'Baan' REGEXP '^Ba?n', 'axe' REGEXP 'pi|apa', 'pip' REGEXP '^(pi)*$'
 FROM src tablesample (1 rows)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_regexp_extract.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_regexp_extract.q.out b/ql/src/test/results/clientpositive/udf_regexp_extract.q.out
index 0a666de..3b85e26 100644
--- a/ql/src/test/results/clientpositive/udf_regexp_extract.q.out
+++ b/ql/src/test/results/clientpositive/udf_regexp_extract.q.out
@@ -11,3 +11,5 @@ regexp_extract(str, regexp[, idx]) - extracts a group that matches regexp
 Example:
   > SELECT regexp_extract('100-200', '(\d+)-(\d+)', 1) FROM src LIMIT 1;
   '100'
+Function class:org.apache.hadoop.hive.ql.udf.UDFRegExpExtract
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_regexp_replace.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_regexp_replace.q.out b/ql/src/test/results/clientpositive/udf_regexp_replace.q.out
index e9d37f3..8f55a1d 100644
--- a/ql/src/test/results/clientpositive/udf_regexp_replace.q.out
+++ b/ql/src/test/results/clientpositive/udf_regexp_replace.q.out
@@ -11,3 +11,5 @@ regexp_replace(str, regexp, rep) - replace all substrings of str that match rege
 Example:
   > SELECT regexp_replace('100-200', '(\d+)', 'num') FROM src LIMIT 1;
   'num-num'
+Function class:org.apache.hadoop.hive.ql.udf.UDFRegExpReplace
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_repeat.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_repeat.q.out b/ql/src/test/results/clientpositive/udf_repeat.q.out
index 1e76cc2..2c061e7 100644
--- a/ql/src/test/results/clientpositive/udf_repeat.q.out
+++ b/ql/src/test/results/clientpositive/udf_repeat.q.out
@@ -11,6 +11,8 @@ repeat(str, n) - repeat str n times
 Example:
   > SELECT repeat('123', 2) FROM src LIMIT 1;
   '123123'
+Function class:org.apache.hadoop.hive.ql.udf.UDFRepeat
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN SELECT
   repeat("Facebook", 3),
   repeat("", 4),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_replace.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_replace.q.out b/ql/src/test/results/clientpositive/udf_replace.q.out
index 10bce89..18fc024 100644
--- a/ql/src/test/results/clientpositive/udf_replace.q.out
+++ b/ql/src/test/results/clientpositive/udf_replace.q.out
@@ -11,6 +11,8 @@ replace(str, search, rep) - replace all substrings of 'str' that match 'search'
 Example:
   > SELECT replace('Hack and Hue', 'H', 'BL') FROM src LIMIT 1;
   'BLack and BLue'
+Function class:org.apache.hadoop.hive.ql.udf.UDFReplace
+Function type:BUILTIN
 PREHOOK: query: select replace('', '', ''),
 replace(null, '', ''),
 replace('', null, ''),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_reverse.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_reverse.q.out b/ql/src/test/results/clientpositive/udf_reverse.q.out
index 4fee27f..9d0f869 100644
--- a/ql/src/test/results/clientpositive/udf_reverse.q.out
+++ b/ql/src/test/results/clientpositive/udf_reverse.q.out
@@ -11,6 +11,8 @@ reverse(str) - reverse str
 Example:
   > SELECT reverse('Facebook') FROM src LIMIT 1;
   'koobecaF'
+Function class:org.apache.hadoop.hive.ql.udf.UDFReverse
+Function type:BUILTIN
 PREHOOK: query: CREATE TABLE dest1(len STRING)
 PREHOOK: type: CREATETABLE
 PREHOOK: Output: database:default

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_rlike.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_rlike.q.out b/ql/src/test/results/clientpositive/udf_rlike.q.out
index 270fa94..bfb16ab 100644
--- a/ql/src/test/results/clientpositive/udf_rlike.q.out
+++ b/ql/src/test/results/clientpositive/udf_rlike.q.out
@@ -12,3 +12,5 @@ Synonyms: regexp
 Example:
   > SELECT 'fb' rlike '.*' FROM src LIMIT 1;
   true
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFRegExp
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_round.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_round.q.out b/ql/src/test/results/clientpositive/udf_round.q.out
index c80f821..456e6ea 100644
--- a/ql/src/test/results/clientpositive/udf_round.q.out
+++ b/ql/src/test/results/clientpositive/udf_round.q.out
@@ -11,6 +11,8 @@ round(x[, d]) - round x to d decimal places
 Example:
   > SELECT round(12.3456, 1) FROM src LIMIT 1;
   12.3'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFRound
+Function type:BUILTIN
 PREHOOK: query: SELECT round(null), round(null, 0), round(125, null), 
 round(1.0/0.0, 0), round(power(-1.0,0.5), 0)
 FROM src tablesample (1 rows)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_rpad.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_rpad.q.out b/ql/src/test/results/clientpositive/udf_rpad.q.out
index 2cf5a93..bf77b7f 100644
--- a/ql/src/test/results/clientpositive/udf_rpad.q.out
+++ b/ql/src/test/results/clientpositive/udf_rpad.q.out
@@ -13,6 +13,8 @@ Example:
   > SELECT rpad('hi', 5, '??') FROM src LIMIT 1;
   'hi???'  > SELECT rpad('hi', 1, '??') FROM src LIMIT 1;
   'h'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFRpad
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN SELECT
   rpad('hi', 1, '?'),
   rpad('hi', 5, '.'),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_rtrim.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_rtrim.q.out b/ql/src/test/results/clientpositive/udf_rtrim.q.out
index 035c7ae..7b6ae7f 100644
--- a/ql/src/test/results/clientpositive/udf_rtrim.q.out
+++ b/ql/src/test/results/clientpositive/udf_rtrim.q.out
@@ -11,3 +11,5 @@ rtrim(str) - Removes the trailing space characters from str
 Example:
   > SELECT rtrim('facebook   ') FROM src LIMIT 1;
   'facebook'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFRTrim
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_second.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_second.q.out b/ql/src/test/results/clientpositive/udf_second.q.out
index 4ee919a..c1f3504 100644
--- a/ql/src/test/results/clientpositive/udf_second.q.out
+++ b/ql/src/test/results/clientpositive/udf_second.q.out
@@ -16,6 +16,8 @@ param can be one of:
   59
   > SELECT second('12:58:59') FROM src LIMIT 1;
   59
+Function class:org.apache.hadoop.hive.ql.udf.UDFSecond
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT second('2009-08-07 13:14:15'), second('13:14:15'), second('2009-08-07')
 FROM src WHERE key = 86

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_sha1.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_sha1.q.out b/ql/src/test/results/clientpositive/udf_sha1.q.out
index 6fe3e40..373d238 100644
--- a/ql/src/test/results/clientpositive/udf_sha1.q.out
+++ b/ql/src/test/results/clientpositive/udf_sha1.q.out
@@ -14,6 +14,8 @@ Example:
   '3c01bdbb26f358bab27f267924aa2c9a03fcfdb8'
   > SELECT sha(binary('ABC'));
   '3c01bdbb26f358bab27f267924aa2c9a03fcfdb8'
+Function class:org.apache.hadoop.hive.ql.udf.UDFSha1
+Function type:BUILTIN
 PREHOOK: query: explain select sha1('ABC')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select sha1('ABC')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_sha2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_sha2.q.out b/ql/src/test/results/clientpositive/udf_sha2.q.out
index 041e0f4..6553339 100644
--- a/ql/src/test/results/clientpositive/udf_sha2.q.out
+++ b/ql/src/test/results/clientpositive/udf_sha2.q.out
@@ -11,6 +11,8 @@ sha2(string/binary, len) - Calculates the SHA-2 family of hash functions (SHA-22
 The first argument is the string or binary to be hashed. The second argument indicates the desired bit length of the result, which must have a value of 224, 256, 384, 512, or 0 (which is equivalent to 256). SHA-224 is supported starting from Java 8. If either argument is NULL or the hash length is not one of the permitted values, the return value is NULL.
 Example: > SELECT sha2('ABC', 256);
  'b5d4045c3f466fa91fe2cc6abe79232a1a57cdf104f7a26e716e0a1e2789df78'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFSha2
+Function type:BUILTIN
 PREHOOK: query: explain select sha2('ABC', 256)
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select sha2('ABC', 256)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_sign.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_sign.q.out b/ql/src/test/results/clientpositive/udf_sign.q.out
index cefb9fa..fe84402 100644
--- a/ql/src/test/results/clientpositive/udf_sign.q.out
+++ b/ql/src/test/results/clientpositive/udf_sign.q.out
@@ -62,6 +62,8 @@ sign(x) - returns the sign of x )
 Example:
    > SELECT sign(40) FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.UDFSign
+Function type:BUILTIN
 PREHOOK: query: explain 
 select sign(0) FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
@@ -126,3 +128,5 @@ sign(x) - returns the sign of x )
 Example:
    > SELECT sign(40) FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.UDFSign
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_sin.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_sin.q.out b/ql/src/test/results/clientpositive/udf_sin.q.out
index 47e7cee..d39f940 100644
--- a/ql/src/test/results/clientpositive/udf_sin.q.out
+++ b/ql/src/test/results/clientpositive/udf_sin.q.out
@@ -11,6 +11,8 @@ sin(x) - returns the sine of x (x is in radians)
 Example:
    > SELECT sin(0) FROM src LIMIT 1;
   0
+Function class:org.apache.hadoop.hive.ql.udf.UDFSin
+Function type:BUILTIN
 PREHOOK: query: SELECT sin(null)
 FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_size.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_size.q.out b/ql/src/test/results/clientpositive/udf_size.q.out
index 428f642..c8c81c4 100644
--- a/ql/src/test/results/clientpositive/udf_size.q.out
+++ b/ql/src/test/results/clientpositive/udf_size.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED size
 POSTHOOK: type: DESCFUNCTION
 size(a) - Returns the size of a
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFSize
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 FROM src_thrift
 SELECT size(src_thrift.lint), 

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_smallint.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_smallint.q.out b/ql/src/test/results/clientpositive/udf_smallint.q.out
index 1b9a219..01d4682 100644
--- a/ql/src/test/results/clientpositive/udf_smallint.q.out
+++ b/ql/src/test/results/clientpositive/udf_smallint.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED smallint
 POSTHOOK: type: DESCFUNCTION
 There is no documentation for function 'smallint'
+Function class:org.apache.hadoop.hive.ql.udf.UDFToShort
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_sort_array.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_sort_array.q.out b/ql/src/test/results/clientpositive/udf_sort_array.q.out
index 2b67108..31affff 100644
--- a/ql/src/test/results/clientpositive/udf_sort_array.q.out
+++ b/ql/src/test/results/clientpositive/udf_sort_array.q.out
@@ -21,6 +21,8 @@ sort_array(array(obj1, obj2,...)) - Sorts the input array in ascending order acc
 Example:
   > SELECT sort_array(array('b', 'd', 'c', 'a')) FROM src LIMIT 1;
   'a', 'b', 'c', 'd'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFSortArray
+Function type:BUILTIN
 PREHOOK: query: -- Evaluate function against STRING valued keys
 EXPLAIN
 SELECT sort_array(array("b", "d", "c", "a")) FROM src tablesample (1 rows)
@@ -119,7 +121,7 @@ SELECT sort_array(array(map("b", 2, "a", 9, "c", 7), map("c", 3, "b", 5, "a", 1)
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-[{"a":1,"b":5,"c":3},{"a":1,"b":8,"c":6},{"a":9,"b":2,"c":7}]
+[{"b":5,"a":1,"c":3},{"b":8,"a":1,"c":6},{"b":2,"a":9,"c":7}]
 PREHOOK: query: -- Test it against data in a table.
 CREATE TABLE dest1 (
 	tinyints ARRAY<TINYINT>,

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_sort_array_by.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_sort_array_by.q.out b/ql/src/test/results/clientpositive/udf_sort_array_by.q.out
index 7778d1e..a2b14ff 100644
--- a/ql/src/test/results/clientpositive/udf_sort_array_by.q.out
+++ b/ql/src/test/results/clientpositive/udf_sort_array_by.q.out
@@ -21,6 +21,8 @@ sort_array_by(array(obj1, obj2,...),'f1','f2',...,['ASC','DESC']) - Sorts the in
 Example:
   > SELECT sort_array_by(array(struct('g',100),struct('b',200)),'col1','ASC') FROM src LIMIT 1;
  array(struct('b',200),struct('g',100)) 
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFSortArrayByField
+Function type:BUILTIN
 PREHOOK: query: DROP TABLE IF EXISTS sort_array_by_table
 PREHOOK: type: DROPTABLE
 POSTHOOK: query: DROP TABLE IF EXISTS sort_array_by_table

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_soundex.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_soundex.q.out b/ql/src/test/results/clientpositive/udf_soundex.q.out
index 79de9fa..db5ec3e 100644
--- a/ql/src/test/results/clientpositive/udf_soundex.q.out
+++ b/ql/src/test/results/clientpositive/udf_soundex.q.out
@@ -12,6 +12,8 @@ The soundex code consist of the first letter of the name followed by three digit
 Example:
  > SELECT soundex('Miller');
  M460
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFSoundex
+Function type:BUILTIN
 PREHOOK: query: explain select soundex('Miller')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select soundex('Miller')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_space.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_space.q.out b/ql/src/test/results/clientpositive/udf_space.q.out
index 502b65a..a06da3f 100644
--- a/ql/src/test/results/clientpositive/udf_space.q.out
+++ b/ql/src/test/results/clientpositive/udf_space.q.out
@@ -11,6 +11,8 @@ space(n) - returns n spaces
 Example:
    > SELECT space(2) FROM src LIMIT 1;
   '  '
+Function class:org.apache.hadoop.hive.ql.udf.UDFSpace
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN SELECT
   space(10),
   space(0),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_split.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_split.q.out b/ql/src/test/results/clientpositive/udf_split.q.out
index 0dc9ff3..d62cc61 100644
--- a/ql/src/test/results/clientpositive/udf_split.q.out
+++ b/ql/src/test/results/clientpositive/udf_split.q.out
@@ -11,6 +11,8 @@ split(str, regex) - Splits str around occurances that match regex
 Example:
   > SELECT split('oneAtwoBthreeC', '[ABC]') FROM src LIMIT 1;
   ["one", "two", "three"]
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFSplit
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN SELECT 
   split('a b c', ' '),
   split('oneAtwoBthreeC', '[ABC]'),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_sqrt.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_sqrt.q.out b/ql/src/test/results/clientpositive/udf_sqrt.q.out
index 9062cc6..9798884 100644
--- a/ql/src/test/results/clientpositive/udf_sqrt.q.out
+++ b/ql/src/test/results/clientpositive/udf_sqrt.q.out
@@ -11,3 +11,5 @@ sqrt(x) - returns the square root of x
 Example:
    > SELECT sqrt(4) FROM src LIMIT 1;
   2
+Function class:org.apache.hadoop.hive.ql.udf.UDFSqrt
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_std.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_std.q.out b/ql/src/test/results/clientpositive/udf_std.q.out
index 901e4ec..ba22fc2 100644
--- a/ql/src/test/results/clientpositive/udf_std.q.out
+++ b/ql/src/test/results/clientpositive/udf_std.q.out
@@ -9,3 +9,5 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED std
 POSTHOOK: type: DESCFUNCTION
 std(x) - Returns the standard deviation of a set of numbers
 Synonyms: stddev, stddev_pop
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFStd
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_stddev.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_stddev.q.out b/ql/src/test/results/clientpositive/udf_stddev.q.out
index 96e6172..5a9697a 100644
--- a/ql/src/test/results/clientpositive/udf_stddev.q.out
+++ b/ql/src/test/results/clientpositive/udf_stddev.q.out
@@ -9,3 +9,5 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED stddev
 POSTHOOK: type: DESCFUNCTION
 stddev(x) - Returns the standard deviation of a set of numbers
 Synonyms: std, stddev_pop
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFStd
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_stddev_samp.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_stddev_samp.q.out b/ql/src/test/results/clientpositive/udf_stddev_samp.q.out
index 6619ea1..c6b7adf 100644
--- a/ql/src/test/results/clientpositive/udf_stddev_samp.q.out
+++ b/ql/src/test/results/clientpositive/udf_stddev_samp.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED stddev_samp
 POSTHOOK: type: DESCFUNCTION
 stddev_samp(x) - Returns the sample standard deviation of a set of numbers
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFStdSample
+Function type:BUILTIN
 PREHOOK: query: DESCRIBE FUNCTION stddev_samp
 PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION stddev_samp
@@ -18,3 +20,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED stddev_samp
 POSTHOOK: type: DESCFUNCTION
 stddev_samp(x) - Returns the sample standard deviation of a set of numbers
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFStdSample
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_string.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_string.q.out b/ql/src/test/results/clientpositive/udf_string.q.out
index 1c4d7c4..71b9b29 100644
--- a/ql/src/test/results/clientpositive/udf_string.q.out
+++ b/ql/src/test/results/clientpositive/udf_string.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED string
 POSTHOOK: type: DESCFUNCTION
 There is no documentation for function 'string'
+Function class:org.apache.hadoop.hive.ql.udf.UDFToString
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_struct.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_struct.q.out b/ql/src/test/results/clientpositive/udf_struct.q.out
index 0d2d71d..ec1a6f9 100644
--- a/ql/src/test/results/clientpositive/udf_struct.q.out
+++ b/ql/src/test/results/clientpositive/udf_struct.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED struct
 POSTHOOK: type: DESCFUNCTION
 struct(col1, col2, col3, ...) - Creates a struct with the given field values
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFStruct
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT struct(1), struct(1, "a"), struct(1, "b", 1.5).col1, struct(1, struct("a", 1.5)).col2.col1
 FROM src tablesample (1 rows)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_substr.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_substr.q.out b/ql/src/test/results/clientpositive/udf_substr.q.out
index ab64289..10bb66c 100644
--- a/ql/src/test/results/clientpositive/udf_substr.q.out
+++ b/ql/src/test/results/clientpositive/udf_substr.q.out
@@ -17,6 +17,8 @@ Example:
   'ebook'
   > SELECT substr('Facebook', 5, 1) FROM src LIMIT 1;
   'b'
+Function class:org.apache.hadoop.hive.ql.udf.UDFSubstr
+Function type:BUILTIN
 PREHOOK: query: SELECT
   substr(null, 1), substr(null, 1, 1),
   substr('ABC', null), substr('ABC', null, 1),

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_substring.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_substring.q.out b/ql/src/test/results/clientpositive/udf_substring.q.out
index 0f76298..cd7dce6 100644
--- a/ql/src/test/results/clientpositive/udf_substring.q.out
+++ b/ql/src/test/results/clientpositive/udf_substring.q.out
@@ -19,3 +19,5 @@ Example:
   'ebook'
   > SELECT substring('Facebook', 5, 1) FROM src LIMIT 1;
   'b'
+Function class:org.apache.hadoop.hive.ql.udf.UDFSubstr
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_substring_index.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_substring_index.q.out b/ql/src/test/results/clientpositive/udf_substring_index.q.out
index 29dc988..a519d8e 100644
--- a/ql/src/test/results/clientpositive/udf_substring_index.q.out
+++ b/ql/src/test/results/clientpositive/udf_substring_index.q.out
@@ -12,6 +12,8 @@ If count is positive, everything to the left of the final delimiter (counting fr
 Example:
  > SELECT substring_index('www.apache.org', '.', 2);
  'www.apache'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFSubstringIndex
+Function type:BUILTIN
 PREHOOK: query: explain select substring_index('www.apache.org', '.', 2)
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select substring_index('www.apache.org', '.', 2)

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_subtract.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_subtract.q.out b/ql/src/test/results/clientpositive/udf_subtract.q.out
index a396c98..f1cac38 100644
--- a/ql/src/test/results/clientpositive/udf_subtract.q.out
+++ b/ql/src/test/results/clientpositive/udf_subtract.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED -
 POSTHOOK: type: DESCFUNCTION
 a - b - Returns the difference a-b
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPMinus
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_sum.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_sum.q.out b/ql/src/test/results/clientpositive/udf_sum.q.out
index 2f4e3da..ba04642 100644
--- a/ql/src/test/results/clientpositive/udf_sum.q.out
+++ b/ql/src/test/results/clientpositive/udf_sum.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED sum
 POSTHOOK: type: DESCFUNCTION
 sum(x) - Returns the sum of a set of numbers
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFSum
+Function type:BUILTIN
 PREHOOK: query: DESCRIBE FUNCTION sum
 PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION sum
@@ -18,3 +20,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED sum
 POSTHOOK: type: DESCFUNCTION
 sum(x) - Returns the sum of a set of numbers
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDAFSum
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_tan.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_tan.q.out b/ql/src/test/results/clientpositive/udf_tan.q.out
index 42fef20..27d5671 100644
--- a/ql/src/test/results/clientpositive/udf_tan.q.out
+++ b/ql/src/test/results/clientpositive/udf_tan.q.out
@@ -11,6 +11,8 @@ tan(x) - returns the tangent of x (x is in radians)
 Example:
    > SELECT tan(0) FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.UDFTan
+Function type:BUILTIN
 PREHOOK: query: SELECT tan(null)
 FROM src tablesample (1 rows)
 PREHOOK: type: QUERY
@@ -46,6 +48,8 @@ tan(x) - returns the tangent of x (x is in radians)
 Example:
    > SELECT tan(0) FROM src LIMIT 1;
   1
+Function class:org.apache.hadoop.hive.ql.udf.UDFTan
+Function type:BUILTIN
 PREHOOK: query: SELECT tan(null)
 FROM src tablesample (1 rows)
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_tinyint.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_tinyint.q.out b/ql/src/test/results/clientpositive/udf_tinyint.q.out
index 007a5d1..50373c7 100644
--- a/ql/src/test/results/clientpositive/udf_tinyint.q.out
+++ b/ql/src/test/results/clientpositive/udf_tinyint.q.out
@@ -8,3 +8,5 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESCRIBE FUNCTION EXTENDED tinyint
 POSTHOOK: type: DESCFUNCTION
 There is no documentation for function 'tinyint'
+Function class:org.apache.hadoop.hive.ql.udf.UDFToByte
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_to_date.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_to_date.q.out b/ql/src/test/results/clientpositive/udf_to_date.q.out
index 85676f3..043d084 100644
--- a/ql/src/test/results/clientpositive/udf_to_date.q.out
+++ b/ql/src/test/results/clientpositive/udf_to_date.q.out
@@ -11,3 +11,5 @@ to_date(expr) - Extracts the date part of the date or datetime expression expr
 Example:
    > SELECT to_date('2009-07-30 04:17:52') FROM src LIMIT 1;
   '2009-07-30'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFDate
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_to_unix_timestamp.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_to_unix_timestamp.q.out b/ql/src/test/results/clientpositive/udf_to_unix_timestamp.q.out
index 3d31664..4fd0f41 100644
--- a/ql/src/test/results/clientpositive/udf_to_unix_timestamp.q.out
+++ b/ql/src/test/results/clientpositive/udf_to_unix_timestamp.q.out
@@ -9,6 +9,8 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED to_unix_timestamp
 POSTHOOK: type: DESCFUNCTION
 to_unix_timestamp(date[, pattern]) - Returns the UNIX timestamp
 Converts the specified time to number of seconds since 1970-01-01.
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFToUnixTimeStamp
+Function type:BUILTIN
 PREHOOK: query: create table oneline(key int, value string)
 PREHOOK: type: CREATETABLE
 PREHOOK: Output: database:default

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_to_utc_timestamp.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_to_utc_timestamp.q.out b/ql/src/test/results/clientpositive/udf_to_utc_timestamp.q.out
index 1730f8c..d302c76 100644
--- a/ql/src/test/results/clientpositive/udf_to_utc_timestamp.q.out
+++ b/ql/src/test/results/clientpositive/udf_to_utc_timestamp.q.out
@@ -8,6 +8,8 @@ PREHOOK: type: DESCFUNCTION
 POSTHOOK: query: DESC FUNCTION EXTENDED to_utc_timestamp
 POSTHOOK: type: DESCFUNCTION
 to_utc_timestamp(timestamp, string timezone) - Assumes given timestamp is in given timezone and converts to UTC (as of Hive 0.8.0)
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFToUtcTimestamp
+Function type:BUILTIN
 PREHOOK: query: explain select to_utc_timestamp('2012-02-11 10:30:00', 'PST')
 PREHOOK: type: QUERY
 POSTHOOK: query: explain select to_utc_timestamp('2012-02-11 10:30:00', 'PST')

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_translate.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_translate.q.out b/ql/src/test/results/clientpositive/udf_translate.q.out
index 96f04ab..f7c0a18 100644
--- a/ql/src/test/results/clientpositive/udf_translate.q.out
+++ b/ql/src/test/results/clientpositive/udf_translate.q.out
@@ -20,6 +20,8 @@ If the same character is present multiple times in the input string, the first o
 For example,
 
 translate('abcdef', 'ada', '192') returns '1bc9ef' replaces 'a' with '1' and 'd' with '9' ignoring the second occurence of 'a' in the from string mapping it to '2'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFTranslate
+Function type:BUILTIN
 PREHOOK: query: -- Create some tables to serve some input data
 CREATE TABLE table_input(input STRING)
 PREHOOK: type: CREATETABLE

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_trim.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_trim.q.out b/ql/src/test/results/clientpositive/udf_trim.q.out
index 4cc2a60..d2d9a9b 100644
--- a/ql/src/test/results/clientpositive/udf_trim.q.out
+++ b/ql/src/test/results/clientpositive/udf_trim.q.out
@@ -11,3 +11,5 @@ trim(str) - Removes the leading and trailing space characters from str
 Example:
   > SELECT trim('   facebook  ') FROM src LIMIT 1;
   'facebook'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFTrim
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_trunc.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_trunc.q.out b/ql/src/test/results/clientpositive/udf_trunc.q.out
index 034caab..36b9a13 100644
--- a/ql/src/test/results/clientpositive/udf_trunc.q.out
+++ b/ql/src/test/results/clientpositive/udf_trunc.q.out
@@ -26,6 +26,8 @@ OK
  > SELECT trunc(1234567891.1234567891);
 OK
  1234567891
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFTrunc
+Function type:BUILTIN
 PREHOOK: query: --test string with 'MM' as format
 EXPLAIN
 SELECT

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_ucase.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_ucase.q.out b/ql/src/test/results/clientpositive/udf_ucase.q.out
index fb4abac..c6895a8 100644
--- a/ql/src/test/results/clientpositive/udf_ucase.q.out
+++ b/ql/src/test/results/clientpositive/udf_ucase.q.out
@@ -12,3 +12,5 @@ Synonyms: upper
 Example:
   > SELECT ucase('Facebook') FROM src LIMIT 1;
   'FACEBOOK'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFUpper
+Function type:BUILTIN

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_unhex.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_unhex.q.out b/ql/src/test/results/clientpositive/udf_unhex.q.out
index 1573f15..86e2c1b 100644
--- a/ql/src/test/results/clientpositive/udf_unhex.q.out
+++ b/ql/src/test/results/clientpositive/udf_unhex.q.out
@@ -21,6 +21,8 @@ The characters in the argument string must be legal hexadecimal
 digits: '0' .. '9', 'A' .. 'F', 'a' .. 'f'. If UNHEX() encounters
 any nonhexadecimal digits in the argument, it returns NULL. Also,
 if there are an odd number of characters a leading 0 is appended.
+Function class:org.apache.hadoop.hive.ql.udf.UDFUnhex
+Function type:BUILTIN
 PREHOOK: query: -- Good inputs
 
 SELECT

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_union.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_union.q.out b/ql/src/test/results/clientpositive/udf_union.q.out
index 0b007da..d67c2a2 100644
--- a/ql/src/test/results/clientpositive/udf_union.q.out
+++ b/ql/src/test/results/clientpositive/udf_union.q.out
@@ -11,6 +11,8 @@ create_union(tag, obj1, obj2, obj3, ...) - Creates a union with the object for g
 Example:
   > SELECT create_union(1, 1, "one") FROM src LIMIT 1;
   one
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFUnion
+Function type:BUILTIN
 PREHOOK: query: EXPLAIN
 SELECT create_union(0, key), create_union(if(key<100, 0, 1), 2.0, value),
 create_union(1, "a", struct(2, "b"))

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_unix_timestamp.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_unix_timestamp.q.out b/ql/src/test/results/clientpositive/udf_unix_timestamp.q.out
index a1543d9..fc0de7d 100644
--- a/ql/src/test/results/clientpositive/udf_unix_timestamp.q.out
+++ b/ql/src/test/results/clientpositive/udf_unix_timestamp.q.out
@@ -9,6 +9,8 @@ POSTHOOK: query: DESCRIBE FUNCTION EXTENDED unix_timestamp
 POSTHOOK: type: DESCFUNCTION
 unix_timestamp(date[, pattern]) - Converts the time to a number
 Converts the specified time to number of seconds since 1970-01-01. The unix_timestamp(void) overload is deprecated, use current_timestamp.
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFUnixTimeStamp
+Function type:BUILTIN
 PREHOOK: query: create table oneline(key int, value string)
 PREHOOK: type: CREATETABLE
 PREHOOK: Output: database:default

http://git-wip-us.apache.org/repos/asf/hive/blob/cb7918c6/ql/src/test/results/clientpositive/udf_upper.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/udf_upper.q.out b/ql/src/test/results/clientpositive/udf_upper.q.out
index a8c492a..8061dfb 100644
--- a/ql/src/test/results/clientpositive/udf_upper.q.out
+++ b/ql/src/test/results/clientpositive/udf_upper.q.out
@@ -12,3 +12,5 @@ Synonyms: ucase
 Example:
   > SELECT upper('Facebook') FROM src LIMIT 1;
   'FACEBOOK'
+Function class:org.apache.hadoop.hive.ql.udf.generic.GenericUDFUpper
+Function type:BUILTIN