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

[C++] [Gandiva] JIT code executed over uninitialized values

    XMLWordPrintableJSON

    Details

      Description

      When running Gandiva tests with Valgrind, I get the following errors:

      [==========] Running 4 tests from 1 test case.
      [----------] Global test environment set-up.
      [----------] 4 tests from TestDecimal
      [ RUN      ] TestDecimal.TestSimple
      ==12052== Conditional jump or move depends on uninitialised value(s)
      ==12052==    at 0x41110D5: ???
      ==12052== 
      {
         <insert_a_suppression_name_here>
         Memcheck:Cond
         obj:*
      }
      ==12052== Conditional jump or move depends on uninitialised value(s)
      ==12052==    at 0x41110E8: ???
      ==12052== 
      {
         <insert_a_suppression_name_here>
         Memcheck:Cond
         obj:*
      }
      ==12052== Conditional jump or move depends on uninitialised value(s)
      ==12052==    at 0x411114B: ???
      ==12052== 
      {
         <insert_a_suppression_name_here>
         Memcheck:Cond
         obj:*
      }
      ==12052== Conditional jump or move depends on uninitialised value(s)
      ==12052==    at 0x411117B: ???
      ==12052== 
      {
         <insert_a_suppression_name_here>
         Memcheck:Cond
         obj:*
      }
      [       OK ] TestDecimal.TestSimple (16625 ms)
      [ RUN      ] TestDecimal.TestLiteral
      [       OK ] TestDecimal.TestLiteral (3480 ms)
      [ RUN      ] TestDecimal.TestIfElse
      [       OK ] TestDecimal.TestIfElse (2408 ms)
      [ RUN      ] TestDecimal.TestCompare
      [       OK ] TestDecimal.TestCompare (5303 ms)
      

      I think this is legitimate. Gandiva runs computations over all values, even when the bitmap indicates a null value. But decimal computations are complex and involve conditional jumps, hence the error ("Conditional jump or move depends on uninitialised value(s)").

      Pindikura Ravindra

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                pravindra Pindikura Ravindra
                Reporter:
                pitrou Antoine Pitrou
              • Votes:
                0 Vote for this issue
                Watchers:
                2 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