hive-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jcama...@apache.org
Subject [12/18] hive git commit: HIVE-12994: Implement support for NULLS FIRST/NULLS LAST (Jesus Camacho Rodriguez, reviewed by Ashutosh Chauhan)
Date Wed, 02 Mar 2016 11:00:23 GMT
http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/ptf.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/ptf.q.out b/ql/src/test/results/clientpositive/ptf.q.out
index c8d37df..cdac02a 100644
--- a/ql/src/test/results/clientpositive/ptf.q.out
+++ b/ql/src/test/results/clientpositive/ptf.q.out
@@ -56,7 +56,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -92,7 +92,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -272,7 +272,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -308,7 +308,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -427,7 +427,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -544,7 +544,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: abc
                   name: noop
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -580,7 +580,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -725,7 +725,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -761,7 +761,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -909,7 +909,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -954,7 +954,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col0
                   raw input shape:
                   window functions:
@@ -1095,7 +1095,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: abc
                   name: noop
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col0: int, _col1: string, _col2: string, _col3: string, _col4: string, _col5: int, _col6: string, _col7: double, _col8: string
                   partition by: _col2
                   raw input shape:
@@ -1246,7 +1246,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: abc
                   name: noop
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col0: int, _col1: string, _col2: string, _col3: string, _col4: string, _col5: int, _col6: string, _col7: double, _col8: string
                   partition by: _col2
                   raw input shape:
@@ -1390,7 +1390,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmap
-                    order by: p_name, p_size(DESC)
+                    order by: p_name ASC NULLS FIRST, p_size DESC NULLS LAST
                     output shape: p_name: string, p_mfgr: string, p_size: int
                     partition by: p_mfgr
                     raw input shape:
@@ -1416,7 +1416,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmap
-                  order by: _col1, _col5(DESC)
+                  order by: _col1 ASC NULLS FIRST, _col5 DESC NULLS LAST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -1452,7 +1452,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1, _col5(DESC)
+                  order by: _col1 ASC NULLS FIRST, _col5 DESC NULLS LAST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -1565,7 +1565,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmap
-                    order by: p_name
+                    order by: p_name ASC NULLS FIRST
                     output shape: p_name: string, p_mfgr: string, p_size: int, p_retailprice: double
                     partition by: p_mfgr
                     raw input shape:
@@ -1592,7 +1592,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmap
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -1629,7 +1629,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -1770,7 +1770,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -1806,7 +1806,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -1950,7 +1950,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col2(DESC), _col1
+                  order by: _col2 DESC NULLS LAST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -1964,7 +1964,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmap
-                    order by: _col2(DESC), _col1
+                    order by: _col2 DESC NULLS LAST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int, _col7: double
                     partition by: _col2
                     raw input shape:
@@ -1972,7 +1972,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_2
                     name: noop
-                    order by: _col2(DESC), _col1
+                    order by: _col2 DESC NULLS LAST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int, _col7: double
                     partition by: _col2
                     raw input shape:
@@ -2009,7 +2009,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmap
-                  order by: _col2(DESC), _col1
+                  order by: _col2 DESC NULLS LAST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -2017,7 +2017,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_2
                   name: noop
-                  order by: _col2(DESC), _col1
+                  order by: _col2 DESC NULLS LAST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -2053,7 +2053,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -2204,7 +2204,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -2240,7 +2240,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -2388,7 +2388,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: abc
                   name: noop
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col0: int, _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -2464,7 +2464,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -2620,7 +2620,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -2789,7 +2789,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col0
+                  order by: _col0 ASC NULLS FIRST
                   output shape: _col0: string, _col1: string, _col2: double
                   partition by: _col0
                   raw input shape:
@@ -2825,7 +2825,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col0
                   raw input shape:
                   window functions:
@@ -3005,7 +3005,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -3047,7 +3047,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -3122,7 +3122,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col5
+                  order by: _col5 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -3168,7 +3168,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col3, _col2
+                  order by: _col3 ASC NULLS FIRST, _col2 ASC NULLS FIRST
                   partition by: _col3
                   raw input shape:
                   window functions:
@@ -3413,14 +3413,14 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
                 Partition table definition
                   input alias: ptf_2
                   name: noop
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -3434,7 +3434,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmap
-                    order by: _col2, _col1
+                    order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int
                     partition by: _col2, _col1
                     raw input shape:
@@ -3442,7 +3442,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_2
                     name: noop
-                    order by: _col2, _col1
+                    order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int
                     partition by: _col2, _col1
                     raw input shape:
@@ -3479,7 +3479,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmap
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -3487,7 +3487,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_2
                   name: noop
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -3523,7 +3523,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   partition by: _col2, _col1
                   raw input shape:
                   window functions:
@@ -3698,14 +3698,14 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
                 Partition table definition
                   input alias: ptf_2
                   name: noop
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -3741,7 +3741,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -3777,7 +3777,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -3813,7 +3813,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -3983,14 +3983,14 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
                 Partition table definition
                   input alias: ptf_2
                   name: noop
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -4026,14 +4026,14 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
                 Partition table definition
                   input alias: ptf_2
                   name: noop
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -4069,7 +4069,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -4240,14 +4240,14 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
                 Partition table definition
                   input alias: ptf_2
                   name: noop
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -4283,7 +4283,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -4297,7 +4297,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmap
-                    order by: _col2, _col1
+                    order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int
                     partition by: _col2, _col1
                     raw input shape:
@@ -4335,7 +4335,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmap
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -4372,7 +4372,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   partition by: _col2, _col1
                   raw input shape:
                   window functions:
@@ -4544,7 +4544,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -4558,7 +4558,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmap
-                    order by: _col2
+                    order by: _col2 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int
                     partition by: _col2
                     raw input shape:
@@ -4566,7 +4566,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_2
                     name: noop
-                    order by: _col2
+                    order by: _col2 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int
                     partition by: _col2
                     raw input shape:
@@ -4603,7 +4603,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmap
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -4611,7 +4611,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_2
                   name: noop
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -4647,7 +4647,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   partition by: _col2, _col1
                   raw input shape:
                   window functions:
@@ -4813,14 +4813,14 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
                 Partition table definition
                   input alias: ptf_2
                   name: noop
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -4834,7 +4834,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmap
-                    order by: _col2, _col1
+                    order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int
                     partition by: _col2, _col1
                     raw input shape:
@@ -4872,7 +4872,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmap
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -4909,7 +4909,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/ptf_matchpath.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/ptf_matchpath.q.out b/ql/src/test/results/clientpositive/ptf_matchpath.q.out
index 042982f..beb4e28 100644
--- a/ql/src/test/results/clientpositive/ptf_matchpath.q.out
+++ b/ql/src/test/results/clientpositive/ptf_matchpath.q.out
@@ -94,7 +94,7 @@ STAGE PLANS:
                   input alias: ptf_1
                   arguments: 'LATE.LATE+', 'LATE', (_col5 > 15.0), 'origin_city_name, fl_num, year, month, day_of_month, size(tpath) as sz, tpath[0].day_of_month as tpath'
                   name: matchpath
-                  order by: _col2, _col3, _col4
+                  order by: _col2 ASC NULLS FIRST, _col3 ASC NULLS FIRST, _col4 ASC NULLS FIRST
                   output shape: tpath: int
                   partition by: _col6
                   raw input shape:
@@ -214,7 +214,7 @@ STAGE PLANS:
                   input alias: ptf_1
                   arguments: 'LATE.LATE+', 'LATE', (_col5 > 15.0), 'origin_city_name, fl_num, year, month, day_of_month, size(tpath) as sz, tpath[0].day_of_month as tpath'
                   name: matchpath
-                  order by: _col6, _col2, _col3, _col4
+                  order by: _col6 ASC NULLS FIRST, _col2 ASC NULLS FIRST, _col3 ASC NULLS FIRST, _col4 ASC NULLS FIRST
                   output shape: tpath: int
                   partition by: 0
                   raw input shape:
@@ -331,7 +331,7 @@ STAGE PLANS:
                   input alias: ptf_1
                   arguments: 'LATE.LATE+', 'LATE', (_col5 > 15.0), 'origin_city_name, fl_num, year, month, day_of_month, size(tpath) as sz, tpath[0].day_of_month as tpath'
                   name: matchpath
-                  order by: _col6, _col2, _col3, _col4
+                  order by: _col6 ASC NULLS FIRST, _col2 ASC NULLS FIRST, _col3 ASC NULLS FIRST, _col4 ASC NULLS FIRST
                   output shape: tpath: int
                   partition by: 0
                   raw input shape:

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/ptf_streaming.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/ptf_streaming.q.out b/ql/src/test/results/clientpositive/ptf_streaming.q.out
index 35c6d04..d1b49db 100644
--- a/ql/src/test/results/clientpositive/ptf_streaming.q.out
+++ b/ql/src/test/results/clientpositive/ptf_streaming.q.out
@@ -56,7 +56,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopstreaming
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -92,7 +92,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -272,7 +272,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopstreaming
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -308,7 +308,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -430,7 +430,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: abc
                   name: noopstreaming
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col0: int, _col1: string, _col2: string, _col3: string, _col4: string, _col5: int, _col6: string, _col7: double, _col8: string
                   partition by: _col2
                   raw input shape:
@@ -570,7 +570,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmapstreaming
-                    order by: p_name, p_size(DESC)
+                    order by: p_name ASC NULLS FIRST, p_size DESC NULLS LAST
                     output shape: p_name: string, p_mfgr: string, p_size: int
                     partition by: p_mfgr
                     raw input shape:
@@ -596,7 +596,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmapstreaming
-                  order by: _col1, _col5(DESC)
+                  order by: _col1 ASC NULLS FIRST, _col5 DESC NULLS LAST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -632,7 +632,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1, _col5(DESC)
+                  order by: _col1 ASC NULLS FIRST, _col5 DESC NULLS LAST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -745,7 +745,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmapstreaming
-                    order by: p_name
+                    order by: p_name ASC NULLS FIRST
                     output shape: p_name: string, p_mfgr: string, p_size: int, p_retailprice: double
                     partition by: p_mfgr
                     raw input shape:
@@ -772,7 +772,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmapstreaming
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -809,7 +809,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -953,7 +953,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopstreaming
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -967,7 +967,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmapstreaming
-                    order by: _col2, _col1
+                    order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int, _col7: double
                     partition by: _col2
                     raw input shape:
@@ -975,7 +975,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_2
                     name: noopstreaming
-                    order by: _col2, _col1
+                    order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int, _col7: double
                     partition by: _col2
                     raw input shape:
@@ -1012,7 +1012,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmapstreaming
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -1020,7 +1020,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_2
                   name: noopstreaming
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -1056,7 +1056,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -1202,7 +1202,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopstreaming
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -1216,7 +1216,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmap
-                    order by: _col2, _col1
+                    order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int, _col7: double
                     partition by: _col2
                     raw input shape:
@@ -1224,7 +1224,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_2
                     name: noopstreaming
-                    order by: _col2, _col1
+                    order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int, _col7: double
                     partition by: _col2
                     raw input shape:
@@ -1261,7 +1261,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmap
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -1269,7 +1269,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_2
                   name: noopstreaming
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -1305,7 +1305,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -1451,7 +1451,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopstreaming
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -1465,7 +1465,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmapstreaming
-                    order by: _col2, _col1
+                    order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int, _col7: double
                     partition by: _col2
                     raw input shape:
@@ -1473,7 +1473,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_2
                     name: noop
-                    order by: _col2, _col1
+                    order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int, _col7: double
                     partition by: _col2
                     raw input shape:
@@ -1510,7 +1510,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmapstreaming
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -1518,7 +1518,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_2
                   name: noop
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -1554,7 +1554,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -1704,7 +1704,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: abc
                   name: noopstreaming
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   output shape: _col0: int, _col1: string, _col2: string, _col5: int, _col7: double
                   partition by: _col2
                   raw input shape:
@@ -1780,7 +1780,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -1959,14 +1959,14 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopstreaming
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
                 Partition table definition
                   input alias: ptf_2
                   name: noop
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -1980,7 +1980,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmap
-                    order by: _col2, _col1
+                    order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int
                     partition by: _col2, _col1
                     raw input shape:
@@ -1988,7 +1988,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_2
                     name: noopstreaming
-                    order by: _col2, _col1
+                    order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int
                     partition by: _col2, _col1
                     raw input shape:
@@ -2025,7 +2025,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmap
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -2033,7 +2033,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_2
                   name: noopstreaming
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -2069,7 +2069,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   partition by: _col2, _col1
                   raw input shape:
                   window functions:
@@ -2244,14 +2244,14 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopstreaming
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
                 Partition table definition
                   input alias: ptf_2
                   name: noop
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -2287,7 +2287,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopstreaming
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -2323,7 +2323,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noop
-                  order by: _col2
+                  order by: _col2 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2
                   raw input shape:
@@ -2359,7 +2359,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -2527,14 +2527,14 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopstreaming
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
                 Partition table definition
                   input alias: ptf_2
                   name: noop
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -2548,7 +2548,7 @@ STAGE PLANS:
                   Partition table definition
                     input alias: ptf_1
                     name: noopwithmapstreaming
-                    order by: _col2, _col1
+                    order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                     output shape: _col1: string, _col2: string, _col5: int
                     partition by: _col2, _col1
                     raw input shape:
@@ -2586,7 +2586,7 @@ STAGE PLANS:
                 Partition table definition
                   input alias: ptf_1
                   name: noopwithmapstreaming
-                  order by: _col2, _col1
+                  order by: _col2 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   output shape: _col1: string, _col2: string, _col5: int
                   partition by: _col2, _col1
                   raw input shape:
@@ -2623,7 +2623,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/ptfgroupbyjoin.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/ptfgroupbyjoin.q.out b/ql/src/test/results/clientpositive/ptfgroupbyjoin.q.out
index cddee56..7efc492 100644
--- a/ql/src/test/results/clientpositive/ptfgroupbyjoin.q.out
+++ b/ql/src/test/results/clientpositive/ptfgroupbyjoin.q.out
@@ -237,7 +237,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col0, _col1
+                  order by: _col0 ASC NULLS FIRST, _col1 ASC NULLS FIRST
                   partition by: _col0, _col1
                   raw input shape:
                   window functions:

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/push_or.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/push_or.q.out b/ql/src/test/results/clientpositive/push_or.q.out
index 83680e1..bc5c930 100644
--- a/ql/src/test/results/clientpositive/push_or.q.out
+++ b/ql/src/test/results/clientpositive/push_or.q.out
@@ -67,11 +67,13 @@ TOK_QUERY
                5
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               key
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  key
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               ds
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  ds
 
 
 STAGE DEPENDENCIES:
@@ -96,6 +98,7 @@ STAGE PLANS:
                 Statistics: Num rows: 40 Data size: 320 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: int), _col2 (type: string)
+                  null sort order: aa
                   sort order: ++
                   Statistics: Num rows: 40 Data size: 320 Basic stats: COMPLETE Column stats: NONE
                   tag: -1

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/quotedid_basic.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/quotedid_basic.q.out b/ql/src/test/results/clientpositive/quotedid_basic.q.out
index 052e4d0..9ca3f6a 100644
--- a/ql/src/test/results/clientpositive/quotedid_basic.q.out
+++ b/ql/src/test/results/clientpositive/quotedid_basic.q.out
@@ -214,7 +214,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:
@@ -322,7 +322,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: _col1
+                  order by: _col1 ASC NULLS FIRST
                   partition by: _col2
                   raw input shape:
                   window functions:

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/reduce_deduplicate.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/reduce_deduplicate.q.out b/ql/src/test/results/clientpositive/reduce_deduplicate.q.out
index e82f31a..96b51d7 100644
--- a/ql/src/test/results/clientpositive/reduce_deduplicate.q.out
+++ b/ql/src/test/results/clientpositive/reduce_deduplicate.q.out
@@ -53,6 +53,7 @@ STAGE PLANS:
               Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE
               Reduce Output Operator
                 key expressions: _col0 (type: string)
+                null sort order: a
                 sort order: +
                 Map-reduce partition columns: _col0 (type: string)
                 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE
@@ -410,6 +411,7 @@ STAGE PLANS:
                   Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE
                   Reduce Output Operator
                     key expressions: _col1 (type: string)
+                    null sort order: a
                     sort order: +
                     Map-reduce partition columns: _col1 (type: string)
                     Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/regexp_extract.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/regexp_extract.q.out b/ql/src/test/results/clientpositive/regexp_extract.q.out
index d2a0099..6622278 100644
--- a/ql/src/test/results/clientpositive/regexp_extract.q.out
+++ b/ql/src/test/results/clientpositive/regexp_extract.q.out
@@ -121,6 +121,7 @@ STAGE PLANS:
                   Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE
                   Reduce Output Operator
                     key expressions: _col0 (type: string)
+                    null sort order: a
                     sort order: +
                     Map-reduce partition columns: _col0 (type: string)
                     Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE
@@ -437,6 +438,7 @@ STAGE PLANS:
                   Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE
                   Reduce Output Operator
                     key expressions: _col0 (type: string)
+                    null sort order: a
                     sort order: +
                     Map-reduce partition columns: _col0 (type: string)
                     Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/router_join_ppr.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/router_join_ppr.q.out b/ql/src/test/results/clientpositive/router_join_ppr.q.out
index c9432c7..8a10129 100644
--- a/ql/src/test/results/clientpositive/router_join_ppr.q.out
+++ b/ql/src/test/results/clientpositive/router_join_ppr.q.out
@@ -126,6 +126,7 @@ STAGE PLANS:
                 Statistics: Num rows: 55 Data size: 584 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: string)
+                  null sort order: a
                   sort order: +
                   Map-reduce partition columns: _col0 (type: string)
                   Statistics: Num rows: 55 Data size: 584 Basic stats: COMPLETE Column stats: NONE
@@ -146,6 +147,7 @@ STAGE PLANS:
                 Statistics: Num rows: 222 Data size: 2358 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: string)
+                  null sort order: a
                   sort order: +
                   Map-reduce partition columns: _col0 (type: string)
                   Statistics: Num rows: 222 Data size: 2358 Basic stats: COMPLETE Column stats: NONE
@@ -603,6 +605,7 @@ STAGE PLANS:
                 Statistics: Num rows: 111 Data size: 1179 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: string)
+                  null sort order: a
                   sort order: +
                   Map-reduce partition columns: _col0 (type: string)
                   Statistics: Num rows: 111 Data size: 1179 Basic stats: COMPLETE Column stats: NONE
@@ -623,6 +626,7 @@ STAGE PLANS:
                 Statistics: Num rows: 55 Data size: 584 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: string)
+                  null sort order: a
                   sort order: +
                   Map-reduce partition columns: _col0 (type: string)
                   Statistics: Num rows: 55 Data size: 584 Basic stats: COMPLETE Column stats: NONE
@@ -981,6 +985,7 @@ STAGE PLANS:
                 Statistics: Num rows: 55 Data size: 584 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: string)
+                  null sort order: a
                   sort order: +
                   Map-reduce partition columns: _col0 (type: string)
                   Statistics: Num rows: 55 Data size: 584 Basic stats: COMPLETE Column stats: NONE
@@ -1001,6 +1006,7 @@ STAGE PLANS:
                 Statistics: Num rows: 111 Data size: 1179 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: string)
+                  null sort order: a
                   sort order: +
                   Map-reduce partition columns: _col0 (type: string)
                   Statistics: Num rows: 111 Data size: 1179 Basic stats: COMPLETE Column stats: NONE
@@ -1355,6 +1361,7 @@ STAGE PLANS:
                 Statistics: Num rows: 12 Data size: 127 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: string)
+                  null sort order: a
                   sort order: +
                   Map-reduce partition columns: _col0 (type: string)
                   Statistics: Num rows: 12 Data size: 127 Basic stats: COMPLETE Column stats: NONE
@@ -1375,6 +1382,7 @@ STAGE PLANS:
                 Statistics: Num rows: 6 Data size: 63 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: string)
+                  null sort order: a
                   sort order: +
                   Map-reduce partition columns: _col0 (type: string)
                   Statistics: Num rows: 6 Data size: 63 Basic stats: COMPLETE Column stats: NONE

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/sample10.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/sample10.q.out b/ql/src/test/results/clientpositive/sample10.q.out
index 8ccb577..bf0cb59 100644
--- a/ql/src/test/results/clientpositive/sample10.q.out
+++ b/ql/src/test/results/clientpositive/sample10.q.out
@@ -77,8 +77,9 @@ TOK_QUERY
             ds
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               ds
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  ds
 
 
 STAGE DEPENDENCIES:
@@ -111,6 +112,7 @@ STAGE PLANS:
                   Statistics: Num rows: 20 Data size: 120 Basic stats: COMPLETE Column stats: NONE
                   Reduce Output Operator
                     key expressions: _col0 (type: string)
+                    null sort order: a
                     sort order: +
                     Map-reduce partition columns: _col0 (type: string)
                     Statistics: Num rows: 20 Data size: 120 Basic stats: COMPLETE Column stats: NONE
@@ -350,6 +352,7 @@ STAGE PLANS:
             GatherStats: false
             Reduce Output Operator
               key expressions: _col0 (type: string)
+              null sort order: a
               sort order: +
               Statistics: Num rows: 10 Data size: 60 Basic stats: COMPLETE Column stats: NONE
               tag: -1

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/sample6.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/sample6.q.out b/ql/src/test/results/clientpositive/sample6.q.out
index 38e21de..c2be9d6 100644
--- a/ql/src/test/results/clientpositive/sample6.q.out
+++ b/ql/src/test/results/clientpositive/sample6.q.out
@@ -624,11 +624,13 @@ TOK_QUERY
                   s
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               key
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  key
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               value
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  value
 
 
 STAGE DEPENDENCIES:
@@ -654,6 +656,7 @@ STAGE PLANS:
                 Statistics: Num rows: 500 Data size: 5301 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: int), _col1 (type: string)
+                  null sort order: aa
                   sort order: ++
                   Statistics: Num rows: 500 Data size: 5301 Basic stats: COMPLETE Column stats: NONE
                   tag: -1
@@ -1023,11 +1026,13 @@ TOK_QUERY
                   s
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               key
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  key
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               value
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  value
 
 
 STAGE DEPENDENCIES:
@@ -1053,6 +1058,7 @@ STAGE PLANS:
                 Statistics: Num rows: 500 Data size: 5301 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: int), _col1 (type: string)
+                  null sort order: aa
                   sort order: ++
                   Statistics: Num rows: 500 Data size: 5301 Basic stats: COMPLETE Column stats: NONE
                   tag: -1
@@ -1676,11 +1682,13 @@ TOK_QUERY
                   s
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               key
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  key
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               value
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  value
 
 
 STAGE DEPENDENCIES:
@@ -1705,6 +1713,7 @@ STAGE PLANS:
                 Statistics: Num rows: 500 Data size: 5301 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: int), _col1 (type: string)
+                  null sort order: aa
                   sort order: ++
                   Statistics: Num rows: 500 Data size: 5301 Basic stats: COMPLETE Column stats: NONE
                   tag: -1
@@ -2171,11 +2180,13 @@ TOK_QUERY
                   s
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               key
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  key
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               value
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  value
 
 
 STAGE DEPENDENCIES:
@@ -2200,6 +2211,7 @@ STAGE PLANS:
                 Statistics: Num rows: 500 Data size: 5301 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: int), _col1 (type: string)
+                  null sort order: aa
                   sort order: ++
                   Statistics: Num rows: 500 Data size: 5301 Basic stats: COMPLETE Column stats: NONE
                   tag: -1
@@ -2652,11 +2664,13 @@ TOK_QUERY
                   s
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               key
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  key
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               value
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  value
 
 
 STAGE DEPENDENCIES:
@@ -2682,6 +2696,7 @@ STAGE PLANS:
                 Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: int), _col1 (type: string)
+                  null sort order: aa
                   sort order: ++
                   Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE
                   tag: -1
@@ -2981,11 +2996,13 @@ TOK_QUERY
                   s
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               key
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  key
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               value
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  value
 
 
 STAGE DEPENDENCIES:
@@ -3011,6 +3028,7 @@ STAGE PLANS:
                 Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: int), _col1 (type: string)
+                  null sort order: aa
                   sort order: ++
                   Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE
                   tag: -1
@@ -3187,11 +3205,13 @@ TOK_QUERY
                   s
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               key
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  key
          TOK_TABSORTCOLNAMEASC
-            TOK_TABLE_OR_COL
-               value
+            TOK_NULLS_FIRST
+               TOK_TABLE_OR_COL
+                  value
 
 
 STAGE DEPENDENCIES:
@@ -3217,6 +3237,7 @@ STAGE PLANS:
                 Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: int), _col1 (type: string)
+                  null sort order: aa
                   sort order: ++
                   Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE
                   tag: -1

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/sample8.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/sample8.q.out b/ql/src/test/results/clientpositive/sample8.q.out
index 63eeb35..a5ae1ef 100644
--- a/ql/src/test/results/clientpositive/sample8.q.out
+++ b/ql/src/test/results/clientpositive/sample8.q.out
@@ -102,6 +102,7 @@ STAGE PLANS:
               Statistics: Num rows: 125 Data size: 1328 Basic stats: COMPLETE Column stats: NONE
               Reduce Output Operator
                 key expressions: key (type: string), value (type: string)
+                null sort order: aa
                 sort order: ++
                 Map-reduce partition columns: key (type: string), value (type: string)
                 Statistics: Num rows: 125 Data size: 1328 Basic stats: COMPLETE Column stats: NONE
@@ -117,6 +118,7 @@ STAGE PLANS:
               Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE
               Reduce Output Operator
                 key expressions: key (type: string), value (type: string)
+                null sort order: aa
                 sort order: ++
                 Map-reduce partition columns: key (type: string), value (type: string)
                 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/semijoin2.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/semijoin2.q.out b/ql/src/test/results/clientpositive/semijoin2.q.out
index 3fe0a89..62e1961 100644
--- a/ql/src/test/results/clientpositive/semijoin2.q.out
+++ b/ql/src/test/results/clientpositive/semijoin2.q.out
@@ -154,7 +154,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: (_col98 + _col16), floor(_col21)(DESC)
+                  order by: (_col98 + _col16) ASC NULLS FIRST, floor(_col21) DESC NULLS LAST
                   partition by: (_col98 + _col16)
                   raw input shape:
                   window functions:
@@ -201,7 +201,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: (_col99 + _col17)(DESC), floor(_col22)(DESC)
+                  order by: (_col99 + _col17) DESC NULLS LAST, floor(_col22) DESC NULLS LAST
                   partition by: (_col99 + _col17)
                   raw input shape:
                   window functions:

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/semijoin4.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/semijoin4.q.out b/ql/src/test/results/clientpositive/semijoin4.q.out
index 4dca08b..2aaf7ea 100644
--- a/ql/src/test/results/clientpositive/semijoin4.q.out
+++ b/ql/src/test/results/clientpositive/semijoin4.q.out
@@ -172,7 +172,7 @@ STAGE PLANS:
                 Windowing table definition
                   input alias: ptf_1
                   name: windowingtablefunction
-                  order by: (UDFToShort(_col2) + _col0), floor(_col1)(DESC)
+                  order by: (UDFToShort(_col2) + _col0) ASC NULLS FIRST, floor(_col1) DESC NULLS LAST
                   partition by: (UDFToShort(_col2) + _col0)
                   raw input shape:
                   window functions:

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/show_create_table_alter.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/show_create_table_alter.q.out b/ql/src/test/results/clientpositive/show_create_table_alter.q.out
index 32819ea..78a34de 100644
--- a/ql/src/test/results/clientpositive/show_create_table_alter.q.out
+++ b/ql/src/test/results/clientpositive/show_create_table_alter.q.out
@@ -24,7 +24,7 @@ CREATE EXTERNAL TABLE `tmp_showcrt1`(
 CLUSTERED BY ( 
   key) 
 SORTED BY ( 
-  value DESC) 
+  value DESC NULLS LAST) 
 INTO 5 BUCKETS
 ROW FORMAT SERDE 
   'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe' 
@@ -59,7 +59,7 @@ COMMENT 'temporary table'
 CLUSTERED BY ( 
   key) 
 SORTED BY ( 
-  value DESC) 
+  value DESC NULLS LAST) 
 INTO 5 BUCKETS
 ROW FORMAT SERDE 
   'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe' 
@@ -98,7 +98,7 @@ COMMENT 'changed comment'
 CLUSTERED BY ( 
   key) 
 SORTED BY ( 
-  value DESC) 
+  value DESC NULLS LAST) 
 INTO 5 BUCKETS
 ROW FORMAT SERDE 
   'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe' 
@@ -136,7 +136,7 @@ COMMENT 'changed comment'
 CLUSTERED BY ( 
   key) 
 SORTED BY ( 
-  value DESC) 
+  value DESC NULLS LAST) 
 INTO 5 BUCKETS
 ROW FORMAT SERDE 
   'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe' 
@@ -174,7 +174,7 @@ COMMENT 'changed comment'
 CLUSTERED BY ( 
   key) 
 SORTED BY ( 
-  value DESC) 
+  value DESC NULLS LAST) 
 INTO 5 BUCKETS
 ROW FORMAT SERDE 
   'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe' 

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/smb_mapjoin_11.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/smb_mapjoin_11.q.out b/ql/src/test/results/clientpositive/smb_mapjoin_11.q.out
index a05dd6f..b407402 100644
--- a/ql/src/test/results/clientpositive/smb_mapjoin_11.q.out
+++ b/ql/src/test/results/clientpositive/smb_mapjoin_11.q.out
@@ -149,6 +149,7 @@ STAGE PLANS:
                   expressions: _col0 (type: int), _col7 (type: string)
                   outputColumnNames: _col0, _col1
                   Reduce Output Operator
+                    null sort order: 
                     sort order: 
                     Map-reduce partition columns: _col0 (type: int)
                     tag: -1

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/smb_mapjoin_13.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/smb_mapjoin_13.q.out b/ql/src/test/results/clientpositive/smb_mapjoin_13.q.out
index fc12e35..a5a60e4 100644
--- a/ql/src/test/results/clientpositive/smb_mapjoin_13.q.out
+++ b/ql/src/test/results/clientpositive/smb_mapjoin_13.q.out
@@ -112,10 +112,11 @@ TOK_QUERY
             TOK_ALLCOLREF
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            .
-               TOK_TABLE_OR_COL
-                  a
-               key
+            TOK_NULLS_FIRST
+               .
+                  TOK_TABLE_OR_COL
+                     a
+                  key
       TOK_LIMIT
          10
 
@@ -150,6 +151,7 @@ STAGE PLANS:
                   outputColumnNames: _col0, _col1, _col2, _col3
                   Reduce Output Operator
                     key expressions: _col0 (type: int)
+                    null sort order: a
                     sort order: +
                     tag: -1
                     TopN: 10
@@ -310,10 +312,11 @@ TOK_QUERY
             TOK_ALLCOLREF
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            .
-               TOK_TABLE_OR_COL
-                  a
-               key
+            TOK_NULLS_FIRST
+               .
+                  TOK_TABLE_OR_COL
+                     a
+                  key
       TOK_LIMIT
          10
 
@@ -372,6 +375,7 @@ STAGE PLANS:
                   Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE
                   Reduce Output Operator
                     key expressions: _col0 (type: int)
+                    null sort order: a
                     sort order: +
                     Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE
                     tag: -1

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/smb_mapjoin_15.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/smb_mapjoin_15.q.out b/ql/src/test/results/clientpositive/smb_mapjoin_15.q.out
index 6f6d80b..cdf2359 100644
--- a/ql/src/test/results/clientpositive/smb_mapjoin_15.q.out
+++ b/ql/src/test/results/clientpositive/smb_mapjoin_15.q.out
@@ -84,10 +84,11 @@ TOK_QUERY
             TOK_ALLCOLREF
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            .
-               TOK_TABLE_OR_COL
-                  a
-               key
+            TOK_NULLS_FIRST
+               .
+                  TOK_TABLE_OR_COL
+                     a
+                  key
       TOK_LIMIT
          10
 
@@ -122,6 +123,7 @@ STAGE PLANS:
                   outputColumnNames: _col0, _col1, _col2, _col3
                   Reduce Output Operator
                     key expressions: _col0 (type: int)
+                    null sort order: a
                     sort order: +
                     tag: -1
                     TopN: 10
@@ -344,10 +346,11 @@ TOK_QUERY
             TOK_ALLCOLREF
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            .
-               TOK_TABLE_OR_COL
-                  a
-               key
+            TOK_NULLS_FIRST
+               .
+                  TOK_TABLE_OR_COL
+                     a
+                  key
       TOK_LIMIT
          10
 
@@ -382,6 +385,7 @@ STAGE PLANS:
                   outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
                   Reduce Output Operator
                     key expressions: _col0 (type: int)
+                    null sort order: a
                     sort order: +
                     tag: -1
                     TopN: 10
@@ -552,10 +556,11 @@ TOK_QUERY
             TOK_ALLCOLREF
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            .
-               TOK_TABLE_OR_COL
-                  a
-               key
+            TOK_NULLS_FIRST
+               .
+                  TOK_TABLE_OR_COL
+                     a
+                  key
       TOK_LIMIT
          10
 
@@ -590,6 +595,7 @@ STAGE PLANS:
                   outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5
                   Reduce Output Operator
                     key expressions: _col0 (type: int)
+                    null sort order: a
                     sort order: +
                     tag: -1
                     TopN: 10
@@ -760,10 +766,11 @@ TOK_QUERY
             TOK_ALLCOLREF
       TOK_ORDERBY
          TOK_TABSORTCOLNAMEASC
-            .
-               TOK_TABLE_OR_COL
-                  a
-               key
+            TOK_NULLS_FIRST
+               .
+                  TOK_TABLE_OR_COL
+                     a
+                  key
       TOK_LIMIT
          10
 
@@ -830,6 +837,7 @@ STAGE PLANS:
                   Statistics: Num rows: 550 Data size: 7939 Basic stats: COMPLETE Column stats: NONE
                   Reduce Output Operator
                     key expressions: _col0 (type: int)
+                    null sort order: a
                     sort order: +
                     Statistics: Num rows: 550 Data size: 7939 Basic stats: COMPLETE Column stats: NONE
                     tag: -1

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out b/ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out
index 48767bd..29dee15 100644
--- a/ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out
+++ b/ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out
@@ -140,6 +140,7 @@ STAGE PLANS:
                   mode: hash
                   outputColumnNames: _col0
                   Reduce Output Operator
+                    null sort order: 
                     sort order: 
                     tag: -1
                     value expressions: _col0 (type: bigint)

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/sort_merge_join_desc_6.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/sort_merge_join_desc_6.q.out b/ql/src/test/results/clientpositive/sort_merge_join_desc_6.q.out
index dd2f849..b1f99e5 100644
--- a/ql/src/test/results/clientpositive/sort_merge_join_desc_6.q.out
+++ b/ql/src/test/results/clientpositive/sort_merge_join_desc_6.q.out
@@ -218,6 +218,7 @@ STAGE PLANS:
                   outputColumnNames: _col0
                   Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE
                   Reduce Output Operator
+                    null sort order: 
                     sort order: 
                     Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE
                     tag: -1

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/sort_merge_join_desc_7.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/sort_merge_join_desc_7.q.out b/ql/src/test/results/clientpositive/sort_merge_join_desc_7.q.out
index 76efef5..f788fec 100644
--- a/ql/src/test/results/clientpositive/sort_merge_join_desc_7.q.out
+++ b/ql/src/test/results/clientpositive/sort_merge_join_desc_7.q.out
@@ -291,6 +291,7 @@ STAGE PLANS:
                   outputColumnNames: _col0
                   Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE
                   Reduce Output Operator
+                    null sort order: 
                     sort order: 
                     Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE
                     tag: -1

http://git-wip-us.apache.org/repos/asf/hive/blob/9350b693/ql/src/test/results/clientpositive/spark/auto_join_reordering_values.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/spark/auto_join_reordering_values.q.out b/ql/src/test/results/clientpositive/spark/auto_join_reordering_values.q.out
index 73f62e9..d6c5ae3 100644
--- a/ql/src/test/results/clientpositive/spark/auto_join_reordering_values.q.out
+++ b/ql/src/test/results/clientpositive/spark/auto_join_reordering_values.q.out
@@ -197,6 +197,7 @@ STAGE PLANS:
                       Statistics: Num rows: 1 Data size: 36 Basic stats: COMPLETE Column stats: NONE
                       Reduce Output Operator
                         key expressions: _col1 (type: string)
+                        null sort order: a
                         sort order: +
                         Map-reduce partition columns: _col1 (type: string)
                         Statistics: Num rows: 1 Data size: 36 Basic stats: COMPLETE Column stats: NONE
@@ -268,6 +269,7 @@ STAGE PLANS:
                       Statistics: Num rows: 1 Data size: 36 Basic stats: COMPLETE Column stats: NONE
                       Reduce Output Operator
                         key expressions: _col0 (type: string)
+                        null sort order: a
                         sort order: +
                         Map-reduce partition columns: _col0 (type: string)
                         Statistics: Num rows: 1 Data size: 36 Basic stats: COMPLETE Column stats: NONE
@@ -338,6 +340,7 @@ STAGE PLANS:
                       Statistics: Num rows: 1 Data size: 36 Basic stats: COMPLETE Column stats: NONE
                       Reduce Output Operator
                         key expressions: _col0 (type: int)
+                        null sort order: a
                         sort order: +
                         Map-reduce partition columns: _col0 (type: int)
                         Statistics: Num rows: 1 Data size: 36 Basic stats: COMPLETE Column stats: NONE
@@ -408,6 +411,7 @@ STAGE PLANS:
                       Statistics: Num rows: 1 Data size: 36 Basic stats: COMPLETE Column stats: NONE
                       Reduce Output Operator
                         key expressions: _col0 (type: int)
+                        null sort order: a
                         sort order: +
                         Map-reduce partition columns: _col0 (type: int)
                         Statistics: Num rows: 1 Data size: 36 Basic stats: COMPLETE Column stats: NONE
@@ -478,6 +482,7 @@ STAGE PLANS:
                       Statistics: Num rows: 100 Data size: 288 Basic stats: COMPLETE Column stats: NONE
                       Reduce Output Operator
                         key expressions: _col0 (type: int)
+                        null sort order: a
                         sort order: +
                         Map-reduce partition columns: _col0 (type: int)
                         Statistics: Num rows: 100 Data size: 288 Basic stats: COMPLETE Column stats: NONE
@@ -545,6 +550,7 @@ STAGE PLANS:
                 Statistics: Num rows: 1 Data size: 39 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col0 (type: int)
+                  null sort order: a
                   sort order: +
                   Map-reduce partition columns: _col0 (type: int)
                   Statistics: Num rows: 1 Data size: 39 Basic stats: COMPLETE Column stats: NONE
@@ -564,6 +570,7 @@ STAGE PLANS:
                 Statistics: Num rows: 1 Data size: 42 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col2 (type: int)
+                  null sort order: a
                   sort order: +
                   Map-reduce partition columns: _col2 (type: int)
                   Statistics: Num rows: 1 Data size: 42 Basic stats: COMPLETE Column stats: NONE
@@ -583,6 +590,7 @@ STAGE PLANS:
                 Statistics: Num rows: 1 Data size: 46 Basic stats: COMPLETE Column stats: NONE
                 Reduce Output Operator
                   key expressions: _col3 (type: int)
+                  null sort order: a
                   sort order: +
                   Map-reduce partition columns: _col3 (type: int)
                   Statistics: Num rows: 1 Data size: 46 Basic stats: COMPLETE Column stats: NONE


Mime
View raw message