Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-5381

[C++] Crash at arrow::internal::CountSetBits

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • C++

    Description

      I've got a lot of crash dump from a customer's windows machine. The stacktrace shows that it crashed at arrow::internal::CountSetBits.

       

      STACK_TEXT:  
      000000c9`5354a4c0 00007ff7`2f2830fd : 000000c9`544841c0 00000000`00000000 00000000`00001e00 cccccccc`cccccccc : CortexService!arrow::internal::CountSetBits+0x16d
      000000c9`5354a550 00007ff7`2f2834b7 : 000000c9`5337c930 cccccccc`cccccccc cccccccc`cccccccc cccccccc`cccccccc : CortexService!arrow::ArrayData::GetNullCount+0x8d
      000000c9`5354a580 00007ff7`2f13df55 : 000000c9`54476080 000000c9`5354a5d8 cccccccc`cccccccc cccccccc`cccccccc : CortexService!arrow::Array::null_count+0x37
      000000c9`5354a5b0 00007ff7`2f13fb68 : 000000c9`5354ab40 000000c9`5354a6f8 000000c9`54476080 cccccccc`cccccccc : CortexService!parquet::arrow::`anonymous namespace'::LevelBuilder::Visit<arrow::NumericArray<arrow::FloatType> >+0xa5
      000000c9`5354a640 00007ff7`2f12fa34 : 000000c9`5354a6f8 000000c9`54476080 000000c9`5354ab40 cccccccc`cccccccc : CortexService!arrow::VisitArrayInline<parquet::arrow::`anonymous namespace'::LevelBuilder>+0x298
      000000c9`5354a680 00007ff7`2f14bf03 : 000000c9`5354ab40 000000c9`5354a6f8 000000c9`54476080 cccccccc`cccccccc : CortexService!parquet::arrow::`anonymous namespace'::LevelBuilder::VisitInline+0x44
      000000c9`5354a6c0 00007ff7`2f12fe2a : 000000c9`5354ab40 000000c9`5354ae18 000000c9`54476080 000000c9`5354b208 : CortexService!parquet::arrow::`anonymous namespace'::LevelBuilder::GenerateLevels+0x93
      000000c9`5354aa00 00007ff7`2f14de56 : 000000c9`5354b1f8 000000c9`5354afc8 000000c9`54476080 00000000`00001e00 : CortexService!parquet::arrow::`anonymous namespace'::ArrowColumnWriter::Write+0x25a
      000000c9`5354af20 00007ff7`2f14e66b : 000000c9`5354b1f8 000000c9`5354b238 000000c9`54445c20 00000000`00000000 : CortexService!parquet::arrow::`anonymous namespace'::ArrowColumnWriter::Write+0x2a6
      000000c9`5354b040 00007ff7`2f12f137 : 000000c9`544041f0 000000c9`5354b4d8 000000c9`5354b4a8 00000000`00000000 : CortexService!parquet::arrow::FileWriter::Impl::WriteColumnChunk+0x70b
      000000c9`5354b400 00007ff7`2f14b4d5 : 000000c9`54431180 000000c9`5354b4d8 000000c9`5354b4a8 00000000`00000000 : CortexService!parquet::arrow::FileWriter::WriteColumnChunk+0x67
      000000c9`5354b450 00007ff7`2f12eef1 : 000000c9`5354b5d8 000000c9`5354b648 00000000`00000000 00000000`00001e00 : CortexService!<lambda_f279b6cdf777bbf919efc3f7f42faf89>::operator()+0x195
      000000c9`5354b530 00007ff7`2eb8e31e : 000000c9`54431180 000000c9`5354b760 000000c9`54442fb0 00000000`00001e00 : CortexService!parquet::arrow::FileWriter::WriteTable+0x521
      000000c9`5354b730 00007ff7`2eb58ac5 : 000000c9`5307bd88 000000c9`54442fb0 ffffffff`ffffffff ffffffff`ffffffff : CortexService!Cortex::Storage::ParquetStreamWriter::writeRowGroup+0xfe
      000000c9`5354b860 00007ff7`2eafdce6 : 000000c9`5307bd80 000000c9`5354ba08 000000c9`5354b9e0 000000c9`5354b9d8 : CortexService!Cortex::Storage::ParquetFileWriter::writeRowGroup+0x545
      000000c9`5354b9a0 00007ff7`2eaf8bae : 000000c9`53275600 000000c9`53077220 ffffffff`fffffffe 00000000`00000000 : CortexService!Cortex::Storage::DataStreamWriteWorker::onNewData+0x1a6
      
      FAILED_INSTRUCTION_ADDRESS: 
      CortexService!arrow::internal::CountSetBits+16d [c:\jenkins\workspace\cortexv2-dev-win64-service\src\thirdparty\arrow\cpp\src\arrow\util\bit-util.cc @ 99]
      00007ff7`2f3a4e4d f3480fb800      popcnt  rax,qword ptr [rax]
      
      FOLLOWUP_IP: 
      CortexService!arrow::internal::CountSetBits+16d [c:\jenkins\workspace\cortexv2-dev-win64-service\src\thirdparty\arrow\cpp\src\arrow\util\bit-util.cc @ 99]
      00007ff7`2f3a4e4d f3480fb800      popcnt  rax,qword ptr [rax]
      
      FAULTING_SOURCE_LINE:  c:\jenkins\workspace\cortexv2-dev-win64-service\src\thirdparty\arrow\cpp\src\arrow\util\bit-util.cc
      
      FAULTING_SOURCE_FILE:  c:\jenkins\workspace\cortexv2-dev-win64-service\src\thirdparty\arrow\cpp\src\arrow\util\bit-util.cc
      
      FAULTING_SOURCE_LINE_NUMBER:  99
      
      SYMBOL_STACK_INDEX:  0
      
      SYMBOL_NAME:  cortexservice!arrow::internal::CountSetBits+16d
      
      ERROR_CODE: (NTSTATUS) 0xc000001d - {EXCEPTION}  Illegal Instruction  An attempt was made to execute an illegal instruction.
      
      EXCEPTION_CODE: (NTSTATUS) 0xc000001d - {EXCEPTION}  Illegal Instruction  An attempt was made to execute an illegal instruction.
      
      APP:  cortexservice.exe
      
      ANALYSIS_VERSION: 6.3.9600.17336 (debuggers(dbg).150226-1500) amd64fre
      
      FAULTING_THREAD:  000000000000169c
      
      BUGCHECK_STR:  APPLICATION_FAULT_INVALID_POINTER_READ_BEFORE_WRITE
      
      PRIMARY_PROBLEM_CLASS:  INVALID_POINTER_READ_BEFORE_WRITE
      
      DEFAULT_BUCKET_ID:  INVALID_POINTER_READ_BEFORE_WRITE
      
      LAST_CONTROL_TRANSFER:  from 00007ff72f2830fd to 00007ff72f3a4e4d

       

       

      Attachments

        1. bit-util.asm
          298 kB
          Tham
        2. iMac-late2009.png
          63 kB
          Tham
        3. popcnt_support.png
          107 kB
          Tham

        Issue Links

          Activity

            People

              Unassigned Unassigned
              thamha Tham
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 20m
                  20m