VOOZH about

URL: https://www.ibm.com/support/pages/apar/IJ03607

⇱ IJ03607: RESULT STRING CONTAINS A REDUNDANT DOT WHEN CONVERTED FROM BIGDECIMAL WITH 0 ON ALL PLATFORMS


IJ03607: RESULT STRING CONTAINS A REDUNDANT DOT WHEN CONVERTED FROM BIGDECIMAL WITH 0 ON ALL PLATFORMS

APAR status

  • Closed as program error.

Error description

  • Error Message: String foo(NumberFormat format, BigDecimal
    bigDecimalValue){
     String str = format.format(bigDecimalValue.doubleValue());
     return str;
     }
    The above method expects the result String to be "0" when
    bigDecimalValue is 0 but gets "0."
    .
    Stack Trace: N/A
    .
    This error happens more often at hot and scorching compilation
    level
    

Local fix

  • -Xjit:disableStringPeepholes
    

Problem summary

  • The issue results from a JIT compiler optimization which makes
    it faster to change a BigDecimal number to a String according to
    a given format. The optimization missed the case of value zero
    when deciding if a dot is needed in the result String.
    

Problem conclusion

  • The optimization has been fixed to take 0 as a special case to
    avoid adding the redundant dot.
    .
    This APAR will be fixed in the following Java Releases:
     6 R1 SR8 FP60 (6.1.8.60)
     7 SR10 FP20 (7.0.10.20)
     7 R1 SR4 FP20 (7.1.4.20)
     8 SR5 FP10 (8.0.5.10)
    .
    Contact your IBM Product's Service Team for these Service
    Refreshes and Fix Packs.
    For those running stand-alone, information about the available
    Service Refreshes and Fix Packs can be found at:
     https://www.ibm.com/developerworks/java/jdk/
    

Temporary fix

Comments

APAR Information

  • APAR number

    IJ03607

  • Reported component name

    JIT

  • Reported component ID

    620700124

  • Reported release

    260

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-01-24

  • Closed date

    2018-01-24

  • Last modified date

    2018-01-25

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

  • Fixed component name

    JIT

  • Fixed component ID

    620700124

Applicable component levels

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSC9HBA","label":"Just In Time (JIT) Compiler"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"260","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
25 January 2018