Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-3715

float and double calculation is inaccurate in Hive

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 0.10.0
    • None
    • SQL
    • None

    Description

      I found this during debug the e2e test failures. I found Hive miss calculate the float and double value. Take float calculation as an example:

      hive> select f from all100k limit 1;
      48308.98
      hive> select f/10 from all100k limit 1;
      4830.898046875 <--added 04875 in the end
      hive> select f*1.01 from all100k limit 1;
      48792.0702734375 <--should be 48792.0698

      It might be essentially the same problem as http://effbot.org/pyfaq/why-are-floating-point-calculations-so-inaccurate.htm. But since e2e test compare the results with mysql and seems mysql does it right, so it is worthy fixing it in Hive.

      Attachments

        1. HIVE-3715.patch.txt
          2 kB
          Johnny Zhang

        Issue Links

          Activity

            People

              dreambird Johnny Zhang
              dreambird Johnny Zhang
              Votes:
              1 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated: