You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@impala.apache.org by "Jim Apple (Code Review)" <ge...@cloudera.org> on 2019/02/17 05:01:44 UTC

[Impala-ASF-CR] IMPALA-5031: oversized signed shifts are undefined

Jim Apple has uploaded this change for review. ( http://gerrit.cloudera.org:8080/12514


Change subject: IMPALA-5031: oversized signed shifts are undefined
......................................................................

IMPALA-5031: oversized signed shifts are undefined

Standard section [expr.shift] says that E1 << E2 is undefined if E1 is
of signed type and the result cannot be represented in the
corresponding unsigned type. We can't simply change 1 << bit_width to
1u << bit_width, though, becuase it is the second argument of the
modulo operator, and following [expr.mul], "If the second operand of /
or % is zero the behavior is undefined."

Change-Id: I7debbd1ca5bd3ae640701ce0e95a12c5059abfd7
---
M be/src/util/rle-test.cc
1 file changed, 1 insertion(+), 0 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/14/12514/1
-- 
To view, visit http://gerrit.cloudera.org:8080/12514
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I7debbd1ca5bd3ae640701ce0e95a12c5059abfd7
Gerrit-Change-Number: 12514
Gerrit-PatchSet: 1
Gerrit-Owner: Jim Apple <jb...@apache.org>

[Impala-ASF-CR] IMPALA-5031: oversized signed shifts are undefined

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/12514 )

Change subject: IMPALA-5031: oversized signed shifts are undefined
......................................................................


Patch Set 1:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/2149/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/12514
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I7debbd1ca5bd3ae640701ce0e95a12c5059abfd7
Gerrit-Change-Number: 12514
Gerrit-PatchSet: 1
Gerrit-Owner: Jim Apple <jb...@apache.org>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Comment-Date: Sun, 17 Feb 2019 05:42:46 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-5031: oversized signed shifts are undefined

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/12514 )

Change subject: IMPALA-5031: oversized signed shifts are undefined
......................................................................

IMPALA-5031: oversized signed shifts are undefined

Standard section [expr.shift] says that E1 << E2 is undefined if E1 is
of signed type and the result cannot be represented in the
corresponding unsigned type. We can't simply change 1 << bit_width to
1u << bit_width, though, becuase it is the second argument of the
modulo operator, and following [expr.mul], "If the second operand of /
or % is zero the behavior is undefined."

This expression is tripped in RleTest.ValueSkippingFuzzy, with the
following backtrace:

util/rle-test.cc:304:29: runtime error: shift exponent 32 is too large
      for 32-bit type 'int'
    #0 RleTest::MakeRandomSequence(unsigned int, int, int, int)::
         {lambda(int)#1}::operator()(int) const util/rle-test.cc:304:29
    #1 RleTest::MakeRandomSequence(unsigned int, int, int, int)
         util/rle-test.cc:315:15
    #2 RleTest_ValueSkippingFuzzy_Test::TestBody()
         util/rle-test.cc:392:25

Change-Id: I7debbd1ca5bd3ae640701ce0e95a12c5059abfd7
Reviewed-on: http://gerrit.cloudera.org:8080/12514
Reviewed-by: Tim Armstrong <ta...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>
---
M be/src/util/rle-test.cc
1 file changed, 1 insertion(+), 0 deletions(-)

Approvals:
  Tim Armstrong: Looks good to me, approved
  Impala Public Jenkins: Verified

-- 
To view, visit http://gerrit.cloudera.org:8080/12514
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I7debbd1ca5bd3ae640701ce0e95a12c5059abfd7
Gerrit-Change-Number: 12514
Gerrit-PatchSet: 3
Gerrit-Owner: Jim Apple <jb...@apache.org>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Tim Armstrong <ta...@cloudera.com>

[Impala-ASF-CR] IMPALA-5031: oversized signed shifts are undefined

Posted by "Tim Armstrong (Code Review)" <ge...@cloudera.org>.
Tim Armstrong has posted comments on this change. ( http://gerrit.cloudera.org:8080/12514 )

Change subject: IMPALA-5031: oversized signed shifts are undefined
......................................................................


Patch Set 2: Code-Review+2


-- 
To view, visit http://gerrit.cloudera.org:8080/12514
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I7debbd1ca5bd3ae640701ce0e95a12c5059abfd7
Gerrit-Change-Number: 12514
Gerrit-PatchSet: 2
Gerrit-Owner: Jim Apple <jb...@apache.org>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Tim Armstrong <ta...@cloudera.com>
Gerrit-Comment-Date: Tue, 19 Feb 2019 17:16:41 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-5031: oversized signed shifts are undefined

Posted by "Jim Apple (Code Review)" <ge...@cloudera.org>.
Hello Impala Public Jenkins, 

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/12514

to look at the new patch set (#2).

Change subject: IMPALA-5031: oversized signed shifts are undefined
......................................................................

IMPALA-5031: oversized signed shifts are undefined

Standard section [expr.shift] says that E1 << E2 is undefined if E1 is
of signed type and the result cannot be represented in the
corresponding unsigned type. We can't simply change 1 << bit_width to
1u << bit_width, though, becuase it is the second argument of the
modulo operator, and following [expr.mul], "If the second operand of /
or % is zero the behavior is undefined."

This expression is tripped in RleTest.ValueSkippingFuzzy, with the
following backtrace:

util/rle-test.cc:304:29: runtime error: shift exponent 32 is too large
      for 32-bit type 'int'
    #0 RleTest::MakeRandomSequence(unsigned int, int, int, int)::
         {lambda(int)#1}::operator()(int) const util/rle-test.cc:304:29
    #1 RleTest::MakeRandomSequence(unsigned int, int, int, int)
         util/rle-test.cc:315:15
    #2 RleTest_ValueSkippingFuzzy_Test::TestBody()
         util/rle-test.cc:392:25

Change-Id: I7debbd1ca5bd3ae640701ce0e95a12c5059abfd7
---
M be/src/util/rle-test.cc
1 file changed, 1 insertion(+), 0 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/14/12514/2
-- 
To view, visit http://gerrit.cloudera.org:8080/12514
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I7debbd1ca5bd3ae640701ce0e95a12c5059abfd7
Gerrit-Change-Number: 12514
Gerrit-PatchSet: 2
Gerrit-Owner: Jim Apple <jb...@apache.org>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>

[Impala-ASF-CR] IMPALA-5031: oversized signed shifts are undefined

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/12514 )

Change subject: IMPALA-5031: oversized signed shifts are undefined
......................................................................


Patch Set 2: Verified+1


-- 
To view, visit http://gerrit.cloudera.org:8080/12514
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I7debbd1ca5bd3ae640701ce0e95a12c5059abfd7
Gerrit-Change-Number: 12514
Gerrit-PatchSet: 2
Gerrit-Owner: Jim Apple <jb...@apache.org>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Tim Armstrong <ta...@cloudera.com>
Gerrit-Comment-Date: Tue, 19 Feb 2019 21:39:01 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-5031: oversized signed shifts are undefined

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/12514 )

Change subject: IMPALA-5031: oversized signed shifts are undefined
......................................................................


Patch Set 2:

Build started: https://jenkins.impala.io/job/gerrit-verify-dryrun/3791/ DRY_RUN=false


-- 
To view, visit http://gerrit.cloudera.org:8080/12514
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I7debbd1ca5bd3ae640701ce0e95a12c5059abfd7
Gerrit-Change-Number: 12514
Gerrit-PatchSet: 2
Gerrit-Owner: Jim Apple <jb...@apache.org>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Tim Armstrong <ta...@cloudera.com>
Gerrit-Comment-Date: Tue, 19 Feb 2019 17:24:46 +0000
Gerrit-HasComments: No