Repository: hive Updated Branches: refs/heads/master 318c2ef2f -> 13f8cfece
http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out b/ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out index cf975d1..9b9fb71 100644 --- a/ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out +++ b/ql/src/test/results/clientpositive/vector_decimal_aggregate.q.out @@ -110,14 +110,14 @@ POSTHOOK: query: SELECT cint, POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_vgby #### A masked pattern was here #### --3728 6 5831542.269248378 -3367.6517567568 5817556.0411483778 6 6984454.211097692 -4033.445769230769 6967702.8672438458471 --563 2 -515.621072973 -3367.6517567568 -3883.2728297298 2 -617.5607769230769 -4033.445769230769 -4651.0065461538459 -253665376 1024 9767.0054054054 -9779.5486486487 -347484.0818378374 1024 11697.969230769231 -11712.99230769231 -416182.64030769233089 -528534767 1024 5831542.269248378 -9777.1594594595 11646372.8607481068 1024 6984454.211097692 -11710.130769230771 13948892.79980307629003 -626923679 1024 9723.4027027027 -9778.9513513514 10541.0525297287 1024 11645.746153846154 -11712.276923076923 12625.04759999997746 -6981 3 5831542.269248378 -515.621072973 5830511.027102432 3 6984454.211097692 -617.5607769230769 6983219.0895438458462 -762 2 5831542.269248378 1531.2194054054 5833073.4886537834 2 6984454.211097692 1833.9456923076925 6986288.1567899996925 -NULL 3072 9318.4351351351 -4298.1513513514 5018444.1081079808 3072 11160.715384615385 -5147.907692307693 6010604.3076923073536 +-3728 6 5831542.2692483780 -3367.6517567568 5817556.0411483778 6 6984454.21109769200000 -4033.44576923076900 6967702.86724384584710 +-563 2 -515.6210729730 -3367.6517567568 -3883.2728297298 2 -617.56077692307690 -4033.44576923076900 -4651.00654615384590 +253665376 1024 9767.0054054054 -9779.5486486487 -347484.0818378374 1024 11697.96923076923100 -11712.99230769231000 -416182.64030769233089 +528534767 1024 5831542.2692483780 -9777.1594594595 11646372.8607481068 1024 6984454.21109769200000 -11710.13076923077100 13948892.79980307629003 +626923679 1024 9723.4027027027 -9778.9513513514 10541.0525297287 1024 11645.74615384615400 -11712.27692307692300 12625.04759999997746 +6981 3 5831542.2692483780 -515.6210729730 5830511.0271024320 3 6984454.21109769200000 -617.56077692307690 6983219.08954384584620 +762 2 5831542.2692483780 1531.2194054054 5833073.4886537834 2 6984454.21109769200000 1833.94569230769250 6986288.15678999969250 +NULL 3072 9318.4351351351 -4298.1513513514 5018444.1081079808 3072 11160.71538461538500 -5147.90769230769300 6010604.30769230735360 PREHOOK: query: -- Now add the others... EXPLAIN SELECT cint, COUNT(cdecimal1), MAX(cdecimal1), MIN(cdecimal1), SUM(cdecimal1), AVG(cdecimal1), STDDEV_POP(cdecimal1), STDDEV_SAMP(cdecimal1), @@ -208,11 +208,11 @@ POSTHOOK: query: SELECT cint, POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_vgby #### A masked pattern was here #### --3728 6 5831542.269248378 -3367.6517567568 5817556.0411483778 969592.67352472963333 2174330.2092403853 2381859.406131774 6 6984454.211097692 -4033.445769230769 6967702.8672438458471 1161283.811207307641183333 2604201.2704476737 2852759.5602156054 --563 2 -515.621072973 -3367.6517567568 -3883.2728297298 -1941.6364148649 1426.0153418918999 2016.6902366556308 2 -617.5607769230769 -4033.445769230769 -4651.0065461538459 -2325.50327307692295 1707.9424961538462 2415.395441814127 -253665376 1024 9767.0054054054 -9779.5486486487 -347484.0818378374 -339.33992366976309 5708.9563478862 5711.745967572779 1024 11697.969230769231 -11712.99230769231 -416182.64030769233089 -406.428359675480791885 6837.632716002934 6840.973851172274 -528534767 1024 5831542.269248378 -9777.1594594595 11646372.8607481068 11373.41099682432305 257528.92988206653 257654.7686043977 1024 6984454.211097692 -11710.130769230771 13948892.79980307629003 13621.965624807691689482 308443.1074570801 308593.82484083984 -626923679 1024 9723.4027027027 -9778.9513513514 10541.0525297287 10.29399661106318 5742.09145323734 5744.897264034267 1024 11645.746153846154 -11712.276923076923 12625.04759999997746 12.329148046874977988 6877.318722794877 6880.679250101603 -6981 3 5831542.269248378 -515.621072973 5830511.027102432 1943503.67570081066667 2749258.455012492 3367140.1929065133 3 6984454.211097692 -617.5607769230769 6983219.0895438458462 2327739.696514615282066667 3292794.4113115156 4032833.0678006653 -762 2 5831542.269248378 1531.2194054054 5833073.4886537834 2916536.7443268917 2915005.5249214866 4122440.3477364695 2 6984454.211097692 1833.9456923076925 6986288.1567899996925 3493144.07839499984625 3491310.1327026924 4937458.140118758 -NULL 3072 9318.4351351351 -4298.1513513514 5018444.1081079808 1633.60810810806667 5695.483082135364 5696.4103077145055 3072 11160.715384615385 -5147.907692307693 6010604.3076923073536 1956.576923076922966667 6821.495748565159 6822.606289190924 +-3728 6 5831542.2692483780 -3367.6517567568 5817556.0411483778 969592.67352472963333 2174330.2092403853 2381859.406131774 6 6984454.21109769200000 -4033.44576923076900 6967702.86724384584710 1161283.811207307641183333 2604201.2704476737 2852759.5602156054 +-563 2 -515.6210729730 -3367.6517567568 -3883.2728297298 -1941.63641486490000 1426.0153418918999 2016.6902366556308 2 -617.56077692307690 -4033.44576923076900 -4651.00654615384590 -2325.503273076922950000 1707.9424961538462 2415.395441814127 +253665376 1024 9767.0054054054 -9779.5486486487 -347484.0818378374 -339.33992366976309 5708.9563478862 5711.745967572779 1024 11697.96923076923100 -11712.99230769231000 -416182.64030769233089 -406.428359675480791885 6837.632716002934 6840.973851172274 +528534767 1024 5831542.2692483780 -9777.1594594595 11646372.8607481068 11373.41099682432305 257528.92988206653 257654.7686043977 1024 6984454.21109769200000 -11710.13076923077100 13948892.79980307629003 13621.965624807691689482 308443.1074570801 308593.82484083984 +626923679 1024 9723.4027027027 -9778.9513513514 10541.0525297287 10.29399661106318 5742.09145323734 5744.897264034267 1024 11645.74615384615400 -11712.27692307692300 12625.04759999997746 12.329148046874977988 6877.318722794877 6880.679250101603 +6981 3 5831542.2692483780 -515.6210729730 5830511.0271024320 1943503.67570081066667 2749258.455012492 3367140.1929065133 3 6984454.21109769200000 -617.56077692307690 6983219.08954384584620 2327739.696514615282066667 3292794.4113115156 4032833.0678006653 +762 2 5831542.2692483780 1531.2194054054 5833073.4886537834 2916536.74432689170000 2915005.5249214866 4122440.3477364695 2 6984454.21109769200000 1833.94569230769250 6986288.15678999969250 3493144.078394999846250000 3491310.1327026924 4937458.140118758 +NULL 3072 9318.4351351351 -4298.1513513514 5018444.1081079808 1633.60810810806667 5695.483082135364 5696.4103077145055 3072 11160.71538461538500 -5147.90769230769300 6010604.30769230735360 1956.576923076922966667 6821.495748565159 6822.606289190924 http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/ql/src/test/results/clientpositive/vector_decimal_cast.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/vector_decimal_cast.q.out b/ql/src/test/results/clientpositive/vector_decimal_cast.q.out index 88c09d9..2d81305 100644 --- a/ql/src/test/results/clientpositive/vector_decimal_cast.q.out +++ b/ql/src/test/results/clientpositive/vector_decimal_cast.q.out @@ -46,13 +46,13 @@ POSTHOOK: query: SELECT cdouble, cint, cboolean1, ctimestamp1, CAST(cdouble AS D POSTHOOK: type: QUERY POSTHOOK: Input: default@alltypesorc #### A masked pattern was here #### --13326.0 528534767 true 1969-12-31 15:59:46.674 -13326 528534767 1 -13 --15813.0 528534767 true 1969-12-31 15:59:55.787 -15813 528534767 1 -4 --9566.0 528534767 true 1969-12-31 15:59:44.187 -9566 528534767 1 -16 -15007.0 528534767 true 1969-12-31 15:59:50.434 15007 528534767 1 -10 -7021.0 528534767 true 1969-12-31 16:00:15.007 7021 528534767 1 15 -4963.0 528534767 true 1969-12-31 16:00:07.021 4963 528534767 1 7 --7824.0 528534767 true 1969-12-31 16:00:04.963 -7824 528534767 1 5 --15431.0 528534767 true 1969-12-31 15:59:52.176 -15431 528534767 1 -8 --15549.0 528534767 true 1969-12-31 15:59:44.569 -15549 528534767 1 -15 -5780.0 528534767 true 1969-12-31 15:59:44.451 5780 528534767 1 -16 +-13326.0 528534767 true 1969-12-31 15:59:46.674 -13326.0000000000 528534767.00000000000000 1.00 -13 +-15813.0 528534767 true 1969-12-31 15:59:55.787 -15813.0000000000 528534767.00000000000000 1.00 -4 +-9566.0 528534767 true 1969-12-31 15:59:44.187 -9566.0000000000 528534767.00000000000000 1.00 -16 +15007.0 528534767 true 1969-12-31 15:59:50.434 15007.0000000000 528534767.00000000000000 1.00 -10 +7021.0 528534767 true 1969-12-31 16:00:15.007 7021.0000000000 528534767.00000000000000 1.00 15 +4963.0 528534767 true 1969-12-31 16:00:07.021 4963.0000000000 528534767.00000000000000 1.00 7 +-7824.0 528534767 true 1969-12-31 16:00:04.963 -7824.0000000000 528534767.00000000000000 1.00 5 +-15431.0 528534767 true 1969-12-31 15:59:52.176 -15431.0000000000 528534767.00000000000000 1.00 -8 +-15549.0 528534767 true 1969-12-31 15:59:44.569 -15549.0000000000 528534767.00000000000000 1.00 -15 +5780.0 528534767 true 1969-12-31 15:59:44.451 5780.0000000000 528534767.00000000000000 1.00 -16 http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/ql/src/test/results/clientpositive/vector_decimal_expressions.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/vector_decimal_expressions.q.out b/ql/src/test/results/clientpositive/vector_decimal_expressions.q.out index 6369bc8..e57d6c1 100644 --- a/ql/src/test/results/clientpositive/vector_decimal_expressions.q.out +++ b/ql/src/test/results/clientpositive/vector_decimal_expressions.q.out @@ -77,13 +77,13 @@ LIMIT 10 POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_test #### A masked pattern was here #### -1836.441995841977 -1166.027234927254 0.8372697814833714 245972.55810810256 5.6189189189 835 1000 -24 835 true 1000.823076923077 835.6189 1000.823076923077 1969-12-31 16:13:55.618918918 -1856.1322245322462 -1178.5293139292924 0.8372449787014038 251275.4432432497 4.5783783784 844 1011 -13 844 true 1011.5538461538462 844.57837 1011.5538461538462 1969-12-31 16:14:04.578378378 -1858.7575883576155 -1180.196257796231 0.837241711366943 251986.76756757565 5.772972973 845 1012 -12 845 true 1012.9846153846155 845.77295 1012.9846153846155 1969-12-31 16:14:05.772972973 -1862.6956340956693 -1182.6966735966386 0.8372368276344616 253055.6391891997 7.5648648649 847 1015 -9 847 true 1015.1307692307693 847.5649 1015.1307692307693 1969-12-31 16:14:07.564864864 -1883.6985446985233 -1196.0322245322466 0.8372111259286499 258794.49324323673 7.1216216216 857 1026 2 857 true 1026.5769230769233 857.12164 1026.5769230769233 1969-12-31 16:14:17.121621621 -1886.3239085238924 -1197.6991683991848 0.8372079534581902 259516.37432431948 8.3162162162 858 1028 4 858 true 1028.0076923076924 858.3162 1028.0076923076924 1969-12-31 16:14:18.316216216 -1887.636590436577 -1198.532640332654 0.8372063705322131 259877.69189188787 8.9135135135 858 1028 4 858 true 1028.723076923077 858.9135 1028.723076923077 1969-12-31 16:14:18.913513513 -1895.5126819126846 -1203.5334719334692 0.8371969190171343 262050.87567567648 2.4972972973 862 1033 9 862 true 1033.0153846153846 862.4973 1033.0153846153846 1969-12-31 16:14:22.497297297 -1909.9521829522155 -1212.701663201631 0.8371797936946236 266058.54729730723 9.0675675676 869 1040 16 869 true 1040.8846153846155 869.06757 1040.8846153846155 1969-12-31 16:14:29.067567567 -1913.8902286902692 -1215.2020790020384 0.8371751679995797 267156.8270270395 0.8594594595 870 1043 19 870 true 1043.0307692307692 870.85944 1043.0307692307692 1969-12-31 16:14:30.859459459 +1836.44199584197700 -1166.02723492725400 0.8372697814833714 245972.55810810256 5.6189189189 835 1000 -24 835 true 1000.823076923077 835.6189 1000.823076923077 1969-12-31 16:13:55.618918918 +1856.13222453224620 -1178.52931392929240 0.8372449787014038 251275.4432432497 4.5783783784 844 1011 -13 844 true 1011.5538461538462 844.57837 1011.5538461538462 1969-12-31 16:14:04.578378378 +1858.75758835761550 -1180.19625779623100 0.837241711366943 251986.76756757565 5.7729729730 845 1012 -12 845 true 1012.9846153846155 845.77295 1012.9846153846155 1969-12-31 16:14:05.772972973 +1862.69563409566930 -1182.69667359663860 0.8372368276344616 253055.6391891997 7.5648648649 847 1015 -9 847 true 1015.1307692307693 847.5649 1015.1307692307693 1969-12-31 16:14:07.564864864 +1883.69854469852330 -1196.03222453224660 0.8372111259286499 258794.49324323673 7.1216216216 857 1026 2 857 true 1026.5769230769233 857.12164 1026.5769230769233 1969-12-31 16:14:17.121621621 +1886.32390852389240 -1197.69916839918480 0.8372079534581902 259516.37432431948 8.3162162162 858 1028 4 858 true 1028.0076923076924 858.3162 1028.0076923076924 1969-12-31 16:14:18.316216216 +1887.63659043657700 -1198.53264033265400 0.8372063705322131 259877.69189188787 8.9135135135 858 1028 4 858 true 1028.723076923077 858.9135 1028.723076923077 1969-12-31 16:14:18.913513513 +1895.51268191268460 -1203.53347193346920 0.8371969190171343 262050.87567567648 2.4972972973 862 1033 9 862 true 1033.0153846153846 862.4973 1033.0153846153846 1969-12-31 16:14:22.497297297 +1909.95218295221550 -1212.70166320163100 0.8371797936946236 266058.54729730723 9.0675675676 869 1040 16 869 true 1040.8846153846155 869.06757 1040.8846153846155 1969-12-31 16:14:29.067567567 +1913.89022869026920 -1215.20207900203840 0.8371751679995797 267156.8270270395 0.8594594595 870 1043 19 870 true 1043.0307692307692 870.85944 1043.0307692307692 1969-12-31 16:14:30.859459459 http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/ql/src/test/results/clientpositive/vector_decimal_mapjoin.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/vector_decimal_mapjoin.q.out b/ql/src/test/results/clientpositive/vector_decimal_mapjoin.q.out index cf48a32..d3356ed 100644 --- a/ql/src/test/results/clientpositive/vector_decimal_mapjoin.q.out +++ b/ql/src/test/results/clientpositive/vector_decimal_mapjoin.q.out @@ -155,109 +155,109 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@t1 POSTHOOK: Input: default@t2 #### A masked pattern was here #### -14 14 -14 14 -14 14 -14 14 -14 14 -14 14 -14 14 -14 14 -14 14 -17 17 -17 17 -17 17 -17 17 -17 17 -17 17 -17 17 -17 17 -17 17 -17 17 -45 45 -45 45 -45 45 -45 45 -45 45 -6 6 -6 6 -6 6 -6 6 -6 6 -6 6 -62 62 -62 62 -62 62 -62 62 -62 62 -62 62 -62 62 -62 62 -62 62 -62 62 -62 62 -62 62 -64 64 -64 64 -64 64 -64 64 -64 64 -64 64 -64 64 -64 64 -64 64 -64 64 -64 64 -64 64 -64 64 -64 64 -64 64 -64 64 -64 64 -64 64 -70 70 -70 70 -70 70 -70 70 -70 70 -70 70 -70 70 -79 79 -79 79 -79 79 -79 79 -79 79 -79 79 -89 89 -89 89 -89 89 -89 89 -89 89 -89 89 -89 89 -89 89 -89 89 -89 89 -89 89 -89 89 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 -9 9 +14.00 14 +14.00 14 +14.00 14 +14.00 14 +14.00 14 +14.00 14 +14.00 14 +14.00 14 +14.00 14 +17.00 17 +17.00 17 +17.00 17 +17.00 17 +17.00 17 +17.00 17 +17.00 17 +17.00 17 +17.00 17 +17.00 17 +45.00 45 +45.00 45 +45.00 45 +45.00 45 +45.00 45 +6.00 6 +6.00 6 +6.00 6 +6.00 6 +6.00 6 +6.00 6 +62.00 62 +62.00 62 +62.00 62 +62.00 62 +62.00 62 +62.00 62 +62.00 62 +62.00 62 +62.00 62 +62.00 62 +62.00 62 +62.00 62 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +64.00 64 +70.00 70 +70.00 70 +70.00 70 +70.00 70 +70.00 70 +70.00 70 +70.00 70 +79.00 79 +79.00 79 +79.00 79 +79.00 79 +79.00 79 +79.00 79 +89.00 89 +89.00 89 +89.00 89 +89.00 89 +89.00 89 +89.00 89 +89.00 89 +89.00 89 +89.00 89 +89.00 89 +89.00 89 +89.00 89 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 +9.00 9 http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/ql/src/test/results/clientpositive/vector_decimal_precision.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/vector_decimal_precision.q.out b/ql/src/test/results/clientpositive/vector_decimal_precision.q.out index f2aaf8d..c5ab8a7 100644 --- a/ql/src/test/results/clientpositive/vector_decimal_precision.q.out +++ b/ql/src/test/results/clientpositive/vector_decimal_precision.q.out @@ -99,13 +99,13 @@ NULL NULL NULL NULL -0 -0 -0 -0 -0 -0.123456789 -0.123456789 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.1234567890 +0.1234567890 1.2345678901 1.2345678901 1.2345678901 @@ -122,14 +122,14 @@ NULL 12345.6789012346 123456.7890123456 123456.7890123457 -1234567.890123456 +1234567.8901234560 1234567.8901234568 -12345678.90123456 +12345678.9012345600 12345678.9012345679 -123456789.0123456 +123456789.0123456000 123456789.0123456789 -1234567890.123456 -1234567890.123456789 +1234567890.1234560000 +1234567890.1234567890 PREHOOK: query: SELECT dec, dec + 1, dec - 1 FROM DECIMAL_PRECISION ORDER BY dec PREHOOK: type: QUERY PREHOOK: Input: default@decimal_precision @@ -182,13 +182,13 @@ NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL -0 1 -1 -0 1 -1 -0 1 -1 -0 1 -1 -0 1 -1 -0.123456789 1.123456789 -0.876543211 -0.123456789 1.123456789 -0.876543211 +0.0000000000 1.0000000000 -1.0000000000 +0.0000000000 1.0000000000 -1.0000000000 +0.0000000000 1.0000000000 -1.0000000000 +0.0000000000 1.0000000000 -1.0000000000 +0.0000000000 1.0000000000 -1.0000000000 +0.1234567890 1.1234567890 -0.8765432110 +0.1234567890 1.1234567890 -0.8765432110 1.2345678901 2.2345678901 0.2345678901 1.2345678901 2.2345678901 0.2345678901 1.2345678901 2.2345678901 0.2345678901 @@ -205,14 +205,14 @@ NULL NULL NULL 12345.6789012346 12346.6789012346 12344.6789012346 123456.7890123456 123457.7890123456 123455.7890123456 123456.7890123457 123457.7890123457 123455.7890123457 -1234567.890123456 1234568.890123456 1234566.890123456 +1234567.8901234560 1234568.8901234560 1234566.8901234560 1234567.8901234568 1234568.8901234568 1234566.8901234568 -12345678.90123456 12345679.90123456 12345677.90123456 +12345678.9012345600 12345679.9012345600 12345677.9012345600 12345678.9012345679 12345679.9012345679 12345677.9012345679 -123456789.0123456 123456790.0123456 123456788.0123456 +123456789.0123456000 123456790.0123456000 123456788.0123456000 123456789.0123456789 123456790.0123456789 123456788.0123456789 -1234567890.123456 1234567891.123456 1234567889.123456 -1234567890.123456789 1234567891.123456789 1234567889.123456789 +1234567890.1234560000 1234567891.1234560000 1234567889.1234560000 +1234567890.1234567890 1234567891.1234567890 1234567889.1234567890 PREHOOK: query: SELECT dec, dec * 2, dec / 3 FROM DECIMAL_PRECISION ORDER BY dec PREHOOK: type: QUERY PREHOOK: Input: default@decimal_precision @@ -265,37 +265,37 @@ NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0 0 0 -0.123456789 0.246913578 0.041152263 -0.123456789 0.246913578 0.041152263 +0.0000000000 0.0000000000 0.000000000000 +0.0000000000 0.0000000000 0.000000000000 +0.0000000000 0.0000000000 0.000000000000 +0.0000000000 0.0000000000 0.000000000000 +0.0000000000 0.0000000000 0.000000000000 +0.1234567890 0.2469135780 0.041152263000 +0.1234567890 0.2469135780 0.041152263000 1.2345678901 2.4691357802 0.411522630033 1.2345678901 2.4691357802 0.411522630033 1.2345678901 2.4691357802 0.411522630033 -12.3456789012 24.6913578024 4.1152263004 -12.3456789012 24.6913578024 4.1152263004 -12.3456789012 24.6913578024 4.1152263004 -123.4567890123 246.9135780246 41.1522630041 -123.4567890123 246.9135780246 41.1522630041 -123.4567890123 246.9135780246 41.1522630041 -1234.5678901235 2469.135780247 411.522630041167 -1234.5678901235 2469.135780247 411.522630041167 -1234.5678901235 2469.135780247 411.522630041167 +12.3456789012 24.6913578024 4.115226300400 +12.3456789012 24.6913578024 4.115226300400 +12.3456789012 24.6913578024 4.115226300400 +123.4567890123 246.9135780246 41.152263004100 +123.4567890123 246.9135780246 41.152263004100 +123.4567890123 246.9135780246 41.152263004100 +1234.5678901235 2469.1357802470 411.522630041167 +1234.5678901235 2469.1357802470 411.522630041167 +1234.5678901235 2469.1357802470 411.522630041167 12345.6789012346 24691.3578024692 4115.226300411533 12345.6789012346 24691.3578024692 4115.226300411533 -123456.7890123456 246913.5780246912 41152.2630041152 +123456.7890123456 246913.5780246912 41152.263004115200 123456.7890123457 246913.5780246914 41152.263004115233 -1234567.890123456 2469135.780246912 411522.630041152 +1234567.8901234560 2469135.7802469120 411522.630041152000 1234567.8901234568 2469135.7802469136 411522.630041152267 -12345678.90123456 24691357.80246912 4115226.30041152 +12345678.9012345600 24691357.8024691200 4115226.300411520000 12345678.9012345679 24691357.8024691358 4115226.300411522633 -123456789.0123456 246913578.0246912 41152263.0041152 -123456789.0123456789 246913578.0246913578 41152263.0041152263 -1234567890.123456 2469135780.246912 411522630.041152 -1234567890.123456789 2469135780.246913578 411522630.041152263 +123456789.0123456000 246913578.0246912000 41152263.004115200000 +123456789.0123456789 246913578.0246913578 41152263.004115226300 +1234567890.1234560000 2469135780.2469120000 411522630.041152000000 +1234567890.1234567890 2469135780.2469135780 411522630.041152263000 PREHOOK: query: SELECT dec, dec / 9 FROM DECIMAL_PRECISION ORDER BY dec PREHOOK: type: QUERY PREHOOK: Input: default@decimal_precision @@ -348,13 +348,13 @@ NULL NULL NULL NULL NULL NULL NULL NULL -0 0 -0 0 -0 0 -0 0 -0 0 -0.123456789 0.013717421 -0.123456789 0.013717421 +0.0000000000 0.000000000000 +0.0000000000 0.000000000000 +0.0000000000 0.000000000000 +0.0000000000 0.000000000000 +0.0000000000 0.000000000000 +0.1234567890 0.013717421000 +0.1234567890 0.013717421000 1.2345678901 0.137174210011 1.2345678901 0.137174210011 1.2345678901 0.137174210011 @@ -371,14 +371,14 @@ NULL NULL 12345.6789012346 1371.742100137178 123456.7890123456 13717.421001371733 123456.7890123457 13717.421001371744 -1234567.890123456 137174.210013717333 +1234567.8901234560 137174.210013717333 1234567.8901234568 137174.210013717422 -12345678.90123456 1371742.100137173333 +12345678.9012345600 1371742.100137173333 12345678.9012345679 1371742.100137174211 -123456789.0123456 13717421.001371733333 -123456789.0123456789 13717421.0013717421 -1234567890.123456 137174210.013717333333 -1234567890.123456789 137174210.013717421 +123456789.0123456000 13717421.001371733333 +123456789.0123456789 13717421.001371742100 +1234567890.1234560000 137174210.013717333333 +1234567890.1234567890 137174210.013717421000 PREHOOK: query: SELECT dec, dec / 27 FROM DECIMAL_PRECISION ORDER BY dec PREHOOK: type: QUERY PREHOOK: Input: default@decimal_precision @@ -431,13 +431,13 @@ NULL NULL NULL NULL NULL NULL NULL NULL -0 0 -0 0 -0 0 -0 0 -0 0 -0.123456789 0.0045724736667 -0.123456789 0.0045724736667 +0.0000000000 0.0000000000000 +0.0000000000 0.0000000000000 +0.0000000000 0.0000000000000 +0.0000000000 0.0000000000000 +0.0000000000 0.0000000000000 +0.1234567890 0.0045724736667 +0.1234567890 0.0045724736667 1.2345678901 0.0457247366704 1.2345678901 0.0457247366704 1.2345678901 0.0457247366704 @@ -454,14 +454,14 @@ NULL NULL 12345.6789012346 457.2473667123926 123456.7890123456 4572.4736671239111 123456.7890123457 4572.4736671239148 -1234567.890123456 45724.7366712391111 +1234567.8901234560 45724.7366712391111 1234567.8901234568 45724.7366712391407 -12345678.90123456 457247.3667123911111 +12345678.9012345600 457247.3667123911111 12345678.9012345679 457247.3667123914037 -123456789.0123456 4572473.6671239111111 +123456789.0123456000 4572473.6671239111111 123456789.0123456789 4572473.6671239140333 -1234567890.123456 45724736.6712391111111 -1234567890.123456789 45724736.6712391403333 +1234567890.1234560000 45724736.6712391111111 +1234567890.1234567890 45724736.6712391403333 PREHOOK: query: SELECT dec, dec * dec FROM DECIMAL_PRECISION ORDER BY dec PREHOOK: type: QUERY PREHOOK: Input: default@decimal_precision @@ -514,13 +514,13 @@ NULL NULL NULL NULL NULL NULL NULL NULL -0 0 -0 0 -0 0 -0 0 -0 0 -0.123456789 0.015241578750190521 -0.123456789 0.015241578750190521 +0.0000000000 0.00000000000000000000 +0.0000000000 0.00000000000000000000 +0.0000000000 0.00000000000000000000 +0.0000000000 0.00000000000000000000 +0.0000000000 0.00000000000000000000 +0.1234567890 0.01524157875019052100 +0.1234567890 0.01524157875019052100 1.2345678901 1.52415787526596567801 1.2345678901 1.52415787526596567801 1.2345678901 1.52415787526596567801 @@ -537,14 +537,14 @@ NULL NULL 12345.6789012346 152415787.53238916034140423716 123456.7890123456 15241578753.23881726870921383936 123456.7890123457 15241578753.23884196006701630849 -1234567.890123456 1524157875323.881726870921383936 +1234567.8901234560 1524157875323.88172687092138393600 1234567.8901234568 1524157875323.88370217954558146624 -12345678.90123456 152415787532388.1726870921383936 +12345678.9012345600 152415787532388.17268709213839360000 12345678.9012345679 152415787532388.36774881877789971041 -123456789.0123456 15241578753238817.26870921383936 +123456789.0123456000 15241578753238817.26870921383936000000 123456789.0123456789 15241578753238836.75019051998750190521 -1234567890.123456 NULL -1234567890.123456789 NULL +1234567890.1234560000 NULL +1234567890.1234567890 NULL PREHOOK: query: EXPLAIN SELECT avg(dec), sum(dec) FROM DECIMAL_PRECISION PREHOOK: type: QUERY POSTHOOK: query: EXPLAIN SELECT avg(dec), sum(dec) FROM DECIMAL_PRECISION @@ -637,7 +637,7 @@ POSTHOOK: query: SELECT MIN(cast('12345678901234567890.12345678' as decimal(38,1 POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_precision #### A masked pattern was here #### -12345678901234567890.12345678 +12345678901234567890.123456780000000000 PREHOOK: query: SELECT COUNT(cast('12345678901234567890.12345678' as decimal(38,18))) FROM DECIMAL_PRECISION PREHOOK: type: QUERY PREHOOK: Input: default@decimal_precision http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/ql/src/test/results/clientpositive/vector_decimal_round_2.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/vector_decimal_round_2.q.out b/ql/src/test/results/clientpositive/vector_decimal_round_2.q.out index 0151b04..5291609 100644 --- a/ql/src/test/results/clientpositive/vector_decimal_round_2.q.out +++ b/ql/src/test/results/clientpositive/vector_decimal_round_2.q.out @@ -25,7 +25,7 @@ POSTHOOK: query: select * from decimal_tbl_1_orc POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_tbl_1_orc #### A masked pattern was here #### -55555 +55555.000000000000000000 PREHOOK: query: -- EXPLAIN -- SELECT dec, round(null), round(null, 0), round(125, null), -- round(1.0/0.0, 0), round(power(-1.0,0.5), 0) @@ -114,7 +114,7 @@ FROM decimal_tbl_1_orc ORDER BY d POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_tbl_1_orc #### A masked pattern was here #### -55555 55555 55555 55555 55555 55560 55600 56000 60000 100000 0 0 0 +55555 55555 55555.0 55555.00 55555.000 55560 55600 56000 60000 100000 0 0 0 PREHOOK: query: create table decimal_tbl_2_orc (pos decimal(38,18), neg decimal(38,18)) STORED AS ORC PREHOOK: type: CREATETABLE @@ -143,7 +143,7 @@ POSTHOOK: query: select * from decimal_tbl_2_orc POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_tbl_2_orc #### A masked pattern was here #### -125.315 -125.315 +125.315000000000000000 -125.315000000000000000 PREHOOK: query: EXPLAIN SELECT round(pos) as p, round(pos, 0), @@ -226,7 +226,7 @@ FROM decimal_tbl_2_orc ORDER BY p POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_tbl_2_orc #### A masked pattern was here #### -125 125 125.3 125.32 125.315 125.315 130 100 0 0 -125 -125 -125.3 -125.32 -125.315 -125.315 -130 -100 0 0 +125 125 125.3 125.32 125.315 125.3150 130 100 0 0 -125 -125 -125.3 -125.32 -125.315 -125.3150 -130 -100 0 0 PREHOOK: query: create table decimal_tbl_3_orc (dec decimal(38,18)) STORED AS ORC PREHOOK: type: CREATETABLE @@ -254,7 +254,7 @@ POSTHOOK: query: select * from decimal_tbl_3_orc POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_tbl_3_orc #### A masked pattern was here #### -3.141592653589793 +3.141592653589793000 PREHOOK: query: EXPLAIN SELECT round(dec, -15) as d, round(dec, -16), @@ -381,7 +381,7 @@ FROM decimal_tbl_3_orc ORDER BY d POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_tbl_3_orc #### A masked pattern was here #### -0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3.1 3.14 3.142 3.1416 3.14159 3.141593 3.1415927 3.14159265 3.141592654 3.1415926536 3.14159265359 3.14159265359 3.1415926535898 3.1415926535898 3.14159265358979 3.141592653589793 3.141592653589793 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3.1 3.14 3.142 3.1416 3.14159 3.141593 3.1415927 3.14159265 3.141592654 3.1415926536 3.14159265359 3.141592653590 3.1415926535898 3.1415926535898 3.14159265358979 3.141592653589793 3.1415926535897930 PREHOOK: query: create table decimal_tbl_4_orc (pos decimal(38,18), neg decimal(38,18)) STORED AS ORC PREHOOK: type: CREATETABLE @@ -410,7 +410,7 @@ POSTHOOK: query: select * from decimal_tbl_4_orc POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_tbl_4_orc #### A masked pattern was here #### -1809242.3151111344 -1809242.3151111344 +1809242.315111134400000000 -1809242.315111134400000000 PREHOOK: query: EXPLAIN SELECT round(pos, 9) as p, round(neg, 9), round(1809242.3151111344BD, 9), round(-1809242.3151111344BD, 9) FROM decimal_tbl_4_orc ORDER BY p http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/ql/src/test/results/clientpositive/vector_decimal_trailing.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/vector_decimal_trailing.q.out b/ql/src/test/results/clientpositive/vector_decimal_trailing.q.out index ffdb1c9..7dea1a2 100644 --- a/ql/src/test/results/clientpositive/vector_decimal_trailing.q.out +++ b/ql/src/test/results/clientpositive/vector_decimal_trailing.q.out @@ -73,16 +73,16 @@ POSTHOOK: query: SELECT * FROM DECIMAL_TRAILING ORDER BY id POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_trailing #### A masked pattern was here #### -0 0 0 -1 0 0 +0 0.0000 0.00000000 +1 0.0000 0.00000000 2 NULL NULL -3 1 1 -4 10 10 -5 100 100 -6 1000 1000 -7 10000 10000 -8 100000 100000 -9 NULL 1000000 +3 1.0000 1.00000000 +4 10.0000 10.00000000 +5 100.0000 100.00000000 +6 1000.0000 1000.00000000 +7 10000.0000 10000.00000000 +8 100000.0000 100000.00000000 +9 NULL 1000000.00000000 10 NULL NULL 11 NULL NULL 12 NULL NULL @@ -91,18 +91,18 @@ POSTHOOK: Input: default@decimal_trailing 15 NULL NULL 16 NULL NULL 17 NULL NULL -18 1 1 -19 10 10 -20 100 100 -21 1000 1000 -22 100000 10000 -23 0 0 -24 0 0 -25 0 0 -26 0 0 -27 0 0 -28 12313.2 134134.312525 -29 99999.999 134134.31242553 +18 1.0000 1.00000000 +19 10.0000 10.00000000 +20 100.0000 100.00000000 +21 1000.0000 1000.00000000 +22 100000.0000 10000.00000000 +23 0.0000 0.00000000 +24 0.0000 0.00000000 +25 0.0000 0.00000000 +26 0.0000 0.00000000 +27 0.0000 0.00000000 +28 12313.2000 134134.31252500 +29 99999.9990 134134.31242553 PREHOOK: query: DROP TABLE DECIMAL_TRAILING_txt PREHOOK: type: DROPTABLE PREHOOK: Input: default@decimal_trailing_txt http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/ql/src/test/results/clientpositive/vector_decimal_udf.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/vector_decimal_udf.q.out b/ql/src/test/results/clientpositive/vector_decimal_udf.q.out index cfd2a55..6837b76 100644 --- a/ql/src/test/results/clientpositive/vector_decimal_udf.q.out +++ b/ql/src/test/results/clientpositive/vector_decimal_udf.q.out @@ -92,44 +92,44 @@ POSTHOOK: query: SELECT key + key FROM DECIMAL_UDF POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### --8800 +-8800.0000000000 NULL -0 -0 -200 -20 -2 -0.2 -0.02 -400 -40 -4 -0 -0.4 -0.04 -0.6 -0.66 -0.666 --0.6 --0.66 --0.666 -2 -4 -6.28 --2.24 --2.24 --2.244 -2.24 -2.244 -248 -250.4 --2510.98 -6.28 -6.28 -6.28 -2 --2469135780.246913578 -2469135780.24691356 +0.0000000000 +0.0000000000 +200.0000000000 +20.0000000000 +2.0000000000 +0.2000000000 +0.0200000000 +400.0000000000 +40.0000000000 +4.0000000000 +0.0000000000 +0.4000000000 +0.0400000000 +0.6000000000 +0.6600000000 +0.6660000000 +-0.6000000000 +-0.6600000000 +-0.6660000000 +2.0000000000 +4.0000000000 +6.2800000000 +-2.2400000000 +-2.2400000000 +-2.2440000000 +2.2400000000 +2.2440000000 +248.0000000000 +250.4000000000 +-2510.9800000000 +6.2800000000 +6.2800000000 +6.2800000000 +2.0000000000 +-2469135780.2469135780 +2469135780.2469135600 PREHOOK: query: EXPLAIN SELECT key + value FROM DECIMAL_UDF PREHOOK: type: QUERY POSTHOOK: query: EXPLAIN SELECT key + value FROM DECIMAL_UDF @@ -172,44 +172,44 @@ POSTHOOK: query: SELECT key + value FROM DECIMAL_UDF POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### -0 +0.0000000000 NULL -0 -0 -200 -20 -2 -0.1 -0.01 -400 -40 -4 -0 -0.2 -0.02 -0.3 -0.33 -0.333 --0.3 --0.33 --0.333 -2 -4 -6.14 --2.12 --2.12 --12.122 -2.12 -2.122 -248 -250.2 --2510.49 -6.14 -6.14 -7.14 -2 --2469135780.123456789 -2469135780.12345678 +0.0000000000 +0.0000000000 +200.0000000000 +20.0000000000 +2.0000000000 +0.1000000000 +0.0100000000 +400.0000000000 +40.0000000000 +4.0000000000 +0.0000000000 +0.2000000000 +0.0200000000 +0.3000000000 +0.3300000000 +0.3330000000 +-0.3000000000 +-0.3300000000 +-0.3330000000 +2.0000000000 +4.0000000000 +6.1400000000 +-2.1200000000 +-2.1200000000 +-12.1220000000 +2.1200000000 +2.1220000000 +248.0000000000 +250.2000000000 +-2510.4900000000 +6.1400000000 +6.1400000000 +7.1400000000 +2.0000000000 +-2469135780.1234567890 +2469135780.1234567800 PREHOOK: query: EXPLAIN SELECT key + (value/2) FROM DECIMAL_UDF PREHOOK: type: QUERY POSTHOOK: query: EXPLAIN SELECT key + (value/2) FROM DECIMAL_UDF @@ -414,44 +414,44 @@ POSTHOOK: query: SELECT key - key FROM DECIMAL_UDF POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### -0 +0.0000000000 NULL -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 PREHOOK: query: EXPLAIN SELECT key - value FROM DECIMAL_UDF PREHOOK: type: QUERY POSTHOOK: query: EXPLAIN SELECT key - value FROM DECIMAL_UDF @@ -494,44 +494,44 @@ POSTHOOK: query: SELECT key - value FROM DECIMAL_UDF POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### --8800 +-8800.0000000000 NULL -0 -0 -0 -0 -0 -0.1 -0.01 -0 -0 -0 -0 -0.2 -0.02 -0.3 -0.33 -0.333 --0.3 --0.33 --0.333 -0 -0 -0.14 --0.12 --0.12 -9.878 -0.12 -0.122 -0 -0.2 --0.49 -0.14 -0.14 --0.86 -0 --0.123456789 -0.12345678 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.1000000000 +0.0100000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.2000000000 +0.0200000000 +0.3000000000 +0.3300000000 +0.3330000000 +-0.3000000000 +-0.3300000000 +-0.3330000000 +0.0000000000 +0.0000000000 +0.1400000000 +-0.1200000000 +-0.1200000000 +9.8780000000 +0.1200000000 +0.1220000000 +0.0000000000 +0.2000000000 +-0.4900000000 +0.1400000000 +0.1400000000 +-0.8600000000 +0.0000000000 +-0.1234567890 +0.1234567800 PREHOOK: query: EXPLAIN SELECT key - (value/2) FROM DECIMAL_UDF PREHOOK: type: QUERY POSTHOOK: query: EXPLAIN SELECT key - (value/2) FROM DECIMAL_UDF @@ -736,42 +736,42 @@ POSTHOOK: query: SELECT key * key FROM DECIMAL_UDF POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### -19360000 +19360000.00000000000000000000 NULL -0 -0 -10000 -100 -1 -0.01 -0.0001 -40000 -400 -4 -0 -0.04 -0.0004 -0.09 -0.1089 -0.110889 -0.09 -0.1089 -0.110889 -1 -4 -9.8596 -1.2544 -1.2544 -1.258884 -1.2544 -1.258884 -15376 -15675.04 -1576255.1401 -9.8596 -9.8596 -9.8596 -1 +0.00000000000000000000 +0.00000000000000000000 +10000.00000000000000000000 +100.00000000000000000000 +1.00000000000000000000 +0.01000000000000000000 +0.00010000000000000000 +40000.00000000000000000000 +400.00000000000000000000 +4.00000000000000000000 +0.00000000000000000000 +0.04000000000000000000 +0.00040000000000000000 +0.09000000000000000000 +0.10890000000000000000 +0.11088900000000000000 +0.09000000000000000000 +0.10890000000000000000 +0.11088900000000000000 +1.00000000000000000000 +4.00000000000000000000 +9.85960000000000000000 +1.25440000000000000000 +1.25440000000000000000 +1.25888400000000000000 +1.25440000000000000000 +1.25888400000000000000 +15376.00000000000000000000 +15675.04000000000000000000 +1576255.14010000000000000000 +9.85960000000000000000 +9.85960000000000000000 +9.85960000000000000000 +1.00000000000000000000 NULL NULL PREHOOK: query: EXPLAIN SELECT key, value FROM DECIMAL_UDF where key * value > 0 @@ -819,29 +819,29 @@ POSTHOOK: query: SELECT key, value FROM DECIMAL_UDF where key * value > 0 POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### -100 100 -10 10 -1 1 -200 200 -20 20 -2 2 -1 1 -2 2 -3.14 3 --1.12 -1 --1.12 -1 --1.122 -11 -1.12 1 -1.122 1 -124 124 -125.2 125 --1255.49 -1255 -3.14 3 -3.14 3 -3.14 4 -1 1 --1234567890.123456789 -1234567890 -1234567890.12345678 1234567890 +100.0000000000 100 +10.0000000000 10 +1.0000000000 1 +200.0000000000 200 +20.0000000000 20 +2.0000000000 2 +1.0000000000 1 +2.0000000000 2 +3.1400000000 3 +-1.1200000000 -1 +-1.1200000000 -1 +-1.1220000000 -11 +1.1200000000 1 +1.1220000000 1 +124.0000000000 124 +125.2000000000 125 +-1255.4900000000 -1255 +3.1400000000 3 +3.1400000000 3 +3.1400000000 4 +1.0000000000 1 +-1234567890.1234567890 -1234567890 +1234567890.1234567800 1234567890 PREHOOK: query: EXPLAIN SELECT key * value FROM DECIMAL_UDF PREHOOK: type: QUERY POSTHOOK: query: EXPLAIN SELECT key * value FROM DECIMAL_UDF @@ -884,44 +884,44 @@ POSTHOOK: query: SELECT key * value FROM DECIMAL_UDF POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### --19360000 +-19360000.0000000000 NULL -0 -0 -10000 -100 -1 -0 -0 -40000 -400 -4 -0 -0 -0 -0 -0 -0 -0 -0 -0 -1 -4 -9.42 -1.12 -1.12 -12.342 -1.12 -1.122 -15376 -15650 -1575639.95 -9.42 -9.42 -12.56 -1 -1524157875171467887.50190521 -1524157875171467876.3907942 +0.0000000000 +0.0000000000 +10000.0000000000 +100.0000000000 +1.0000000000 +0.0000000000 +0.0000000000 +40000.0000000000 +400.0000000000 +4.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +0.0000000000 +1.0000000000 +4.0000000000 +9.4200000000 +1.1200000000 +1.1200000000 +12.3420000000 +1.1200000000 +1.1220000000 +15376.0000000000 +15650.0000000000 +1575639.9500000000 +9.4200000000 +9.4200000000 +12.5600000000 +1.0000000000 +1524157875171467887.5019052100 +1524157875171467876.3907942000 PREHOOK: query: EXPLAIN SELECT key * (value/2) FROM DECIMAL_UDF PREHOOK: type: QUERY POSTHOOK: query: EXPLAIN SELECT key * (value/2) FROM DECIMAL_UDF @@ -1220,40 +1220,40 @@ POSTHOOK: query: SELECT key / key FROM DECIMAL_UDF WHERE key is not null and key POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 +1.000000000000000000000000 PREHOOK: query: EXPLAIN SELECT key / value FROM DECIMAL_UDF WHERE value is not null and value <> 0 PREHOOK: type: QUERY POSTHOOK: query: EXPLAIN SELECT key / value FROM DECIMAL_UDF WHERE value is not null and value <> 0 @@ -1299,30 +1299,30 @@ POSTHOOK: query: SELECT key / value FROM DECIMAL_UDF WHERE value is not null and POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### --1 -1 -1 -1 -1 -1 -1 -1 -1 +-1.000000000000000000000 +1.000000000000000000000 +1.000000000000000000000 +1.000000000000000000000 +1.000000000000000000000 +1.000000000000000000000 +1.000000000000000000000 +1.000000000000000000000 +1.000000000000000000000 1.046666666666666666667 -1.12 -1.12 -0.102 -1.12 -1.122 -1 -1.0016 +1.120000000000000000000 +1.120000000000000000000 +0.102000000000000000000 +1.120000000000000000000 +1.122000000000000000000 +1.000000000000000000000 +1.001600000000000000000 1.000390438247011952191 1.046666666666666666667 1.046666666666666666667 -0.785 -1 -1.0000000001 -1.00000000009999999271 +0.785000000000000000000 +1.000000000000000000000 +1.000000000100000000000 +1.000000000099999992710 PREHOOK: query: EXPLAIN SELECT key / (value/2) FROM DECIMAL_UDF WHERE value is not null and value <> 0 PREHOOK: type: QUERY POSTHOOK: query: EXPLAIN SELECT key / (value/2) FROM DECIMAL_UDF WHERE value is not null and value <> 0 @@ -1516,44 +1516,44 @@ POSTHOOK: query: SELECT abs(key) FROM DECIMAL_UDF POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### -4400 +4400.0000000000 NULL -0 -0 -100 -10 -1 -0.1 -0.01 -200 -20 -2 -0 -0.2 -0.02 -0.3 -0.33 -0.333 -0.3 -0.33 -0.333 -1 -2 -3.14 -1.12 -1.12 -1.122 -1.12 -1.122 -124 -125.2 -1255.49 -3.14 -3.14 -3.14 -1 -1234567890.123456789 -1234567890.12345678 +0.0000000000 +0.0000000000 +100.0000000000 +10.0000000000 +1.0000000000 +0.1000000000 +0.0100000000 +200.0000000000 +20.0000000000 +2.0000000000 +0.0000000000 +0.2000000000 +0.0200000000 +0.3000000000 +0.3300000000 +0.3330000000 +0.3000000000 +0.3300000000 +0.3330000000 +1.0000000000 +2.0000000000 +3.1400000000 +1.1200000000 +1.1200000000 +1.1220000000 +1.1200000000 +1.1220000000 +124.0000000000 +125.2000000000 +1255.4900000000 +3.1400000000 +3.1400000000 +3.1400000000 +1.0000000000 +1234567890.1234567890 +1234567890.1234567800 PREHOOK: query: -- avg EXPLAIN SELECT value, sum(key) / count(key), avg(key), sum(key) FROM DECIMAL_UDF GROUP BY value ORDER BY value PREHOOK: type: QUERY @@ -1643,23 +1643,23 @@ POSTHOOK: query: SELECT value, sum(key) / count(key), avg(key), sum(key) FROM DE POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### --1234567890 -1234567890.123456789 -1234567890.123456789 -1234567890.123456789 --1255 -1255.49 -1255.49 -1255.49 --11 -1.122 -1.122 -1.122 --1 -1.12 -1.12 -2.24 -0 0.02538461538461538461538 0.02538461538462 0.33 -1 1.0484 1.0484 5.242 -2 2 2 4 -3 3.14 3.14 9.42 -4 3.14 3.14 3.14 -10 10 10 10 -20 20 20 20 -100 100 100 100 -124 124 124 124 -125 125.2 125.2 125.2 -200 200 200 200 -4400 -4400 -4400 -4400 -1234567890 1234567890.12345678 1234567890.12345678 1234567890.12345678 +-1234567890 -1234567890.12345678900000000000000 -1234567890.12345678900000 -1234567890.1234567890 +-1255 -1255.49000000000000000000000 -1255.49000000000000 -1255.4900000000 +-11 -1.12200000000000000000000 -1.12200000000000 -1.1220000000 +-1 -1.12000000000000000000000 -1.12000000000000 -2.2400000000 +0 0.02538461538461538461538 0.02538461538462 0.3300000000 +1 1.04840000000000000000000 1.04840000000000 5.2420000000 +2 2.00000000000000000000000 2.00000000000000 4.0000000000 +3 3.14000000000000000000000 3.14000000000000 9.4200000000 +4 3.14000000000000000000000 3.14000000000000 3.1400000000 +10 10.00000000000000000000000 10.00000000000000 10.0000000000 +20 20.00000000000000000000000 20.00000000000000 20.0000000000 +100 100.00000000000000000000000 100.00000000000000 100.0000000000 +124 124.00000000000000000000000 124.00000000000000 124.0000000000 +125 125.20000000000000000000000 125.20000000000000 125.2000000000 +200 200.00000000000000000000000 200.00000000000000 200.0000000000 +4400 -4400.00000000000000000000000 -4400.00000000000000 -4400.0000000000 +1234567890 1234567890.12345678000000000000000 1234567890.12345678000000 1234567890.1234567800 PREHOOK: query: -- negative EXPLAIN SELECT -key FROM DECIMAL_UDF PREHOOK: type: QUERY @@ -1704,44 +1704,44 @@ POSTHOOK: query: SELECT -key FROM DECIMAL_UDF POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### -4400 +4400.0000000000 NULL -0 -0 --100 --10 --1 --0.1 --0.01 --200 --20 --2 -0 --0.2 --0.02 --0.3 --0.33 --0.333 -0.3 -0.33 -0.333 --1 --2 --3.14 -1.12 -1.12 -1.122 --1.12 --1.122 --124 --125.2 -1255.49 --3.14 --3.14 --3.14 --1 -1234567890.123456789 --1234567890.12345678 +0.0000000000 +0.0000000000 +-100.0000000000 +-10.0000000000 +-1.0000000000 +-0.1000000000 +-0.0100000000 +-200.0000000000 +-20.0000000000 +-2.0000000000 +0.0000000000 +-0.2000000000 +-0.0200000000 +-0.3000000000 +-0.3300000000 +-0.3330000000 +0.3000000000 +0.3300000000 +0.3330000000 +-1.0000000000 +-2.0000000000 +-3.1400000000 +1.1200000000 +1.1200000000 +1.1220000000 +-1.1200000000 +-1.1220000000 +-124.0000000000 +-125.2000000000 +1255.4900000000 +-3.1400000000 +-3.1400000000 +-3.1400000000 +-1.0000000000 +1234567890.1234567890 +-1234567890.1234567800 PREHOOK: query: -- positive EXPLAIN SELECT +key FROM DECIMAL_UDF PREHOOK: type: QUERY @@ -1773,44 +1773,44 @@ POSTHOOK: query: SELECT +key FROM DECIMAL_UDF POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### --4400 +-4400.0000000000 NULL -0 -0 -100 -10 -1 -0.1 -0.01 -200 -20 -2 -0 -0.2 -0.02 -0.3 -0.33 -0.333 --0.3 --0.33 --0.333 -1 -2 -3.14 --1.12 --1.12 --1.122 -1.12 -1.122 -124 -125.2 --1255.49 -3.14 -3.14 -3.14 -1 --1234567890.123456789 -1234567890.12345678 +0.0000000000 +0.0000000000 +100.0000000000 +10.0000000000 +1.0000000000 +0.1000000000 +0.0100000000 +200.0000000000 +20.0000000000 +2.0000000000 +0.0000000000 +0.2000000000 +0.0200000000 +0.3000000000 +0.3300000000 +0.3330000000 +-0.3000000000 +-0.3300000000 +-0.3330000000 +1.0000000000 +2.0000000000 +3.1400000000 +-1.1200000000 +-1.1200000000 +-1.1220000000 +1.1200000000 +1.1220000000 +124.0000000000 +125.2000000000 +-1255.4900000000 +3.1400000000 +3.1400000000 +3.1400000000 +1.0000000000 +-1234567890.1234567890 +1234567890.1234567800 PREHOOK: query: -- ceiling EXPlAIN SELECT CEIL(key) FROM DECIMAL_UDF PREHOOK: type: QUERY @@ -2019,42 +2019,42 @@ POSTHOOK: query: SELECT ROUND(key, 2) FROM DECIMAL_UDF POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### --4400 +-4400.00 NULL -0 -0 -100 -10 -1 -0.1 +0.00 +0.00 +100.00 +10.00 +1.00 +0.10 0.01 -200 -20 -2 -0 -0.2 +200.00 +20.00 +2.00 +0.00 +0.20 0.02 -0.3 +0.30 0.33 0.33 --0.3 +-0.30 -0.33 -0.33 -1 -2 +1.00 +2.00 3.14 -1.12 -1.12 -1.12 1.12 1.12 -124 -125.2 +124.00 +125.20 -1255.49 3.14 3.14 3.14 -1 +1.00 -1234567890.12 1234567890.12 PREHOOK: query: -- power @@ -2182,44 +2182,44 @@ POSTHOOK: query: SELECT (key + 1) % (key / 2) FROM DECIMAL_UDF POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### --2199 +-2199.000000000000 NULL NULL NULL -1 -1 -0 -0 -0 -1 -1 -0 +1.000000000000 +1.000000000000 +0.000000000000 +0.000000000000 +0.000000000000 +1.000000000000 +1.000000000000 +0.000000000000 NULL -0 -0 -0.1 -0.01 -0.001 -0.1 -0.01 -0.001 -0 -0 -1 --0.12 --0.12 --0.122 -0.44 -0.439 -1 -1 --626.745 -1 -1 -1 -0 --617283944.0617283945 -1 +0.000000000000 +0.000000000000 +0.100000000000 +0.010000000000 +0.001000000000 +0.100000000000 +0.010000000000 +0.001000000000 +0.000000000000 +0.000000000000 +1.000000000000 +-0.120000000000 +-0.120000000000 +-0.122000000000 +0.440000000000 +0.439000000000 +1.000000000000 +1.000000000000 +-626.745000000000 +1.000000000000 +1.000000000000 +1.000000000000 +0.000000000000 +-617283944.061728394500 +1.000000000000 PREHOOK: query: -- stddev, var EXPLAIN SELECT value, stddev(key), variance(key) FROM DECIMAL_UDF GROUP BY value PREHOOK: type: QUERY @@ -2498,7 +2498,7 @@ POSTHOOK: query: SELECT MIN(key) FROM DECIMAL_UDF POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### --1234567890.123456789 +-1234567890.1234567890 PREHOOK: query: -- max EXPLAIN SELECT MAX(key) FROM DECIMAL_UDF PREHOOK: type: QUERY @@ -2558,7 +2558,7 @@ POSTHOOK: query: SELECT MAX(key) FROM DECIMAL_UDF POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf #### A masked pattern was here #### -1234567890.12345678 +1234567890.1234567800 PREHOOK: query: -- count EXPLAIN SELECT COUNT(key) FROM DECIMAL_UDF PREHOOK: type: QUERY http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/ql/src/test/results/clientpositive/vector_reduce_groupby_decimal.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/vector_reduce_groupby_decimal.q.out b/ql/src/test/results/clientpositive/vector_reduce_groupby_decimal.q.out index 77dc175..5352885 100644 --- a/ql/src/test/results/clientpositive/vector_reduce_groupby_decimal.q.out +++ b/ql/src/test/results/clientpositive/vector_reduce_groupby_decimal.q.out @@ -113,56 +113,56 @@ LIMIT 50 POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_test #### A masked pattern was here #### --1073051226 -7382.0 -4409.2486486486 -5280.969230769231 -4409.2486486486 --1072081801 8373.0 5001.1702702703 5989.915384615385 5001.1702702703 --1072076362 -5470.0 -3267.2162162162 -3913.1538461538466 -3267.2162162162 --1070883071 -741.0 -442.5972972973 -530.1 -442.5972972973 --1070551679 -947.0 -565.6405405405 -677.4692307692308 -565.6405405405 --1069512165 11417.0 6819.3432432432 8167.546153846154 6819.3432432432 --1069109166 8390.0 5011.3243243243 6002.076923076923 5011.3243243243 --1068623584 -14005.0 -8365.1486486486 -10018.961538461539 -8365.1486486486 --1067386090 -3977.0 -2375.4513513514 -2845.084615384616 -2375.4513513514 --1066922682 -9987.0 -5965.2081081081 -7144.546153846154 -5965.2081081081 --1066226047 -9439.0 -5637.8891891892 -6752.515384615385 -5637.8891891892 --1065117869 2538.0 1515.9405405405 1815.646153846154 1515.9405405405 --1064949302 6454.0 3854.9567567568 4617.092307692308 3854.9567567568 --1063498122 -11480.0 -6856.972972973 -8212.615384615387 -6856.972972973 --1062973443 10541.0 6296.1108108108 7540.869230769231 6296.1108108108 --1061614989 -4234.0 -2528.9567567568 -3028.938461538462 -2528.9567567568 --1061057428 -1085.0 -648.0675675676 -776.1923076923077 -648.0675675676 --1059941909 8782.0 5245.4648648649 6282.507692307693 5245.4648648649 --1059338191 7322.0 4373.4108108108 5238.046153846154 4373.4108108108 --1059047258 12452.0 7437.5459459459 8907.969230769231 7437.5459459459 --1056684111 13991.0 8356.7864864865 10008.946153846155 8356.7864864865 --1055945837 13690.0 8177 9793.615384615387 8177 --1055669248 2570.0 1535.0540540541 1838.538461538462 1535.0540540541 --1055316250 -14990.0 -8953.4864864865 -10723.615384615385 -8953.4864864865 --1053385587 14504.0 8663.2 10375.938461538462 8663.2 --1053238077 -3704.0 -2212.3891891892 -2649.784615384616 -2212.3891891892 --1052745800 -12404.0 -7408.8756756757 -8873.630769230771 -7408.8756756757 --1052322972 -7433.0 -4439.7108108108 -5317.453846153847 -4439.7108108108 --1050684541 -8261.0 -4934.272972973 -5909.792307692308 -4934.272972973 --1050657303 -6999.0 -4180.4837837838 -5006.976923076923 -4180.4837837838 --1050165799 8634.0 5157.0648648649 6176.63076923077 5157.0648648649 +-1073051226 -7382.0 -4409.2486486486 -5280.96923076923100 -4409.2486486486 +-1072081801 8373.0 5001.1702702703 5989.91538461538500 5001.1702702703 +-1072076362 -5470.0 -3267.2162162162 -3913.15384615384660 -3267.2162162162 +-1070883071 -741.0 -442.5972972973 -530.10000000000000 -442.5972972973 +-1070551679 -947.0 -565.6405405405 -677.46923076923080 -565.6405405405 +-1069512165 11417.0 6819.3432432432 8167.54615384615400 6819.3432432432 +-1069109166 8390.0 5011.3243243243 6002.07692307692300 5011.3243243243 +-1068623584 -14005.0 -8365.1486486486 -10018.96153846153900 -8365.1486486486 +-1067386090 -3977.0 -2375.4513513514 -2845.08461538461600 -2375.4513513514 +-1066922682 -9987.0 -5965.2081081081 -7144.54615384615400 -5965.2081081081 +-1066226047 -9439.0 -5637.8891891892 -6752.51538461538500 -5637.8891891892 +-1065117869 2538.0 1515.9405405405 1815.64615384615400 1515.9405405405 +-1064949302 6454.0 3854.9567567568 4617.09230769230800 3854.9567567568 +-1063498122 -11480.0 -6856.9729729730 -8212.61538461538700 -6856.9729729730 +-1062973443 10541.0 6296.1108108108 7540.86923076923100 6296.1108108108 +-1061614989 -4234.0 -2528.9567567568 -3028.93846153846200 -2528.9567567568 +-1061057428 -1085.0 -648.0675675676 -776.19230769230770 -648.0675675676 +-1059941909 8782.0 5245.4648648649 6282.50769230769300 5245.4648648649 +-1059338191 7322.0 4373.4108108108 5238.04615384615400 4373.4108108108 +-1059047258 12452.0 7437.5459459459 8907.96923076923100 7437.5459459459 +-1056684111 13991.0 8356.7864864865 10008.94615384615500 8356.7864864865 +-1055945837 13690.0 8177.0000000000 9793.61538461538700 8177.0000000000 +-1055669248 2570.0 1535.0540540541 1838.53846153846200 1535.0540540541 +-1055316250 -14990.0 -8953.4864864865 -10723.61538461538500 -8953.4864864865 +-1053385587 14504.0 8663.2000000000 10375.93846153846200 8663.2000000000 +-1053238077 -3704.0 -2212.3891891892 -2649.78461538461600 -2212.3891891892 +-1052745800 -12404.0 -7408.8756756757 -8873.63076923077100 -7408.8756756757 +-1052322972 -7433.0 -4439.7108108108 -5317.45384615384700 -4439.7108108108 +-1050684541 -8261.0 -4934.2729729730 -5909.79230769230800 -4934.2729729730 +-1050657303 -6999.0 -4180.4837837838 -5006.97692307692300 -4180.4837837838 +-1050165799 8634.0 5157.0648648649 6176.63076923077000 5157.0648648649 -1048934049 -524.0 -312.9837837838 -374.86153846153854 -312.9837837838 --1046399794 4130.0 2466.8378378378 2954.5384615384614 2466.8378378378 --1045867222 -8034.0 -4798.6864864865 -5747.400000000001 -4798.6864864865 --1045196363 -5039.0 -3009.7810810811 -3604.823076923077 -3009.7810810811 --1045181724 -5706.0 -3408.1783783784 -4081.9846153846156 -3408.1783783784 --1045087657 -5865.0 -3503.1486486486 -4195.7307692307695 -3503.1486486486 --1044207190 5381.0 3214.0567567568 3849.4846153846156 3214.0567567568 --1044093617 -3422.0 -2043.9513513514 -2448.046153846154 -2043.9513513514 --1043573508 16216.0 9685.772972973 11600.676923076924 9685.772972973 --1043132597 12302.0 7347.9513513514 8800.66153846154 7347.9513513514 --1043082182 9180.0 5483.1891891892 6567.2307692307695 5483.1891891892 --1042805968 5133.0 3065.927027027 3672.0692307692307 3065.927027027 --1042712895 9296.0 5552.4756756757 6650.215384615385 5552.4756756757 --1042396242 9583.0 5723.9 6855.53076923077 5723.9 --1041734429 -836.0 -499.3405405405 -598.0615384615385 -499.3405405405 --1041391389 -12970.0 -7746.9459459459 -9278.538461538463 -7746.9459459459 --1041252354 756.0 451.5567567568 540.8307692307692 451.5567567568 --1039776293 13704.0 8185.3621621622 9803.630769230771 8185.3621621622 --1039762548 -3802.0 -2270.9243243243 -2719.8923076923083 -2270.9243243243 +-1046399794 4130.0 2466.8378378378 2954.53846153846140 2466.8378378378 +-1045867222 -8034.0 -4798.6864864865 -5747.40000000000100 -4798.6864864865 +-1045196363 -5039.0 -3009.7810810811 -3604.82307692307700 -3009.7810810811 +-1045181724 -5706.0 -3408.1783783784 -4081.98461538461560 -3408.1783783784 +-1045087657 -5865.0 -3503.1486486486 -4195.73076923076950 -3503.1486486486 +-1044207190 5381.0 3214.0567567568 3849.48461538461560 3214.0567567568 +-1044093617 -3422.0 -2043.9513513514 -2448.04615384615400 -2043.9513513514 +-1043573508 16216.0 9685.7729729730 11600.67692307692400 9685.7729729730 +-1043132597 12302.0 7347.9513513514 8800.66153846154000 7347.9513513514 +-1043082182 9180.0 5483.1891891892 6567.23076923076950 5483.1891891892 +-1042805968 5133.0 3065.9270270270 3672.06923076923070 3065.9270270270 +-1042712895 9296.0 5552.4756756757 6650.21538461538500 5552.4756756757 +-1042396242 9583.0 5723.9000000000 6855.53076923077000 5723.9000000000 +-1041734429 -836.0 -499.3405405405 -598.06153846153850 -499.3405405405 +-1041391389 -12970.0 -7746.9459459459 -9278.53846153846300 -7746.9459459459 +-1041252354 756.0 451.5567567568 540.83076923076920 451.5567567568 +-1039776293 13704.0 8185.3621621622 9803.63076923077100 8185.3621621622 +-1039762548 -3802.0 -2270.9243243243 -2719.89230769230830 -2270.9243243243 PREHOOK: query: SELECT sum(hash(*)) FROM (SELECT cint, cdouble, cdecimal1, cdecimal2, min(cdecimal1) as min_decimal1 FROM decimal_test WHERE cdecimal1 is not null and cdecimal2 is not null http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/ql/src/test/results/clientpositive/windowing_decimal.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/windowing_decimal.q.out b/ql/src/test/results/clientpositive/windowing_decimal.q.out index 60563ba..b157a23 100644 --- a/ql/src/test/results/clientpositive/windowing_decimal.q.out +++ b/ql/src/test/results/clientpositive/windowing_decimal.q.out @@ -57,32 +57,32 @@ from part_dec POSTHOOK: type: QUERY POSTHOOK: Input: default@part_dec #### A masked pattern was here #### -Manufacturer#1 1173.15 1173.15 2346.3 -Manufacturer#1 1173.15 1173.15 2346.3 -Manufacturer#1 1414.42 1173.15 3760.72 -Manufacturer#1 1602.59 1173.15 5363.31 -Manufacturer#1 1632.66 1173.15 6995.97 -Manufacturer#1 1753.76 1173.15 8749.73 -Manufacturer#2 1690.68 1690.68 1690.68 -Manufacturer#2 1698.66 1690.68 3389.34 -Manufacturer#2 1701.6 1690.68 5090.94 -Manufacturer#2 1800.7 1690.68 6891.64 -Manufacturer#2 2031.98 1690.68 8923.62 -Manufacturer#3 1190.27 1190.27 1190.27 -Manufacturer#3 1337.29 1190.27 2527.56 -Manufacturer#3 1410.39 1190.27 3937.95 -Manufacturer#3 1671.68 1190.27 5609.63 -Manufacturer#3 1922.98 1190.27 7532.61 -Manufacturer#4 1206.26 1206.26 1206.26 -Manufacturer#4 1290.35 1206.26 2496.61 -Manufacturer#4 1375.42 1206.26 3872.03 -Manufacturer#4 1620.67 1206.26 5492.7 -Manufacturer#4 1844.92 1206.26 7337.62 -Manufacturer#5 1018.1 1018.1 1018.1 -Manufacturer#5 1464.48 1018.1 2482.58 -Manufacturer#5 1611.66 1018.1 4094.24 -Manufacturer#5 1788.73 1018.1 5882.97 -Manufacturer#5 1789.69 1018.1 7672.66 +Manufacturer#1 1173.150 1173.150 2346.300 +Manufacturer#1 1173.150 1173.150 2346.300 +Manufacturer#1 1414.420 1173.150 3760.720 +Manufacturer#1 1602.590 1173.150 5363.310 +Manufacturer#1 1632.660 1173.150 6995.970 +Manufacturer#1 1753.760 1173.150 8749.730 +Manufacturer#2 1690.680 1690.680 1690.680 +Manufacturer#2 1698.660 1690.680 3389.340 +Manufacturer#2 1701.600 1690.680 5090.940 +Manufacturer#2 1800.700 1690.680 6891.640 +Manufacturer#2 2031.980 1690.680 8923.620 +Manufacturer#3 1190.270 1190.270 1190.270 +Manufacturer#3 1337.290 1190.270 2527.560 +Manufacturer#3 1410.390 1190.270 3937.950 +Manufacturer#3 1671.680 1190.270 5609.630 +Manufacturer#3 1922.980 1190.270 7532.610 +Manufacturer#4 1206.260 1206.260 1206.260 +Manufacturer#4 1290.350 1206.260 2496.610 +Manufacturer#4 1375.420 1206.260 3872.030 +Manufacturer#4 1620.670 1206.260 5492.700 +Manufacturer#4 1844.920 1206.260 7337.620 +Manufacturer#5 1018.100 1018.100 1018.100 +Manufacturer#5 1464.480 1018.100 2482.580 +Manufacturer#5 1611.660 1018.100 4094.240 +Manufacturer#5 1788.730 1018.100 5882.970 +Manufacturer#5 1789.690 1018.100 7672.660 PREHOOK: query: select p_mfgr, p_retailprice, first_value(p_retailprice) over(partition by p_mfgr order by p_retailprice range between 5 preceding and current row) , sum(p_retailprice) over(partition by p_mfgr order by p_retailprice range between 5 preceding and current row) @@ -97,29 +97,29 @@ from part_dec POSTHOOK: type: QUERY POSTHOOK: Input: default@part_dec #### A masked pattern was here #### -Manufacturer#1 1173.15 1173.15 2346.3 -Manufacturer#1 1173.15 1173.15 2346.3 -Manufacturer#1 1414.42 1414.42 1414.42 -Manufacturer#1 1602.59 1602.59 1602.59 -Manufacturer#1 1632.66 1632.66 1632.66 -Manufacturer#1 1753.76 1753.76 1753.76 -Manufacturer#2 1690.68 1690.68 1690.68 -Manufacturer#2 1698.66 1698.66 1698.66 -Manufacturer#2 1701.6 1698.66 3400.26 -Manufacturer#2 1800.7 1800.7 1800.7 -Manufacturer#2 2031.98 2031.98 2031.98 -Manufacturer#3 1190.27 1190.27 1190.27 -Manufacturer#3 1337.29 1337.29 1337.29 -Manufacturer#3 1410.39 1410.39 1410.39 -Manufacturer#3 1671.68 1671.68 1671.68 -Manufacturer#3 1922.98 1922.98 1922.98 -Manufacturer#4 1206.26 1206.26 1206.26 -Manufacturer#4 1290.35 1290.35 1290.35 -Manufacturer#4 1375.42 1375.42 1375.42 -Manufacturer#4 1620.67 1620.67 1620.67 -Manufacturer#4 1844.92 1844.92 1844.92 -Manufacturer#5 1018.1 1018.1 1018.1 -Manufacturer#5 1464.48 1464.48 1464.48 -Manufacturer#5 1611.66 1611.66 1611.66 -Manufacturer#5 1788.73 1788.73 1788.73 -Manufacturer#5 1789.69 1788.73 3578.42 +Manufacturer#1 1173.150 1173.150 2346.300 +Manufacturer#1 1173.150 1173.150 2346.300 +Manufacturer#1 1414.420 1414.420 1414.420 +Manufacturer#1 1602.590 1602.590 1602.590 +Manufacturer#1 1632.660 1632.660 1632.660 +Manufacturer#1 1753.760 1753.760 1753.760 +Manufacturer#2 1690.680 1690.680 1690.680 +Manufacturer#2 1698.660 1698.660 1698.660 +Manufacturer#2 1701.600 1698.660 3400.260 +Manufacturer#2 1800.700 1800.700 1800.700 +Manufacturer#2 2031.980 2031.980 2031.980 +Manufacturer#3 1190.270 1190.270 1190.270 +Manufacturer#3 1337.290 1337.290 1337.290 +Manufacturer#3 1410.390 1410.390 1410.390 +Manufacturer#3 1671.680 1671.680 1671.680 +Manufacturer#3 1922.980 1922.980 1922.980 +Manufacturer#4 1206.260 1206.260 1206.260 +Manufacturer#4 1290.350 1290.350 1290.350 +Manufacturer#4 1375.420 1375.420 1375.420 +Manufacturer#4 1620.670 1620.670 1620.670 +Manufacturer#4 1844.920 1844.920 1844.920 +Manufacturer#5 1018.100 1018.100 1018.100 +Manufacturer#5 1464.480 1464.480 1464.480 +Manufacturer#5 1611.660 1611.660 1611.660 +Manufacturer#5 1788.730 1788.730 1788.730 +Manufacturer#5 1789.690 1788.730 3578.420 http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/ql/src/test/results/clientpositive/windowing_navfn.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/windowing_navfn.q.out b/ql/src/test/results/clientpositive/windowing_navfn.q.out index ae7d95a..a79fccc 100644 --- a/ql/src/test/results/clientpositive/windowing_navfn.q.out +++ b/ql/src/test/results/clientpositive/windowing_navfn.q.out @@ -287,13 +287,13 @@ POSTHOOK: Input: default@over10k 65536 98.42 65536 0.93 65536 83.48 -65536 75.7 +65536 75.70 65536 88.04 65536 94.09 65536 33.45 65536 44.41 65536 22.15 -65536 20.5 +65536 20.50 65536 58.86 65536 30.91 65536 74.47 @@ -310,9 +310,9 @@ POSTHOOK: Input: default@over10k 65536 80.26 65536 35.07 65536 95.88 -65536 30.6 +65536 30.60 65536 46.97 -65536 58.8 +65536 58.80 65536 5.72 65536 29.27 65536 62.25 @@ -336,7 +336,7 @@ POSTHOOK: Input: default@over10k 65537 35.86 65537 47.75 65537 1.12 -65537 52.9 +65537 52.90 65537 53.92 65537 43.45 65537 7.52 @@ -350,20 +350,20 @@ POSTHOOK: Input: default@over10k 65537 56.48 65537 83.21 65537 56.52 -65537 36.6 -65537 59.7 +65537 36.60 +65537 59.70 65537 80.14 -65537 66.3 +65537 66.30 65537 94.87 65537 40.92 -65537 25.2 +65537 25.20 65537 7.36 65538 NULL 65538 53.35 65538 54.64 65538 76.67 65538 15.17 -65538 1.2 +65538 1.20 65538 13.71 65538 81.59 65538 43.33 http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/ql/src/test/results/clientpositive/windowing_rank.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/windowing_rank.q.out b/ql/src/test/results/clientpositive/windowing_rank.q.out index 6a74a8e..67975f3 100644 --- a/ql/src/test/results/clientpositive/windowing_rank.q.out +++ b/ql/src/test/results/clientpositive/windowing_rank.q.out @@ -508,16 +508,16 @@ where rnk = 1 limit 10 POSTHOOK: type: QUERY POSTHOOK: Input: default@over10k #### A masked pattern was here #### -2013-03-01 09:11:58.70307 0.5 1 -2013-03-01 09:11:58.70307 0.5 1 -2013-03-01 09:11:58.70307 0.5 1 -2013-03-01 09:11:58.70307 0.5 1 -2013-03-01 09:11:58.70307 0.5 1 -2013-03-01 09:11:58.70307 0.5 1 -2013-03-01 09:11:58.70307 0.5 1 -2013-03-01 09:11:58.70307 0.5 1 -2013-03-01 09:11:58.70307 0.5 1 -2013-03-01 09:11:58.70307 0.5 1 +2013-03-01 09:11:58.70307 0.50 1 +2013-03-01 09:11:58.70307 0.50 1 +2013-03-01 09:11:58.70307 0.50 1 +2013-03-01 09:11:58.70307 0.50 1 +2013-03-01 09:11:58.70307 0.50 1 +2013-03-01 09:11:58.70307 0.50 1 +2013-03-01 09:11:58.70307 0.50 1 +2013-03-01 09:11:58.70307 0.50 1 +2013-03-01 09:11:58.70307 0.50 1 +2013-03-01 09:11:58.70307 0.50 1 PREHOOK: query: select ts, dec, rnk from (select ts, dec, @@ -546,16 +546,16 @@ where dec = 89.5 limit 10 POSTHOOK: type: QUERY POSTHOOK: Input: default@over10k #### A masked pattern was here #### -2013-03-01 09:11:58.703124 89.5 1 -2013-03-01 09:11:58.703124 89.5 1 -2013-03-01 09:11:58.703124 89.5 1 -2013-03-01 09:11:58.703124 89.5 1 -2013-03-01 09:11:58.703124 89.5 1 -2013-03-01 09:11:58.703124 89.5 1 -2013-03-01 09:11:58.703124 89.5 1 -2013-03-01 09:11:58.703124 89.5 1 -2013-03-01 09:11:58.703124 89.5 1 -2013-03-01 09:11:58.703124 89.5 1 +2013-03-01 09:11:58.703124 89.50 1 +2013-03-01 09:11:58.703124 89.50 1 +2013-03-01 09:11:58.703124 89.50 1 +2013-03-01 09:11:58.703124 89.50 1 +2013-03-01 09:11:58.703124 89.50 1 +2013-03-01 09:11:58.703124 89.50 1 +2013-03-01 09:11:58.703124 89.50 1 +2013-03-01 09:11:58.703124 89.50 1 +2013-03-01 09:11:58.703124 89.50 1 +2013-03-01 09:11:58.703124 89.50 1 PREHOOK: query: select ts, dec, rnk from (select ts, dec, @@ -586,13 +586,13 @@ where rnk = 1 limit 10 POSTHOOK: type: QUERY POSTHOOK: Input: default@over10k #### A masked pattern was here #### -2013-03-01 09:11:58.70307 37.3 1 -2013-03-01 09:11:58.70307 37.3 1 -2013-03-01 09:11:58.70307 37.3 1 -2013-03-01 09:11:58.70307 37.3 1 -2013-03-01 09:11:58.70307 37.3 1 -2013-03-01 09:11:58.70307 37.3 1 -2013-03-01 09:11:58.70307 37.3 1 -2013-03-01 09:11:58.70307 37.3 1 -2013-03-01 09:11:58.70307 37.3 1 -2013-03-01 09:11:58.70307 37.3 1 +2013-03-01 09:11:58.70307 37.30 1 +2013-03-01 09:11:58.70307 37.30 1 +2013-03-01 09:11:58.70307 37.30 1 +2013-03-01 09:11:58.70307 37.30 1 +2013-03-01 09:11:58.70307 37.30 1 +2013-03-01 09:11:58.70307 37.30 1 +2013-03-01 09:11:58.70307 37.30 1 +2013-03-01 09:11:58.70307 37.30 1 +2013-03-01 09:11:58.70307 37.30 1 +2013-03-01 09:11:58.70307 37.30 1 http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/ql/src/test/results/clientpositive/windowing_windowspec3.q.out ---------------------------------------------------------------------- diff --git a/ql/src/test/results/clientpositive/windowing_windowspec3.q.out b/ql/src/test/results/clientpositive/windowing_windowspec3.q.out index aeb5adc..e311cf9 100644 --- a/ql/src/test/results/clientpositive/windowing_windowspec3.q.out +++ b/ql/src/test/results/clientpositive/windowing_windowspec3.q.out @@ -215,18 +215,18 @@ POSTHOOK: type: QUERY POSTHOOK: Input: default@emp #### A masked pattern was here #### 10 7839 NULL 5000.0 5000.0 5000.0 NULL NULL 1687.5 5000.0 -10 7782 50 2450.0 2450.0 1687.5 NULL 1500.0 NULL 2350.0 -10 7934 100 1300.0 1875.0 1687.5 NULL NULL NULL 2350.0 -10 7987 150.5 1500.0 1750.0 1687.5 NULL NULL NULL 2350.0 -10 7988 200 1500.0 1687.5 1687.5 2450.0 NULL NULL 2350.0 +10 7782 50.00 2450.0 2450.0 1687.5 NULL 1500.0 NULL 2350.0 +10 7934 100.00 1300.0 1875.0 1687.5 NULL NULL NULL 2350.0 +10 7987 150.50 1500.0 1750.0 1687.5 NULL NULL NULL 2350.0 +10 7988 200.00 1500.0 1687.5 1687.5 2450.0 NULL NULL 2350.0 20 7788 NULL 3000.0 1975.0 1975.0 NULL NULL 2975.0 1975.0 20 7902 NULL 3000.0 1975.0 1975.0 NULL NULL 2975.0 1975.0 20 7876 NULL 1100.0 1975.0 1975.0 NULL NULL 2975.0 1975.0 20 7369 NULL 800.0 1975.0 1975.0 NULL NULL 2975.0 1975.0 -20 7566 100 2975.0 2975.0 2975.0 NULL NULL NULL 2175.0 +20 7566 100.00 2975.0 2975.0 2975.0 NULL NULL NULL 2175.0 30 7900 NULL 950.0 1900.0 1900.0 NULL NULL 1400.0 1900.0 30 7698 NULL 2850.0 1900.0 1900.0 NULL NULL 1400.0 1900.0 -30 7499 200.5 1600.0 1600.0 1450.0 NULL NULL 1250.0 1630.0 -30 7844 300 1500.0 1550.0 1400.0 NULL 1250.0 NULL 1566.6666666666667 -30 7521 300.5 1250.0 1450.0 1400.0 NULL 1250.0 NULL 1566.6666666666667 -30 7654 500 1250.0 1333.3333333333333 1333.3333333333333 1375.0 NULL NULL 1566.6666666666667 +30 7499 200.50 1600.0 1600.0 1450.0 NULL NULL 1250.0 1630.0 +30 7844 300.00 1500.0 1550.0 1400.0 NULL 1250.0 NULL 1566.6666666666667 +30 7521 300.50 1250.0 1450.0 1400.0 NULL 1250.0 NULL 1566.6666666666667 +30 7654 500.00 1250.0 1333.3333333333333 1333.3333333333333 1375.0 NULL NULL 1566.6666666666667 http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/serde/src/java/org/apache/hadoop/hive/serde2/binarysortable/fast/BinarySortableSerializeWrite.java ---------------------------------------------------------------------- diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/binarysortable/fast/BinarySortableSerializeWrite.java b/serde/src/java/org/apache/hadoop/hive/serde2/binarysortable/fast/BinarySortableSerializeWrite.java index 709e53f..9ea6e91 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/binarysortable/fast/BinarySortableSerializeWrite.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/binarysortable/fast/BinarySortableSerializeWrite.java @@ -366,7 +366,7 @@ public final class BinarySortableSerializeWrite implements SerializeWrite { * DECIMAL. */ @Override - public void writeHiveDecimal(HiveDecimal dec) throws IOException { + public void writeHiveDecimal(HiveDecimal dec, int scale) throws IOException { final boolean invert = columnSortOrderIsDesc[++index]; // This field is not a null. http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/serde/src/java/org/apache/hadoop/hive/serde2/fast/SerializeWrite.java ---------------------------------------------------------------------- diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/fast/SerializeWrite.java b/serde/src/java/org/apache/hadoop/hive/serde2/fast/SerializeWrite.java index e6fb8b6..21daa8b 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/fast/SerializeWrite.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/fast/SerializeWrite.java @@ -151,5 +151,5 @@ public interface SerializeWrite { /* * DECIMAL. */ - void writeHiveDecimal(HiveDecimal dec) throws IOException; + void writeHiveDecimal(HiveDecimal dec, int scale) throws IOException; } http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/serde/src/java/org/apache/hadoop/hive/serde2/lazy/LazyHiveDecimal.java ---------------------------------------------------------------------- diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/lazy/LazyHiveDecimal.java b/serde/src/java/org/apache/hadoop/hive/serde2/lazy/LazyHiveDecimal.java index 40601c0..4e82e9b 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/lazy/LazyHiveDecimal.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/lazy/LazyHiveDecimal.java @@ -102,12 +102,12 @@ public class LazyHiveDecimal extends LazyPrimitive<LazyHiveDecimalObjectInspecto * @param hiveDecimal * @throws IOException */ - public static void writeUTF8(OutputStream outputStream, HiveDecimal hiveDecimal) + public static void writeUTF8(OutputStream outputStream, HiveDecimal hiveDecimal, int scale) throws IOException { if (hiveDecimal == null) { outputStream.write(nullBytes); } else { - ByteBuffer b = Text.encode(hiveDecimal.toString()); + ByteBuffer b = Text.encode(hiveDecimal.toFormatString(scale)); outputStream.write(b.array(), 0, b.limit()); } } http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/serde/src/java/org/apache/hadoop/hive/serde2/lazy/LazyUtils.java ---------------------------------------------------------------------- diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/lazy/LazyUtils.java b/serde/src/java/org/apache/hadoop/hive/serde2/lazy/LazyUtils.java index d6b2219..29d6ad8 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/lazy/LazyUtils.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/lazy/LazyUtils.java @@ -304,8 +304,9 @@ public final class LazyUtils { break; } case DECIMAL: { + HiveDecimalObjectInspector decimalOI = (HiveDecimalObjectInspector) oi; LazyHiveDecimal.writeUTF8(out, - ((HiveDecimalObjectInspector) oi).getPrimitiveJavaObject(o)); + decimalOI.getPrimitiveJavaObject(o), decimalOI.scale()); break; } default: { http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/serde/src/java/org/apache/hadoop/hive/serde2/lazy/fast/LazySimpleSerializeWrite.java ---------------------------------------------------------------------- diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/lazy/fast/LazySimpleSerializeWrite.java b/serde/src/java/org/apache/hadoop/hive/serde2/lazy/fast/LazySimpleSerializeWrite.java index 986d246..b64a803 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/lazy/fast/LazySimpleSerializeWrite.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/lazy/fast/LazySimpleSerializeWrite.java @@ -20,7 +20,6 @@ package org.apache.hadoop.hive.serde2.lazy.fast; import java.io.IOException; import java.nio.ByteBuffer; -import java.nio.charset.CharacterCodingException; import java.sql.Date; import java.sql.Timestamp; @@ -34,7 +33,6 @@ import org.apache.hadoop.hive.common.type.HiveIntervalYearMonth; import org.apache.hadoop.hive.common.type.HiveVarchar; import org.apache.hadoop.hive.serde2.ByteStream.Output; import org.apache.hadoop.hive.serde2.io.DateWritable; -import org.apache.hadoop.hive.serde2.io.HiveDecimalWritable; import org.apache.hadoop.hive.serde2.io.HiveIntervalDayTimeWritable; import org.apache.hadoop.hive.serde2.io.HiveIntervalYearMonthWritable; import org.apache.hadoop.hive.serde2.io.TimestampWritable; @@ -47,13 +45,6 @@ import org.apache.hadoop.hive.serde2.lazy.LazyLong; import org.apache.hadoop.hive.serde2.lazy.LazySerDeParameters; import org.apache.hadoop.hive.serde2.lazy.LazyTimestamp; import org.apache.hadoop.hive.serde2.lazy.LazyUtils; -import org.apache.hadoop.hive.serde2.lazy.objectinspector.primitive.LazyObjectInspectorParameters; -import org.apache.hadoop.hive.serde2.lazybinary.LazyBinaryUtils; -import org.apache.hadoop.hive.serde2.objectinspector.primitive.ByteObjectInspector; -import org.apache.hadoop.hive.serde2.objectinspector.primitive.DateObjectInspector; -import org.apache.hadoop.hive.serde2.objectinspector.primitive.HiveDecimalObjectInspector; -import org.apache.hadoop.hive.serde2.objectinspector.primitive.LongObjectInspector; -import org.apache.hadoop.hive.serde2.objectinspector.primitive.TimestampObjectInspector; import org.apache.hadoop.hive.serde2.fast.SerializeWrite; import org.apache.hadoop.io.Text; import org.apache.hive.common.util.DateUtils; @@ -506,13 +497,12 @@ public final class LazySimpleSerializeWrite implements SerializeWrite { * DECIMAL. */ @Override - public void writeHiveDecimal(HiveDecimal v) throws IOException { - + public void writeHiveDecimal(HiveDecimal v, int scale) throws IOException { if (index > 0) { output.write(separator); } - LazyHiveDecimal.writeUTF8(output, v); + LazyHiveDecimal.writeUTF8(output, v, scale); index++; } http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/fast/LazyBinarySerializeWrite.java ---------------------------------------------------------------------- diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/fast/LazyBinarySerializeWrite.java b/serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/fast/LazyBinarySerializeWrite.java index ebe4181..8f81df6 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/fast/LazyBinarySerializeWrite.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/fast/LazyBinarySerializeWrite.java @@ -713,7 +713,7 @@ public class LazyBinarySerializeWrite implements SerializeWrite { * DECIMAL. */ @Override - public void writeHiveDecimal(HiveDecimal v) throws IOException { + public void writeHiveDecimal(HiveDecimal v, int scale) throws IOException { // Every 8 fields we write a NULL byte. if ((fieldIndex % 8) == 0) { http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/serde/src/test/org/apache/hadoop/hive/serde2/VerifyFast.java ---------------------------------------------------------------------- diff --git a/serde/src/test/org/apache/hadoop/hive/serde2/VerifyFast.java b/serde/src/test/org/apache/hadoop/hive/serde2/VerifyFast.java index fa46c9e..fc845a5 100644 --- a/serde/src/test/org/apache/hadoop/hive/serde2/VerifyFast.java +++ b/serde/src/test/org/apache/hadoop/hive/serde2/VerifyFast.java @@ -259,12 +259,12 @@ public class VerifyFast { } } - public static void serializeWrite(SerializeWrite serializeWrite, PrimitiveCategory primitiveCategory, Object object) throws IOException { + public static void serializeWrite(SerializeWrite serializeWrite, PrimitiveTypeInfo primitiveTypeInfo, Object object) throws IOException { if (object == null) { serializeWrite.writeNull(); return; } - switch (primitiveCategory) { + switch (primitiveTypeInfo.getPrimitiveCategory()) { case BOOLEAN: { boolean value = (Boolean) object; @@ -330,7 +330,8 @@ public class VerifyFast { case DECIMAL: { HiveDecimal value = (HiveDecimal) object; - serializeWrite.writeHiveDecimal(value); + DecimalTypeInfo decTypeInfo = (DecimalTypeInfo)primitiveTypeInfo; + serializeWrite.writeHiveDecimal(value, decTypeInfo.scale()); } break; case DATE: @@ -365,7 +366,7 @@ public class VerifyFast { } break; default: - throw new Error("Unknown primitive category " + primitiveCategory.name()); + throw new Error("Unknown primitive category " + primitiveTypeInfo.getPrimitiveCategory().name()); } } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/serde/src/test/org/apache/hadoop/hive/serde2/binarysortable/TestBinarySortableFast.java ---------------------------------------------------------------------- diff --git a/serde/src/test/org/apache/hadoop/hive/serde2/binarysortable/TestBinarySortableFast.java b/serde/src/test/org/apache/hadoop/hive/serde2/binarysortable/TestBinarySortableFast.java index 4438bdc..ae476ae 100644 --- a/serde/src/test/org/apache/hadoop/hive/serde2/binarysortable/TestBinarySortableFast.java +++ b/serde/src/test/org/apache/hadoop/hive/serde2/binarysortable/TestBinarySortableFast.java @@ -62,8 +62,7 @@ public class TestBinarySortableFast extends TestCase { int[] perFieldWriteLengths = new int[MyTestPrimitiveClass.primitiveCount]; for (int index = 0; index < MyTestPrimitiveClass.primitiveCount; index++) { Object object = t.getPrimitiveObject(index); - PrimitiveCategory primitiveCategory = t.getPrimitiveCategory(index); - VerifyFast.serializeWrite(binarySortableSerializeWrite, primitiveCategory, object); + VerifyFast.serializeWrite(binarySortableSerializeWrite, primitiveTypeInfoMap.get(t)[index], object); perFieldWriteLengths[index] = output.getLength(); } perFieldWriteLengthsArray[i] = perFieldWriteLengths; http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/serde/src/test/org/apache/hadoop/hive/serde2/lazy/TestLazySimpleFast.java ---------------------------------------------------------------------- diff --git a/serde/src/test/org/apache/hadoop/hive/serde2/lazy/TestLazySimpleFast.java b/serde/src/test/org/apache/hadoop/hive/serde2/lazy/TestLazySimpleFast.java index 951d91a..7ebe7ae 100644 --- a/serde/src/test/org/apache/hadoop/hive/serde2/lazy/TestLazySimpleFast.java +++ b/serde/src/test/org/apache/hadoop/hive/serde2/lazy/TestLazySimpleFast.java @@ -61,8 +61,7 @@ public class TestLazySimpleFast extends TestCase { for (int index = 0; index < MyTestPrimitiveClass.primitiveCount; index++) { Object object = t.getPrimitiveObject(index); - PrimitiveCategory primitiveCategory = t.getPrimitiveCategory(index); - VerifyFast.serializeWrite(lazySimpleSerializeWrite, primitiveCategory, object); + VerifyFast.serializeWrite(lazySimpleSerializeWrite, primitiveTypeInfosArray[i][index], object); } BytesWritable bytesWritable = new BytesWritable(); http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/serde/src/test/org/apache/hadoop/hive/serde2/lazybinary/TestLazyBinaryFast.java ---------------------------------------------------------------------- diff --git a/serde/src/test/org/apache/hadoop/hive/serde2/lazybinary/TestLazyBinaryFast.java b/serde/src/test/org/apache/hadoop/hive/serde2/lazybinary/TestLazyBinaryFast.java index a169586..4032743 100644 --- a/serde/src/test/org/apache/hadoop/hive/serde2/lazybinary/TestLazyBinaryFast.java +++ b/serde/src/test/org/apache/hadoop/hive/serde2/lazybinary/TestLazyBinaryFast.java @@ -60,8 +60,7 @@ public class TestLazyBinaryFast extends TestCase { for (int index = 0; index < MyTestPrimitiveClass.primitiveCount; index++) { Object object = t.getPrimitiveObject(index); - PrimitiveCategory primitiveCategory = t.getPrimitiveCategory(index); - VerifyFast.serializeWrite(lazyBinarySerializeWrite, primitiveCategory, object); + VerifyFast.serializeWrite(lazyBinarySerializeWrite, primitiveTypeInfosArray[i][index], object); } BytesWritable bytesWritable = new BytesWritable(); http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/storage-api/src/java/org/apache/hadoop/hive/common/type/HiveDecimal.java ---------------------------------------------------------------------- diff --git a/storage-api/src/java/org/apache/hadoop/hive/common/type/HiveDecimal.java b/storage-api/src/java/org/apache/hadoop/hive/common/type/HiveDecimal.java index 4ed17a2..1c6be91 100644 --- a/storage-api/src/java/org/apache/hadoop/hive/common/type/HiveDecimal.java +++ b/storage-api/src/java/org/apache/hadoop/hive/common/type/HiveDecimal.java @@ -102,6 +102,17 @@ public class HiveDecimal implements Comparable<HiveDecimal> { public String toString() { return bd.toPlainString(); } + + /** + * Return a string representation of the number with the number of decimal digits as + * the given scale. Please note that this is different from toString(). + * @param scale the number of digits after the decimal point + * @return the string representation of exact number of decimal digits + */ + public String toFormatString(int scale) { + return (bd.scale() == scale ? bd : + bd.setScale(scale, RoundingMode.HALF_UP)).toPlainString(); + } public HiveDecimal setScale(int i) { return new HiveDecimal(bd.setScale(i, RoundingMode.HALF_UP)); http://git-wip-us.apache.org/repos/asf/hive/blob/13f8cfec/storage-api/src/java/org/apache/hadoop/hive/ql/exec/vector/DecimalColumnVector.java ---------------------------------------------------------------------- diff --git a/storage-api/src/java/org/apache/hadoop/hive/ql/exec/vector/DecimalColumnVector.java b/storage-api/src/java/org/apache/hadoop/hive/ql/exec/vector/DecimalColumnVector.java index a7d31fa..fe8ad85 100644 --- a/storage-api/src/java/org/apache/hadoop/hive/ql/exec/vector/DecimalColumnVector.java +++ b/storage-api/src/java/org/apache/hadoop/hive/ql/exec/vector/DecimalColumnVector.java @@ -17,10 +17,8 @@ */ package org.apache.hadoop.hive.ql.exec.vector; -import java.io.IOException; import java.math.BigInteger; - import org.apache.hadoop.hive.serde2.io.HiveDecimalWritable; import org.apache.hadoop.hive.common.type.HiveDecimal;