Uploaded image for project: 'IMPALA'
  1. IMPALA
  2. IMPALA-8467

ParquetPlainEncoder::Decode leads to multiple test failures in ASAN builds

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • None
    • Impala 3.3.0
    • None
    • ghx-label-6

    Description

      This is an example of the logged failures:

      00:57:35.147 15/106 Test #15: parquet-plain-test ...............***Failed 0.48 sec
      00:57:35.147 [==========] Running 4 tests from 1 test case.
      00:57:35.147 [----------] Global test environment set-up.
      00:57:35.148 [----------] 4 tests from PlainEncoding
      00:57:35.148 [ RUN ] PlainEncoding.Basic
      00:57:35.148 =================================================================
      00:57:35.148 ==1922==ERROR: AddressSanitizer: dynamic-stack-buffer-overflow on address 0x7ffe328ee44c at pc 0x0000017c07bc bp 0x7ffe328ee2f0 sp 0x7ffe328edaa0
      00:57:35.148 READ of size 16 at 0x7ffe328ee44c thread T0
      00:57:35.148 #0 0x17c07bb in __asan_memcpy /mnt/source/llvm/llvm-5.0.1.src-p1/projects/compiler-rt/lib/asan/asan_interceptors.cc:466
      00:57:35.149 #1 0x1837a26 in void impala::ParquetPlainEncoder::DecodeNoBoundsCheck<impala::TimestampValue, (parquet::Type::type)3>(unsigned char const*, unsigned char const*, int, impala::TimestampValue*) /data/jenkins/workspace/impala-asf-master-core-asan/repos/Impala/be/src/exec/parquet/parquet-common.h:332:3
      00:57:35.149 #2 0x1837a26 in int impala::ParquetPlainEncoder::Decode<impala::TimestampValue, (parquet::Type::type)3>(unsigned char const*, unsigned char const*, int, impala::TimestampValue*) /data/jenkins/workspace/impala-asf-master-core-asan/repos/Impala/be/src/exec/parquet/parquet-common.h:223
      00:57:35.150 #3 0x1837216 in void impala::TestTypeWidening<impala::TimestampValue, impala::TimestampValue, (parquet::Type::type)3>(impala::TimestampValue const&, int) /data/jenkins/workspace/impala-asf-master-core-asan/repos/Impala/be/src/exec/parquet/parquet-plain-test.cc:115:22
      00:57:35.150 #4 0x18122f7 in impala::PlainEncoding_Basic_Test::TestBody() /data/jenkins/workspace/impala-asf-master-core-asan/repos/Impala/be/src/exec/parquet/parquet-plain-test.cc:155:3
      00:57:35.151 #5 0x4fa6142 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) (/data0/jenkins/workspace/impala-asf-master-core-asan/repos/Impala/be/build/debug/exec/parquet/parquet-plain-test+0x4fa6142)
      00:57:35.151 #6 0x4f9d909 in testing::Test::Run() (/data0/jenkins/workspace/impala-asf-master-core-asan/repos/Impala/be/build/debug/exec/parquet/parquet-plain-test+0x4f9d909)
      00:57:35.152 #7 0x4f9da57 in testing::TestInfo::Run() (/data0/jenkins/workspace/impala-asf-master-core-asan/repos/Impala/be/build/debug/exec/parquet/parquet-plain-test+0x4f9da57)
      00:57:35.152 #8 0x4f9db34 in testing::TestCase::Run() (/data0/jenkins/workspace/impala-asf-master-core-asan/repos/Impala/be/build/debug/exec/parquet/parquet-plain-test+0x4f9db34)
      00:57:35.153 #9 0x4f9edb7 in testing::internal::UnitTestImpl::RunAllTests() (/data0/jenkins/workspace/impala-asf-master-core-asan/repos/Impala/be/build/debug/exec/parquet/parquet-plain-test+0x4f9edb7)
      00:57:35.153 #10 0x4f9f092 in testing::UnitTest::Run() (/data0/jenkins/workspace/impala-asf-master-core-asan/repos/Impala/be/build/debug/exec/parquet/parquet-plain-test+0x4f9f092)
      00:57:35.153 #11 0x181655f in main /data/jenkins/workspace/impala-asf-master-core-asan/repos/Impala/be/src/exec/parquet/parquet-plain-test.cc:491:1
      00:57:35.154 #12 0x7ff7a10b2c04 in __libc_start_main (/lib64/libc.so.6+0x21c04)
      00:57:35.154 #13 0x17069d6 in _start (/data0/jenkins/workspace/impala-asf-master-core-asan/repos/Impala/be/build/debug/exec/parquet/parquet-plain-test+0x17069d6)
      00:57:35.154
      00:57:35.154 Address 0x7ffe328ee44c is located in stack of thread T0 at offset 332 in frame
      00:57:35.154 #0 0x18378df in int impala::ParquetPlainEncoder::Decode<impala::TimestampValue, (parquet::Type::type)3>(unsigned char const*, unsigned char const*, int, impala::TimestampValue*) /data/jenkins/workspace/impala-asf-master-core-asan/repos/Impala/be/src/exec/parquet/parquet-common.h:208
      00:57:35.155
      00:57:35.155 This frame has 4 object(s):
      00:57:35.155 [32, 40) 'ref.tmp.i' (line 327)
      00:57:35.155 [64, 68) 'ref.tmp2.i' (line 327)
      00:57:35.155 [80, 96) 'ref.tmp5.i' (line 327)
      00:57:35.155 [112, 120) 'ref.tmp6.i' (line 327) <== Memory access at offset 332 overflows this variable
      00:57:35.155 HINT: this may be a false positive if your program uses some custom stack unwind mechanism or swapcontext
      00:57:35.155 (longjmp and C++ exceptions *are* supported)
      00:57:35.156 SUMMARY: AddressSanitizer: dynamic-stack-buffer-overflow /mnt/source/llvm/llvm-5.0.1.src-p1/projects/compiler-rt/lib/asan/asan_interceptors.cc:466 in __asan_memcpy
      00:57:35.156 Shadow bytes around the buggy address:
      00:57:35.156 0x100046515c30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      00:57:35.156 0x100046515c40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      00:57:35.156 0x100046515c50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      00:57:35.156 0x100046515c60: f1 f1 f1 f1 f8 f2 f2 f2 f8 f2 f8 f8 f2 f2 f8 f3
      00:57:35.156 0x100046515c70: f3 f3 f3 f3 00 00 00 00 00 00 00 00 00 00 00 00
      00:57:35.157 =>0x100046515c80: 00 00 00 00 ca ca ca ca 00[04]cb cb cb cb cb cb
      00:57:35.157 0x100046515c90: f1 f1 f1 f1 04 f2 04 f2 f8 f8 f2 f2 f8 f2 f2 f2
      00:57:35.157 0x100046515ca0: 00 f2 f2 f2 00 00 f2 f2 04 f2 f8 f8 f2 f2 f8 f2
      00:57:35.157 0x100046515cb0: f2 f2 00 f2 f2 f2 f8 f8 f2 f2 f8 f2 f2 f2 00 f2
      00:57:35.157 0x100046515cc0: f2 f2 f8 f8 f2 f2 f8 f2 f8 f8 f2 f2 f8 f2 f2 f2
      00:57:35.157 0x100046515cd0: 00 f2 f2 f2 f8 f8 f2 f2 f8 f2 f2 f2 00 f3 f3 f3
      00:57:35.157 Shadow byte legend (one shadow byte represents 8 application bytes):
      00:57:35.157 Addressable: 00
      00:57:35.157 Partially addressable: 01 02 03 04 05 06 07
      00:57:35.158 Heap left redzone: fa
      00:57:35.158 Freed heap region: fd
      00:57:35.158 Stack left redzone: f1
      00:57:35.158 Stack mid redzone: f2
      00:57:35.158 Stack right redzone: f3
      00:57:35.158 Stack after return: f5
      00:57:35.158 Stack use after scope: f8
      00:57:35.158 Global redzone: f9
      00:57:35.158 Global init order: f6
      00:57:35.158 Poisoned by user: f7
      00:57:35.158 Container overflow: fc
      00:57:35.158 Array cookie: ac
      00:57:35.158 Intra object redzone: bb
      00:57:35.158 ASan internal: fe
      00:57:35.158 Left alloca redzone: ca
      00:57:35.158 Right alloca redzone: cb
      00:57:35.158 ==1922==ABORTING
      

      Attachments

        Issue Links

          Activity

            People

              daniel.becker Daniel Becker
              laszlog Laszlo Gaal
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: