Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
Impala 4.1.0
-
ghx-label-2
Description
The unit test failed due to global buffer overflow in impala::FindUtf8PosBackward(unsigned char const*, int, int).
Error Message
Address Sanitizer message detected in /data/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/logs/be_tests/LastTest.log
Standard Error
==28850==ERROR: AddressSanitizer: global-buffer-overflow on address 0x0000070f9bbf at pc 0x000005177955 bp 0x7ffdad011e50 sp 0x7ffdad011e48
READ of size 1 at 0x0000070f9bbf thread T0
#0 0x5177954 in impala::FindUtf8PosBackward(unsigned char const*, int, int) /data/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/be/src/util/string-util.cc:118:38
#1 0x2be6178 in impala::FindUtf8PosBackwardTest_Basic_Test::TestBody() /data/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/be/src/util/string-util-test.cc:230:3
#2 0x68f9bf9 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::)(), char const) (/data0/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/be/build/debug/service/unifiedbetests+0x68f9bf9)
#3 0x68f3029 in testing::Test::Run() (/data0/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/be/build/debug/service/unifiedbetests+0x68f3029)
#4 0x68f310b in testing::TestInfo::Run() (/data0/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/be/build/debug/service/unifiedbetests+0x68f310b)
#5 0x68f3244 in testing::TestCase::Run() (/data0/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/be/build/debug/service/unifiedbetests+0x68f3244)
#6 0x68f38ef in testing::internal::UnitTestImpl::RunAllTests() (/data0/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/be/build/debug/service/unifiedbetests+0x68f38ef)
#7 0x68f3a26 in testing::UnitTest::Run() (/data0/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/be/build/debug/service/unifiedbetests+0x68f3a26)
#8 0x203fba9 in main /data/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/be/src/service/unified-betest-main.cc:48:10
#9 0x7f57bd18fc04 in __libc_start_main (/lib64/libc.so.6+0x21c04)
#10 0x1f487e6 in _start (/data0/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/be/build/debug/service/unifiedbetests+0x1f487e6)
0x0000070f9bbf is located 1 bytes to the left of global variable '<string literal>' defined in '/data/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/be/src/util/string-util-test.cc:230:3' (0x70f9bc0) of size 12
0x0000070f9bbf is located 47 bytes to the right of global variable '<string literal>' defined in '/data/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/be/src/util/string-util-test.cc:230:3' (0x70f9b60) of size 48
SUMMARY: AddressSanitizer: global-buffer-overflow /data/jenkins/workspace/impala-cdpd-master-staging-core-asan/repos/Impala/be/src/util/string-util.cc:118:38 in impala::FindUtf8PosBackward(unsigned char const*, int, int)
Shadow bytes around the buggy address:
0x000080e17320: 00 00 02 f9 f9 f9 f9 f9 00 00 00 00 00 00 02 f9
0x000080e17330: f9 f9 f9 f9 00 00 00 00 00 00 02 f9 f9 f9 f9 f9
0x000080e17340: 00 00 00 00 00 00 02 f9 f9 f9 f9 f9 00 00 00 00
0x000080e17350: 00 00 02 f9 f9 f9 f9 f9 00 00 00 00 00 00 02 f9
0x000080e17360: f9 f9 f9 f9 02 f9 f9 f9 f9 f9 f9 f9 00 00 00 00
=>0x000080e17370: 00 00 f9 f9 f9 f9 f9[f9]00 04 f9 f9 f9 f9 f9 f9
0x000080e17380: 00 00 00 00 00 00 f9 f9 f9 f9 f9 f9 00 00 00 00
0x000080e17390: 00 00 f9 f9 f9 f9 f9 f9 00 00 00 00 00 04 f9 f9
0x000080e173a0: f9 f9 f9 f9 00 00 00 00 00 04 f9 f9 f9 f9 f9 f9
0x000080e173b0: 00 00 00 00 00 04 f9 f9 f9 f9 f9 f9 00 00 00 00
0x000080e173c0: 00 04 f9 f9 f9 f9 f9 f9 00 00 00 00 00 04 f9 f9
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
==28850==ABORTING