diff --git a/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFCos.java b/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFCos.java index fdbca0c81b..97820e5882 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFCos.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFCos.java @@ -43,7 +43,7 @@ */ @Override protected DoubleWritable doEvaluate(DoubleWritable a) { - result.set(Math.cos(a.get())); + result.set(StrictMath.cos(a.get())); return result; } diff --git a/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFExp.java b/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFExp.java index 305d432250..a05489d868 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFExp.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFExp.java @@ -43,7 +43,7 @@ */ @Override protected DoubleWritable doEvaluate(DoubleWritable a) { - result.set(Math.exp(a.get())); + result.set(StrictMath.exp(a.get())); return result; } diff --git a/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFLn.java b/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFLn.java index e2c2afd516..7832a67d3b 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFLn.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFLn.java @@ -45,7 +45,7 @@ protected DoubleWritable doEvaluate(DoubleWritable a) { if (a.get() <= 0.0) { return null; } else { - result.set(Math.log(a.get())); + result.set(StrictMath.log(a.get())); return result; } } diff --git a/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFLog.java b/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFLog.java index 21723cd703..4f69ade01e 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFLog.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/udf/UDFLog.java @@ -72,7 +72,7 @@ protected DoubleWritable doEvaluate(DoubleWritable a) { if (a.get() <= 0.0) { return null; } else { - result.set(Math.log(a.get())); + result.set(StrictMath.log(a.get())); return result; } } @@ -81,7 +81,7 @@ private DoubleWritable log(double base, double input) { if (base <= 1.0 || input <= 0.0) { return null; } - result.set(Math.log(input) / Math.log(base)); + result.set(StrictMath.log(input) / StrictMath.log(base)); return result; } diff --git a/ql/src/test/results/clientpositive/llap/subquery_select.q.out b/ql/src/test/results/clientpositive/llap/subquery_select.q.out index 311cee743d..3726c40950 100644 --- a/ql/src/test/results/clientpositive/llap/subquery_select.q.out +++ b/ql/src/test/results/clientpositive/llap/subquery_select.q.out @@ -5974,14 +5974,14 @@ POSTHOOK: query: SELECT p_size, exp((SELECT max(p_size) FROM part p WHERE p.p_ty POSTHOOK: type: QUERY POSTHOOK: Input: default@part #### A masked pattern was here #### -1 2.718281828459045 +1 2.7182818284590455 10 22026.465794806718 12 162754.79141900392 14 1202604.2841647768 14 1202604.2841647768 17 2.9048849665247426E13 18 6.565996913733051E7 -19 1.7848230096318725E8 +19 1.7848230096318728E8 2 7.38905609893065 2 7.38905609893065 2 7.38905609893065 @@ -5993,7 +5993,7 @@ POSTHOOK: Input: default@part 31 2.9048849665247426E13 34 5.834617425274549E14 39 8.6593400423993744E16 -40 2.3538526683702E17 +40 2.35385266837019968E17 42 1.73927494152050099E18 45 3.4934271057485095E19 46 9.496119420602448E19 diff --git a/ql/src/test/results/clientpositive/llap/vector_decimal_udf2.q.out b/ql/src/test/results/clientpositive/llap/vector_decimal_udf2.q.out index 7c1fe9eac2..6b1859bfa5 100644 --- a/ql/src/test/results/clientpositive/llap/vector_decimal_udf2.q.out +++ b/ql/src/test/results/clientpositive/llap/vector_decimal_udf2.q.out @@ -165,7 +165,7 @@ FROM DECIMAL_UDF2_n0) q POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf2_n0 #### A masked pattern was here #### --3806952922 +-3806982713 PREHOOK: query: EXPLAIN VECTORIZATION DETAIL SELECT exp(key), ln(key), @@ -291,7 +291,7 @@ FROM DECIMAL_UDF2_n0) q POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf2_n0 #### A masked pattern was here #### -1514360349 +-1970715434 PREHOOK: query: EXPLAIN VECTORIZATION DETAIL SELECT acos(key), asin(key), atan(key), cos(key), sin(key), tan(key), radians(key) FROM DECIMAL_UDF2_txt WHERE key = 10 @@ -399,7 +399,7 @@ FROM DECIMAL_UDF2_txt) q POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf2_txt #### A masked pattern was here #### --3806952922 +-3806982713 PREHOOK: query: EXPLAIN VECTORIZATION DETAIL SELECT exp(key), ln(key), @@ -525,7 +525,7 @@ FROM DECIMAL_UDF2_txt) q POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf2_txt #### A masked pattern was here #### -1514360349 +-1970715434 PREHOOK: query: DROP TABLE IF EXISTS DECIMAL_UDF2_txt PREHOOK: type: DROPTABLE PREHOOK: Input: default@decimal_udf2_txt diff --git a/ql/src/test/results/clientpositive/llap/vectorized_math_funcs.q.out b/ql/src/test/results/clientpositive/llap/vectorized_math_funcs.q.out index 9febde9133..5d94c14cca 100644 --- a/ql/src/test/results/clientpositive/llap/vectorized_math_funcs.q.out +++ b/ql/src/test/results/clientpositive/llap/vectorized_math_funcs.q.out @@ -282,7 +282,7 @@ POSTHOOK: Input: default@alltypesorc -200.0 -200.0 -200 -200 0.8199077823142826 NULL NULL NULL NULL NULL NULL NULL 30.57531565116074 NULL NULL NULL NULL NULL NULL NULL 39998.48747140321 1011111010111000011011101011000 2D3230302E30 5F5C3758 200.0 36 NULL 0.8732972972139946 NULL 0.4871876750070059 NULL -1.5657963684609384 -11459.155902616465 -3.490658503988659 -200.0 1599879000 200.0 -1.0 1.0 NULL 15601.0 15601.0 15601 15601 0.38656833237681376 15601.00000000001 9.65509029374725 NULL 4.193152436852078 13.929350886124324 NULL NULL NULL NULL 13.929350886124324 NULL 13.929350886124324 194.02681610877246 194.02681610877246 124.90396310766124 NULL 1111111111111111111111111111111110010001001101101010100000011000 31353630312E30 FFFFFFFF9136A818 15601.0 38 NULL -0.14856570831397706 NULL 0.9889025383288114 NULL 1.5707322283397571 893871.4561835973 272.2888166036353 15601.0 -1858689000 -15601.0 1.0 -1.0 -0.9740573096878733 15601.0 15601.0 15601 15601 0.41161398527282966 15601.00000000001 9.65509029374725 NULL 4.193152436852078 13.929350886124324 NULL NULL 29.18993673432575 NULL 13.929350886124324 NULL 13.929350886124324 194.02681610877246 194.02681610877246 124.90396310766124 24747.04022706554 100100100000001011101000000000 31353630312E30 2480BA00 15601.0 5 NULL -0.14856570831397706 NULL 0.9889025383288114 NULL 1.5707322283397571 893871.4561835973 272.2888166036353 15601.0 612416000 -15601.0 1.0 1.0 -0.9740573096878733 -15601.0 15601.0 15601 15601 0.37807863784568585 15601.00000000001 9.65509029374725 3.871201010907891 4.193152436852078 13.929350886124324 NULL 5.584962500721157 NULL NULL 13.929350886124324 5.584962500721157 13.929350886124324 194.02681610877246 194.02681610877246 124.90396310766124 NULL 1111111111111111111111111111111111010000100101111100000100011000 31353630312E30 FFFFFFFFD097C118 15601.0 48 NULL -0.14856570831397706 NULL 0.9889025383288114 NULL 1.5707322283397571 893871.4561835973 272.2888166036353 15601.0 -795361000 -15601.0 1.0 -1.0 -0.9740573096878733 +15601.0 15601.0 15601 15601 0.37807863784568585 15601.00000000001 9.65509029374725 3.8712010109078907 4.193152436852078 13.929350886124324 NULL 5.584962500721157 NULL NULL 13.929350886124324 5.584962500721157 13.929350886124324 194.02681610877246 194.02681610877246 124.90396310766124 NULL 1111111111111111111111111111111111010000100101111100000100011000 31353630312E30 FFFFFFFFD097C118 15601.0 48 NULL -0.14856570831397706 NULL 0.9889025383288114 NULL 1.5707322283397571 893871.4561835973 272.2888166036353 15601.0 -795361000 -15601.0 1.0 -1.0 -0.9740573096878733 NULL NULL NULL NULL 0.3336458983920575 NULL NULL 2.0794415416798357 NULL NULL NULL 3.0 29.693388204506274 29.58473549442715 NULL 3.0 NULL NULL NULL NULL 29464.580431426475 110011101111110001011111011100 NULL 33BF17DC NULL 8 1 NULL NULL NULL NULL NULL NULL NULL NULL 868161500 NULL NULL 1.0 NULL NULL NULL NULL NULL 0.8681331660942196 NULL NULL 2.0794415416798357 NULL NULL NULL 3.0 NULL 29.730832334348488 NULL 3.0 NULL NULL NULL NULL NULL 1111111111111111111111111111111110010000111111111000101010111000 NULL FFFFFFFF90FF8AB8 NULL 8 0 NULL NULL NULL NULL NULL NULL NULL NULL -1862301000 NULL NULL -1.0 NULL -7196.0 -7196.0 -7196 -7196 0.03951015606275099 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1111111111111111111111111111111110100000010101110101001001110000 2D373139362E30 FFFFFFFFA0575270 7196.0 59 NULL -0.9834787875028149 NULL -0.18102340879563897 NULL -1.5706573607035177 -412300.4293761404 -125.59389297351194 -7196.0 -1604890000 7196.0 -1.0 -1.0 NULL diff --git a/ql/src/test/results/clientpositive/spark/subquery_select.q.out b/ql/src/test/results/clientpositive/spark/subquery_select.q.out index cbd33210d2..3f1a1d30a3 100644 --- a/ql/src/test/results/clientpositive/spark/subquery_select.q.out +++ b/ql/src/test/results/clientpositive/spark/subquery_select.q.out @@ -5908,14 +5908,14 @@ POSTHOOK: query: SELECT p_size, exp((SELECT max(p_size) FROM part p WHERE p.p_ty POSTHOOK: type: QUERY POSTHOOK: Input: default@part #### A masked pattern was here #### -1 2.718281828459045 +1 2.7182818284590455 10 22026.465794806718 12 162754.79141900392 14 1202604.2841647768 14 1202604.2841647768 17 2.9048849665247426E13 18 6.565996913733051E7 -19 1.7848230096318725E8 +19 1.7848230096318728E8 2 7.38905609893065 2 7.38905609893065 2 7.38905609893065 @@ -5927,7 +5927,7 @@ POSTHOOK: Input: default@part 31 2.9048849665247426E13 34 5.834617425274549E14 39 8.6593400423993744E16 -40 2.3538526683702E17 +40 2.35385266837019968E17 42 1.73927494152050099E18 45 3.4934271057485095E19 46 9.496119420602448E19 diff --git a/ql/src/test/results/clientpositive/spark/vectorized_math_funcs.q.out b/ql/src/test/results/clientpositive/spark/vectorized_math_funcs.q.out index fde2124138..69637840bd 100644 --- a/ql/src/test/results/clientpositive/spark/vectorized_math_funcs.q.out +++ b/ql/src/test/results/clientpositive/spark/vectorized_math_funcs.q.out @@ -281,7 +281,7 @@ POSTHOOK: Input: default@alltypesorc -200.0 -200.0 -200 -200 0.8199077823142826 NULL NULL NULL NULL NULL NULL NULL 30.57531565116074 NULL NULL NULL NULL NULL NULL NULL 39998.48747140321 1011111010111000011011101011000 2D3230302E30 5F5C3758 200.0 36 NULL 0.8732972972139946 NULL 0.4871876750070059 NULL -1.5657963684609384 -11459.155902616465 -3.490658503988659 -200.0 1599879000 200.0 -1.0 1.0 NULL 15601.0 15601.0 15601 15601 0.38656833237681376 15601.00000000001 9.65509029374725 NULL 4.193152436852078 13.929350886124324 NULL NULL NULL NULL 13.929350886124324 NULL 13.929350886124324 194.02681610877246 194.02681610877246 124.90396310766124 NULL 1111111111111111111111111111111110010001001101101010100000011000 31353630312E30 FFFFFFFF9136A818 15601.0 38 NULL -0.14856570831397706 NULL 0.9889025383288114 NULL 1.5707322283397571 893871.4561835973 272.2888166036353 15601.0 -1858689000 -15601.0 1.0 -1.0 -0.9740573096878733 15601.0 15601.0 15601 15601 0.41161398527282966 15601.00000000001 9.65509029374725 NULL 4.193152436852078 13.929350886124324 NULL NULL 29.18993673432575 NULL 13.929350886124324 NULL 13.929350886124324 194.02681610877246 194.02681610877246 124.90396310766124 24747.04022706554 100100100000001011101000000000 31353630312E30 2480BA00 15601.0 5 NULL -0.14856570831397706 NULL 0.9889025383288114 NULL 1.5707322283397571 893871.4561835973 272.2888166036353 15601.0 612416000 -15601.0 1.0 1.0 -0.9740573096878733 -15601.0 15601.0 15601 15601 0.37807863784568585 15601.00000000001 9.65509029374725 3.871201010907891 4.193152436852078 13.929350886124324 NULL 5.584962500721157 NULL NULL 13.929350886124324 5.584962500721157 13.929350886124324 194.02681610877246 194.02681610877246 124.90396310766124 NULL 1111111111111111111111111111111111010000100101111100000100011000 31353630312E30 FFFFFFFFD097C118 15601.0 48 NULL -0.14856570831397706 NULL 0.9889025383288114 NULL 1.5707322283397571 893871.4561835973 272.2888166036353 15601.0 -795361000 -15601.0 1.0 -1.0 -0.9740573096878733 +15601.0 15601.0 15601 15601 0.37807863784568585 15601.00000000001 9.65509029374725 3.8712010109078907 4.193152436852078 13.929350886124324 NULL 5.584962500721157 NULL NULL 13.929350886124324 5.584962500721157 13.929350886124324 194.02681610877246 194.02681610877246 124.90396310766124 NULL 1111111111111111111111111111111111010000100101111100000100011000 31353630312E30 FFFFFFFFD097C118 15601.0 48 NULL -0.14856570831397706 NULL 0.9889025383288114 NULL 1.5707322283397571 893871.4561835973 272.2888166036353 15601.0 -795361000 -15601.0 1.0 -1.0 -0.9740573096878733 NULL NULL NULL NULL 0.3336458983920575 NULL NULL 2.0794415416798357 NULL NULL NULL 3.0 29.693388204506274 29.58473549442715 NULL 3.0 NULL NULL NULL NULL 29464.580431426475 110011101111110001011111011100 NULL 33BF17DC NULL 8 1 NULL NULL NULL NULL NULL NULL NULL NULL 868161500 NULL NULL 1.0 NULL NULL NULL NULL NULL 0.8681331660942196 NULL NULL 2.0794415416798357 NULL NULL NULL 3.0 NULL 29.730832334348488 NULL 3.0 NULL NULL NULL NULL NULL 1111111111111111111111111111111110010000111111111000101010111000 NULL FFFFFFFF90FF8AB8 NULL 8 0 NULL NULL NULL NULL NULL NULL NULL NULL -1862301000 NULL NULL -1.0 NULL -7196.0 -7196.0 -7196 -7196 0.03951015606275099 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1111111111111111111111111111111110100000010101110101001001110000 2D373139362E30 FFFFFFFFA0575270 7196.0 59 NULL -0.9834787875028149 NULL -0.18102340879563897 NULL -1.5706573607035177 -412300.4293761404 -125.59389297351194 -7196.0 -1604890000 7196.0 -1.0 -1.0 NULL diff --git a/ql/src/test/results/clientpositive/vector_decimal_udf2.q.out b/ql/src/test/results/clientpositive/vector_decimal_udf2.q.out index a30987a08c..143de7a730 100644 --- a/ql/src/test/results/clientpositive/vector_decimal_udf2.q.out +++ b/ql/src/test/results/clientpositive/vector_decimal_udf2.q.out @@ -161,7 +161,7 @@ FROM DECIMAL_UDF2_n0) q POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf2_n0 #### A masked pattern was here #### --3806952922 +-3806982713 PREHOOK: query: EXPLAIN VECTORIZATION DETAIL SELECT exp(key), ln(key), @@ -283,7 +283,7 @@ FROM DECIMAL_UDF2_n0) q POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf2_n0 #### A masked pattern was here #### -1514360349 +-1970715434 PREHOOK: query: EXPLAIN VECTORIZATION DETAIL SELECT acos(key), asin(key), atan(key), cos(key), sin(key), tan(key), radians(key) FROM DECIMAL_UDF2_txt WHERE key = 10 @@ -387,7 +387,7 @@ FROM DECIMAL_UDF2_txt) q POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf2_txt #### A masked pattern was here #### --3806952922 +-3806982713 PREHOOK: query: EXPLAIN VECTORIZATION DETAIL SELECT exp(key), ln(key), @@ -509,7 +509,7 @@ FROM DECIMAL_UDF2_txt) q POSTHOOK: type: QUERY POSTHOOK: Input: default@decimal_udf2_txt #### A masked pattern was here #### -1514360349 +-1970715434 PREHOOK: query: DROP TABLE IF EXISTS DECIMAL_UDF2_txt PREHOOK: type: DROPTABLE PREHOOK: Input: default@decimal_udf2_txt diff --git a/ql/src/test/results/clientpositive/vectorized_math_funcs.q.out b/ql/src/test/results/clientpositive/vectorized_math_funcs.q.out index cc948db7f9..9308a2f760 100644 --- a/ql/src/test/results/clientpositive/vectorized_math_funcs.q.out +++ b/ql/src/test/results/clientpositive/vectorized_math_funcs.q.out @@ -278,7 +278,7 @@ POSTHOOK: Input: default@alltypesorc -200.0 -200.0 -200 -200 0.8199077823142826 NULL NULL NULL NULL NULL NULL NULL 30.57531565116074 NULL NULL NULL NULL NULL NULL NULL 39998.48747140321 1011111010111000011011101011000 2D3230302E30 5F5C3758 200.0 36 NULL 0.8732972972139946 NULL 0.4871876750070059 NULL -1.5657963684609384 -11459.155902616465 -3.490658503988659 -200.0 1599879000 200.0 -1.0 1.0 NULL 15601.0 15601.0 15601 15601 0.38656833237681376 15601.00000000001 9.65509029374725 NULL 4.193152436852078 13.929350886124324 NULL NULL NULL NULL 13.929350886124324 NULL 13.929350886124324 194.02681610877246 194.02681610877246 124.90396310766124 NULL 1111111111111111111111111111111110010001001101101010100000011000 31353630312E30 FFFFFFFF9136A818 15601.0 38 NULL -0.14856570831397706 NULL 0.9889025383288114 NULL 1.5707322283397571 893871.4561835973 272.2888166036353 15601.0 -1858689000 -15601.0 1.0 -1.0 -0.9740573096878733 15601.0 15601.0 15601 15601 0.41161398527282966 15601.00000000001 9.65509029374725 NULL 4.193152436852078 13.929350886124324 NULL NULL 29.18993673432575 NULL 13.929350886124324 NULL 13.929350886124324 194.02681610877246 194.02681610877246 124.90396310766124 24747.04022706554 100100100000001011101000000000 31353630312E30 2480BA00 15601.0 5 NULL -0.14856570831397706 NULL 0.9889025383288114 NULL 1.5707322283397571 893871.4561835973 272.2888166036353 15601.0 612416000 -15601.0 1.0 1.0 -0.9740573096878733 -15601.0 15601.0 15601 15601 0.37807863784568585 15601.00000000001 9.65509029374725 3.871201010907891 4.193152436852078 13.929350886124324 NULL 5.584962500721157 NULL NULL 13.929350886124324 5.584962500721157 13.929350886124324 194.02681610877246 194.02681610877246 124.90396310766124 NULL 1111111111111111111111111111111111010000100101111100000100011000 31353630312E30 FFFFFFFFD097C118 15601.0 48 NULL -0.14856570831397706 NULL 0.9889025383288114 NULL 1.5707322283397571 893871.4561835973 272.2888166036353 15601.0 -795361000 -15601.0 1.0 -1.0 -0.9740573096878733 +15601.0 15601.0 15601 15601 0.37807863784568585 15601.00000000001 9.65509029374725 3.8712010109078907 4.193152436852078 13.929350886124324 NULL 5.584962500721157 NULL NULL 13.929350886124324 5.584962500721157 13.929350886124324 194.02681610877246 194.02681610877246 124.90396310766124 NULL 1111111111111111111111111111111111010000100101111100000100011000 31353630312E30 FFFFFFFFD097C118 15601.0 48 NULL -0.14856570831397706 NULL 0.9889025383288114 NULL 1.5707322283397571 893871.4561835973 272.2888166036353 15601.0 -795361000 -15601.0 1.0 -1.0 -0.9740573096878733 NULL NULL NULL NULL 0.3336458983920575 NULL NULL 2.0794415416798357 NULL NULL NULL 3.0 29.693388204506274 29.58473549442715 NULL 3.0 NULL NULL NULL NULL 29464.580431426475 110011101111110001011111011100 NULL 33BF17DC NULL 8 1 NULL NULL NULL NULL NULL NULL NULL NULL 868161500 NULL NULL 1.0 NULL NULL NULL NULL NULL 0.8681331660942196 NULL NULL 2.0794415416798357 NULL NULL NULL 3.0 NULL 29.730832334348488 NULL 3.0 NULL NULL NULL NULL NULL 1111111111111111111111111111111110010000111111111000101010111000 NULL FFFFFFFF90FF8AB8 NULL 8 0 NULL NULL NULL NULL NULL NULL NULL NULL -1862301000 NULL NULL -1.0 NULL -7196.0 -7196.0 -7196 -7196 0.03951015606275099 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1111111111111111111111111111111110100000010101110101001001110000 2D373139362E30 FFFFFFFFA0575270 7196.0 59 NULL -0.9834787875028149 NULL -0.18102340879563897 NULL -1.5706573607035177 -412300.4293761404 -125.59389297351194 -7196.0 -1604890000 7196.0 -1.0 -1.0 NULL diff --git a/vector-code-gen/src/org/apache/hadoop/hive/tools/GenVectorCode.java b/vector-code-gen/src/org/apache/hadoop/hive/tools/GenVectorCode.java index cc413c828f..cc64aa4631 100644 --- a/vector-code-gen/src/org/apache/hadoop/hive/tools/GenVectorCode.java +++ b/vector-code-gen/src/org/apache/hadoop/hive/tools/GenVectorCode.java @@ -1067,11 +1067,11 @@ {"ColumnUnaryFunc", "FuncCeil", "long", "double", "Math.ceil", "", "(long)", "", ""}, // Ceil on an integer argument is a noop, but it is less code to handle it this way. {"ColumnUnaryFunc", "FuncCeil", "long", "long", "Math.ceil", "", "(long)", "", ""}, - {"ColumnUnaryFunc", "FuncExp", "double", "double", "Math.exp", "", "", "", ""}, - {"ColumnUnaryFunc", "FuncExp", "double", "long", "Math.exp", "(double)", "", "", ""}, - {"ColumnUnaryFunc", "FuncLn", "double", "double", "Math.log", "", "", + {"ColumnUnaryFunc", "FuncExp", "double", "double", "StrictMath.exp", "", "", "", ""}, + {"ColumnUnaryFunc", "FuncExp", "double", "long", "StrictMath.exp", "(double)", "", "", ""}, + {"ColumnUnaryFunc", "FuncLn", "double", "double", "StrictMath.log", "", "", "MathExpr.NaNToNull(outputColVector, sel, batch.selectedInUse, n, true);", ""}, - {"ColumnUnaryFunc", "FuncLn", "double", "long", "Math.log", "(double)", "", + {"ColumnUnaryFunc", "FuncLn", "double", "long", "StrictMath.log", "(double)", "", "MathExpr.NaNToNull(outputColVector, sel, batch.selectedInUse, n, true);", ""}, {"ColumnUnaryFunc", "FuncLog10", "double", "double", "Math.log10", "", "", "MathExpr.NaNToNull(outputColVector, sel, batch.selectedInUse, n, true);", ""}, @@ -1101,8 +1101,8 @@ {"ColumnUnaryFunc", "FuncAbs", "long", "long", "MathExpr.abs", "", "", "", ""}, {"ColumnUnaryFunc", "FuncSin", "double", "double", "Math.sin", "", "", "", ""}, {"ColumnUnaryFunc", "FuncSin", "double", "long", "Math.sin", "(double)", "", "", ""}, - {"ColumnUnaryFunc", "FuncCos", "double", "double", "Math.cos", "", "", "", ""}, - {"ColumnUnaryFunc", "FuncCos", "double", "long", "Math.cos", "(double)", "", "", ""}, + {"ColumnUnaryFunc", "FuncCos", "double", "double", "StrictMath.cos", "", "", "", ""}, + {"ColumnUnaryFunc", "FuncCos", "double", "long", "StrictMath.cos", "(double)", "", "", ""}, {"ColumnUnaryFunc", "FuncTan", "double", "double", "Math.tan", "", "", "", ""}, {"ColumnUnaryFunc", "FuncTan", "double", "long", "Math.tan", "(double)", "", "", ""}, {"ColumnUnaryFunc", "FuncATan", "double", "double", "Math.atan", "", "", "", ""},