Uploaded image for project: 'Software Support'
  1. Software Support
  2. SUP-2408 some eccodes tests fail on i686 platform
  3. SUP-3566

g1second_order_general_extended_packing: preserve significant bits for signedness on 32bit

XMLWordPrintable

    • Icon: Sub-task Sub-task
    • Resolution: Fixed
    • Icon: Medium Medium
    • ECC
    • None
    • Linux 32 bit

    • ECMWF

      In g1second_order_general_extended_packing, firstOrderValues or so are restored
      with grib_get_long_array(), and the restored values are stored in "long" type array.
      So on 32 bit system, when "bits_per_value" is set to 32 and 32 bit unsigned values
      are saved with grib_set_long_array(), restored values by grib_get_long_array()
      are recognized as negative value, which results in wrong result
      (in grib_second_order.sh).

      For now, on linux 32 bit system, save 1 significant bit for signedness and
      restrict bits_per_value to 31, and relax allowed error due to this change.

      The proposal patch fixes the following test failure on Linux 32 bit:

      # 167 - eccodes_t_grib_second_order
      

      Note that that above test is disabled on Windows currently.

            masn Shahram Najm
            mtasaka@fedoraproject.org Mamoru TASAKA
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: