[ 
https://issues.apache.org/jira/browse/IMPALA-9447?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17050403#comment-17050403
 ] 

ASF subversion and git services commented on IMPALA-9447:
---------------------------------------------------------

Commit d448f465091455082e9e71020f860edbb4465ba9 in impala's branch 
refs/heads/master from norbert.luksa
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=d448f46 ]

IMPALA-9447: Fix for TupleRowCompareTest.DecimalTest crash

TupleRowCompareTest.DecimalTest crashes on release build
because of a faulty test. The problem occures with Decimal16Value
when the test tries to copy the values into the tuple in FillMem().

The solution is to use memcpy to avoid gcc generating unaligned
instructions like movaps for int128_t. They would raise SegmentFault
when addresses are not aligned to 16 bytes. This works with the
other types as well.

Tests:
 - Run TupleRowCompareTest.

Change-Id: If2a53c88b57cec3a0bfcf02c492fbb560a80682d
Reviewed-on: http://gerrit.cloudera.org:8080/15347
Reviewed-by: Impala Public Jenkins <[email protected]>
Tested-by: Impala Public Jenkins <[email protected]>


> TupleRowCompareTest.DecimalTest crashes on release build
> --------------------------------------------------------
>
>                 Key: IMPALA-9447
>                 URL: https://issues.apache.org/jira/browse/IMPALA-9447
>             Project: IMPALA
>          Issue Type: Bug
>          Components: Backend
>    Affects Versions: Impala 3.4.0
>            Reporter: Joe McDonnell
>            Assignee: Norbert Luksa
>            Priority: Blocker
>              Labels: broken-build
>
> TupleRowCompareTest.DecimalTest crashes on the release build with the 
> following stack:
> {noformat}
> Operating system: Linux
>                   0.0.0 Linux 4.15.0-64-generic #73~16.04.1-Ubuntu SMP Fri 
> Sep 13 09:56:18 UTC 2019 x86_64
> CPU: amd64
>      family 6 model 94 stepping 3
>      1 CPUGPU: UNKNOWNCrash reason:  SIGSEGV
> Crash address: 0x0
> Process uptime: not availableThread 0 (crashed)
>  0  unifiedbetests!int 
> impala::TupleRowCompareTest::DecimalDecimalTest<impala::DecimalValue<__int128>
>  >(long, long, long, long, int, int) [tuple-row-compare-test.cc : 121 + 0x0]
>     rax = 0x000000000d2b2598   rdx = 0x0000000000000021
>     rcx = 0x000000000e34e640   rbx = 0x000000000d1def00
>     rsi = 0x00000000000005b9   rdi = 0x000000000d1df0d8
>     rbp = 0x00007ffcc5aff280   rsp = 0x00007ffcc5aff150
>      r8 = 0x0000000000000000    r9 = 0x0000000000000064
>     r10 = 0x0000000000000000   r11 = 0x0000000000000001
>     r12 = 0x000000000d1df0d8   r13 = 0x0000000000000002
>     r14 = 0x00007ffcc5aff101   r15 = 0x000000000d2b2580
>     rip = 0x00000000014b6981
>     Found by: given as instruction pointer in context
>  1  unifiedbetests!impala::TupleRowCompareTest_DecimalTest_Test::TestBody() 
> [tuple-row-compare-test.cc : 560 + 0x30]
>     rbx = 0x00007ffcc5aff2b0   rbp = 0x00007ffcc5aff2f0
>     rsp = 0x00007ffcc5aff290   r12 = 0x00007ffcc5aff2a0
>     r13 = 0x00007ffcc5aff2c0   r14 = 0x000000000d1def00
>     r15 = 0x0000000003399ef0   rip = 0x00000000014a0c81
>     Found by: call frame info
>  2  unifiedbetests!void 
> testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, 
> void>(testing::Test*, void (testing::Test::*)(), char const*) + 0x33
>     rbx = 0x00000000014a01d0   rbp = 0x0000000000000000
>     rsp = 0x00007ffcc5aff300   r12 = 0x000000000d1def00
>     r13 = 0x0000000003576465   r14 = 0x000001709c90bbdc
>     r15 = 0x0000000003399ef0   rip = 0x00000000033b4f03
>     Found by: call frame info
>  3  unifiedbetests!testing::Test::Run() + 0xba
>     rbx = 0x000000000d1def00   rbp = 0x0000000003399ef0
>     rsp = 0x00007ffcc5aff340   r12 = 0x0000000006aa2000
>     r13 = 0x000000000d1def00   r14 = 0x000001709c90bbdc
>     r15 = 0x0000000003399ef0   rip = 0x00000000033acb5a
>     Found by: call frame info
>  4  unifiedbetests!testing::TestInfo::Run() + 0x118
>     rbx = 0x0000000006ad48f0   rbp = 0x0000000006aa2000
>     rsp = 0x00007ffcc5aff360   r12 = 0x0000000006a90de0
>     r13 = 0x000000000d1def00   r14 = 0x000001709c90bbdc
>     r15 = 0x0000000003399ef0   rip = 0x00000000033acca8
>     Found by: call frame info
>  5  unifiedbetests!testing::TestCase::Run() + 0xb5
>     rbx = 0x000000000000000b   rbp = 0x0000000006ac5500
>     rsp = 0x00007ffcc5aff3a0   r12 = 0x0000000006aa2000
>     r13 = 0x0000000006a90de0   r14 = 0x0000000003399ef0
>     r15 = 0x000001709c90b7de   rip = 0x00000000033acd85
>     Found by: call frame info
>  6  unifiedbetests!testing::internal::UnitTestImpl::RunAllTests() + 0x258
>     rbx = 0x0000000006aa2000   rbp = 0x0000000006a90de0
>     rsp = 0x00007ffcc5aff3f0   r12 = 0x000000000000006c
>     r13 = 0x0000000000000000   r14 = 0x000001709c90b7de
>     r15 = 0x000000000478d2d4   rip = 0x00000000033ae008
>     Found by: call frame info{noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to