IBM Support

IZ30298: UNIVERSAL COLLECTOR WRITES CSR RECORDS IN SCIENTIFIC NOTATION

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as fixed if next.

Error description

  • When running the Integrator, attempting to bring in external
    data using the Universal Collector capability, the output gets
    written in scientific notation in the output CSR file if the
    input data contains a significant number of decimal positions.
    
    For example, an Input field of this:
    <InputField dataType="STRING" name="AAID0204" position="15"/>
    
    and an input value of this:
    cpu_time:10.191326
    
    get incorrectly generated into the output CSR file as this
    value: 1.01913267
    
    This is because of a minor incompatibility with Java 1.5 when
    creating documents with small numbers. The problem is that
    BigDecimal.toString() now returns exponents (e.g. 1.1E-8) in
    certain circumstances, particularly with small numbers. The 'E'
    character is not valid in xs:decimal, so you end up with an
    invalid xml document.
    
    BigDecimal.toPlainString()was added to BigDecimal in JDK 1.5 and
    is not available in 1.4., but this is what should be used.
    
    TUAM 7.1 and 7.1.1 use JDK 1.5.
    
    This issue was fixed in the 7.1.1 release of TUAM.
    

Local fix

  • Upgrading to 7.1.1 is the preferred method to fix this issue.
    
    It may also be possible to overcome this issue by using a
    dataType of string instead of DOUBLE:
    dataType="STRING"
    
    but this may not work.
    
    The other alternative would be to be sure the input units have
    fewer decimal position.  Less decimal positions will not cause
    this issue.
    

Problem summary

  • When running the Integrator, attempting to bring in external
    data using the Universal Collector capability, the output gets
    written in scientific notation in the output CSR file if the
    input data contains a significant number of decimal positions.
    
    For example, an Input field of this:
    <InputField dataType="DOUBLE" name="AAID0204" position="15"/>
    
    and an input value of this:
    cpu_time:10.191326
    
    get incorrectly generated into the output CSR file as this
    value: 1.01913267
    
    This is because of a minor incompatibility with Java 1.5 when
    creating documents with small numbers. The problem is that
    BigDecimal.toString() now returns exponents (e.g. 1.1E-8) in
    certain circumstances, particularly with small numbers. The 'E'
    character is not valid in xs:decimal, so you end up with an
    invalid xml document.
    
    BigDecimal.toPlainString()was added to BigDecimal in JDK 1.5 and
    is not available in 1.4., but this is what should be used.
    
    TUAM 7.1 and 7.1.1 use JDK 1.5.
    

Problem conclusion

Temporary fix

  • No temporary fix. Upgrading to 7.1.1 is the preferred method to
    fix this issue.
    

Comments

APAR Information

  • APAR number

    IZ30298

  • Reported component name

    TIV USAGE & ACT

  • Reported component ID

    5724O3300

  • Reported release

    710

  • Status

    CLOSED FIN

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2008-08-22

  • Closed date

    2008-08-22

  • Last modified date

    2008-08-25

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

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

Fix information

Applicable component levels

  • R710 PSY

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSNHG7","label":"Tivoli Usage and Accounting Manager"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"710","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
25 August 2008