[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/8004 ) Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 7: Verified+1 -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-Change-Number: 8004 Gerrit-PatchSet: 7 Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Impala Public Jenkins Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-Comment-Date: Sat, 23 Sep 2017 02:41:30 + Gerrit-HasComments: No
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Impala Public Jenkins has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/8004 ) Change subject: IMPALA-4513: Promote integer types for ABS() .. IMPALA-4513: Promote integer types for ABS() The internal representation of the most negative number in two's complement requires 1 more bit to represent the positive version. This means ABS() must promote integer types to the next highest width. Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Reviewed-on: http://gerrit.cloudera.org:8080/8004 Reviewed-by: Tim ArmstrongTested-by: Impala Public Jenkins --- M be/src/exprs/expr-test.cc M be/src/exprs/math-functions-ir.cc M be/src/exprs/math-functions.h M common/function-registry/impala_functions.py M testdata/workloads/functional-query/queries/QueryTest/exprs.test 5 files changed, 41 insertions(+), 13 deletions(-) Approvals: Tim Armstrong: Looks good to me, approved Impala Public Jenkins: Verified -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-Change-Number: 8004 Gerrit-PatchSet: 8 Gerrit-Owner: Zach Amsden Gerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Impala Public Jenkins Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/8004 ) Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 7: Build started: https://jenkins.impala.io/job/gerrit-verify-dryrun/1260/ -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-Change-Number: 8004 Gerrit-PatchSet: 7 Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Impala Public Jenkins Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-Comment-Date: Fri, 22 Sep 2017 22:36:36 + Gerrit-HasComments: No
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Tim Armstrong has posted comments on this change. ( http://gerrit.cloudera.org:8080/8004 ) Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 7: Code-Review+2 -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-Change-Number: 8004 Gerrit-PatchSet: 7 Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Impala Public Jenkins Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-Comment-Date: Fri, 22 Sep 2017 22:36:27 + Gerrit-HasComments: No
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Zach Amsden has posted comments on this change. ( http://gerrit.cloudera.org:8080/8004 ) Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 7: Finally got back to this, looks like this was the only broken test. -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-Change-Number: 8004 Gerrit-PatchSet: 7 Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Impala Public Jenkins Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-Comment-Date: Fri, 22 Sep 2017 22:32:23 + Gerrit-HasComments: No
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Hello Lars Volker, Michael Brown, Tim Armstrong, Alex Behm, Dan Hecht, Impala Public Jenkins, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/8004 to look at the new patch set (#6). Change subject: IMPALA-4513: Promote integer types for ABS() .. IMPALA-4513: Promote integer types for ABS() The internal representation of the most negative number in two's complement requires 1 more bit to represent the positive version. This means ABS() must promote integer types to the next highest width. Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 --- M be/src/exprs/expr-test.cc M be/src/exprs/math-functions-ir.cc M be/src/exprs/math-functions.h M common/function-registry/impala_functions.py M testdata/workloads/functional-query/queries/QueryTest/exprs.test 5 files changed, 41 insertions(+), 13 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/04/8004/6 -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-Change-Number: 8004 Gerrit-PatchSet: 6 Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Impala Public Jenkins Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Zach Amsden has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 5: Sorry, been under C6 crunch. Will get back to this today. -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 5 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Impala Public Jenkins Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: No
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Tim Armstrong has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 5: Ping? -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 5 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Impala Public Jenkins Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: No
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Tim Armstrong has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 5: test_exprs failed: 22:20:21 ] TestExprs.test_exprs[exec_option: {'batch_size': 0, 'num_nodes': 0, 'disable_codegen_rows_threshold': 0, 'disable_codegen': False, 'abort_on_error': 1, 'exec_single_node_rows_threshold': 0} | table_format: text/none | enable_expr_rewrites: 1] 22:20:21 ] [gw9] linux2 -- Python 2.7.12 /home/ubuntu/Impala/bin/../infra/python/env/bin/python 22:20:21 ] query_test/test_exprs.py:58: in test_exprs 22:20:21 ] self.run_test_case('QueryTest/exprs', vector) 22:20:21 ] common/impala_test_suite.py:419: in run_test_case 22:20:21 ] self.__verify_results_and_errors(vector, test_section, result, use_db) 22:20:21 ] common/impala_test_suite.py:292: in __verify_results_and_errors 22:20:21 ] replace_filenames_with_placeholder) 22:20:21 ] common/test_result_verifier.py:348: in verify_raw_results 22:20:21 ] verify_results(expected_types, actual_types, order_matters=True) 22:20:21 ] common/test_result_verifier.py:258: in verify_results 22:20:21 ] assert expected_results == actual_results 22:20:21 ] E assert ['INT', 'SMAL... 'FLOAT', ...] == ['BIGINT', 'IN... 'FLOAT', ...] 22:20:21 ] E At index 0 diff: 'INT' != 'BIGINT' 22:20:21 ] E Use -v to get the full diff -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 5 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Impala Public Jenkins Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: No
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Impala Public Jenkins has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 5: Verified-1 Build failed: https://jenkins.impala.io/job/gerrit-verify-dryrun/1209/ -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 5 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Impala Public Jenkins Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: No
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Impala Public Jenkins has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 5: Build started: https://jenkins.impala.io/job/gerrit-verify-dryrun/1209/ -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 5 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Impala Public Jenkins Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: No
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Tim Armstrong has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 5: Code-Review+2 -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 5 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: No
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Tim Armstrong has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 4: Code-Review+2 -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 4 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: No
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Hello Lars Volker, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/8004 to look at the new patch set (#4). Change subject: IMPALA-4513: Promote integer types for ABS() .. IMPALA-4513: Promote integer types for ABS() The internal representation of the most negative number in two's complement requires 1 more bit to represent the positive version. This means ABS() must promote integer types to the next highest width. Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 --- M be/src/exprs/expr-test.cc M be/src/exprs/math-functions-ir.cc M be/src/exprs/math-functions.h M common/function-registry/impala_functions.py 4 files changed, 39 insertions(+), 11 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/04/8004/4 -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 4 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Tim Armstrong has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 3: (1 comment) http://gerrit.cloudera.org:8080/#/c/8004/3/be/src/exprs/expr-test.cc File be/src/exprs/expr-test.cc: Line 4215: TestValue("abs(-127)", TYPE_SMALLINT, 127); > I tested this manually but didn't think the test was super useful. Can add I agree it's unlikely that we'd break the positive case, but it would really suck if we did and didn't catch it :) -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 3 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: Yes
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Zach Amsden has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 3: (2 comments) Decimal is immune to this because the range is clamped. Float and double are immune because there is a sign bit. http://gerrit.cloudera.org:8080/#/c/8004/3/be/src/exprs/expr-test.cc File be/src/exprs/expr-test.cc: Line 4215: TestValue("abs(-127)", TYPE_SMALLINT, 127); > It looks like we don't have other coverage for abs integral expressions. Ma I tested this manually but didn't think the test was super useful. Can add it anyway though (would protect against a bug which somehow reversed sign) http://gerrit.cloudera.org:8080/#/c/8004/3/be/src/exprs/math-functions-ir.cc File be/src/exprs/math-functions-ir.cc: Line 70: ctx->AddWarning("Expression overflowed, returning NULL"); > Maybe "abs() overflowed, returning NULL" to make it easier for users to tra Done -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 3 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: Yes
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Tim Armstrong has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 3: (2 comments) Looks good to me modulo a couple of minor tweaks. The same bug can't apply to decimal, right? Because there's no asymmetry with the upper and lower bounds of the type. http://gerrit.cloudera.org:8080/#/c/8004/3/be/src/exprs/expr-test.cc File be/src/exprs/expr-test.cc: Line 4215: TestValue("abs(-127)", TYPE_SMALLINT, 127); It looks like we don't have other coverage for abs integral expressions. Maybe add test cases for the maximum positive inputs here too for good measure? http://gerrit.cloudera.org:8080/#/c/8004/3/be/src/exprs/math-functions-ir.cc File be/src/exprs/math-functions-ir.cc: Line 70: ctx->AddWarning("Expression overflowed, returning NULL"); Maybe "abs() overflowed, returning NULL" to make it easier for users to track down the problem. -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 3 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: Yes
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Lars Volker has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 3: Code-Review+1 -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 3 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: No
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Zach Amsden has uploaded a new patch set (#3). Change subject: IMPALA-4513: Promote integer types for ABS() .. IMPALA-4513: Promote integer types for ABS() The internal representation of the most negative number in two's complement requires 1 more bit to represent the positive version. This means ABS() must promote integer types to the next highest width. Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 --- M be/src/exprs/expr-test.cc M be/src/exprs/math-functions-ir.cc M be/src/exprs/math-functions.h M common/function-registry/impala_functions.py 4 files changed, 31 insertions(+), 11 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/04/8004/3 -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 3 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Zach Amsden
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Zach Amsden has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 2: (3 comments) http://gerrit.cloudera.org:8080/#/c/8004/2/be/src/exprs/expr-test.cc File be/src/exprs/expr-test.cc: Line 4216: TestValue("abs(-128)", TYPE_SMALLINT, 128); > What does this do with abs(-100 - 27)? How about abs(-200 + 100)? The types may be promoted or not depending on operator precedence (I believe we have some weirdness with unary minus) but the end result is now the same: [localhost:21000] > select abs(-100 - 27); Query: select abs(-100 - 27) Query submitted at: 2017-09-07 19:30:10 (Coordinator: http://zach-pa:25000) Query progress can be monitored at: http://zach-pa:25000/query_plan?query_id=c42cf1a096e10f3:48ac2186 ++ | abs(-100 - 27) | ++ | 127| ++ Fetched 1 row(s) in 0.01s [localhost:21000] > select abs(-200 + 100); Query: select abs(-200 + 100) Query submitted at: 2017-09-07 19:30:22 (Coordinator: http://zach-pa:25000) Query progress can be monitored at: http://zach-pa:25000/query_plan?query_id=2548f7f5364aa478:70dc0e3e +-+ | abs(-200 + 100) | +-+ | 100 | +-+ Fetched 1 row(s) in 0.01s http://gerrit.cloudera.org:8080/#/c/8004/2/be/src/exprs/math-functions-ir.cc File be/src/exprs/math-functions-ir.cc: Line 65: ctx->AddWarning("Expression overflowed, returning NULL"); > Do we have a test for this case? Not sure it is possible to test the warning message without adding more machinery, but there is a test for the case. Line 73: ONE_ARG_MATH_FN(Abs, BigIntVal, IntVal, llabs); > Maybe mention the upcast in a comment here? Otherwise it seems easy to miss Done -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 2 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: Yes
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Lars Volker has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 2: (3 comments) Looks good to me, but I'm no expert in this part of the codebase. http://gerrit.cloudera.org:8080/#/c/8004/2/be/src/exprs/expr-test.cc File be/src/exprs/expr-test.cc: Line 4216: TestValue("abs(-128)", TYPE_SMALLINT, 128); What does this do with abs(-100 - 27)? How about abs(-200 + 100)? http://gerrit.cloudera.org:8080/#/c/8004/2/be/src/exprs/math-functions-ir.cc File be/src/exprs/math-functions-ir.cc: Line 65: ctx->AddWarning("Expression overflowed, returning NULL"); Do we have a test for this case? Line 73: ONE_ARG_MATH_FN(Abs, BigIntVal, IntVal, llabs); Maybe mention the upcast in a comment here? Otherwise it seems easy to miss. -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 2 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: Yes
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Zach Amsden has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 2: As per Greg's request, add overflow check for BIGINT. All other types just get promoted. -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 2 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: No
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Zach Amsden has uploaded a new patch set (#2). Change subject: IMPALA-4513: Promote integer types for ABS() .. IMPALA-4513: Promote integer types for ABS() The internal representation of the most negative number in 2's complement requires 1 more bit to represent the positive version. This means ABS() must promote integer types to the next highest width. Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 --- M be/src/exprs/expr-test.cc M be/src/exprs/math-functions-ir.cc M be/src/exprs/math-functions.h M common/function-registry/impala_functions.py 4 files changed, 26 insertions(+), 11 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/04/8004/2 -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 2 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Michael Brown Gerrit-Reviewer: Zach Amsden
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Zach Amsden has posted comments on this change. Change subject: IMPALA-4513: Promote integer types for ABS() .. Patch Set 1: (1 comment) http://gerrit.cloudera.org:8080/#/c/8004/1/be/src/exprs/expr-test.cc File be/src/exprs/expr-test.cc: Line 4219: TestValue("abs(-1 * cast(pow(2, 31) as int))", TYPE_BIGINT, 2147483648); Obviously there is going to be some debate about what to do about BIGINT types. Let's do that in the JIRA. -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 1 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach AmsdenGerrit-Reviewer: Alex Behm Gerrit-Reviewer: Dan Hecht Gerrit-Reviewer: Lars Volker Gerrit-Reviewer: Zach Amsden Gerrit-HasComments: Yes
[Impala-ASF-CR] IMPALA-4513: Promote integer types for ABS()
Zach Amsden has uploaded a new change for review. http://gerrit.cloudera.org:8080/8004 Change subject: IMPALA-4513: Promote integer types for ABS() .. IMPALA-4513: Promote integer types for ABS() The internal representation of the most negative number in 2's complement requires 1 more bit to represent the positive version. This means ABS() must promote integer types to the next highest width. Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 --- M be/src/exprs/expr-test.cc M be/src/exprs/math-functions-ir.cc M be/src/exprs/math-functions.h M common/function-registry/impala_functions.py 4 files changed, 15 insertions(+), 10 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/04/8004/1 -- To view, visit http://gerrit.cloudera.org:8080/8004 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I86cc880e78258d5f90471bd8af4caeb4305eed77 Gerrit-PatchSet: 1 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Zach Amsden