IBM Support

JR45872: Parallel transformers with many stage variables and complex derivations may compile with incorrect NULL checking code.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Problem:
    Stage variable in a Transformer stage are not being set to null,
    in very specific scenarios.
    
    Analysis:
    This problem is dependent on the size of the transformer stage
    i..e.., the size of the derivations of the stage variables or
    the output columns.
    It depends on the number of local variables that are created in
    the C++ file to handle the transformer stage.
    This problem was first seen on AIX. But it can
    create issues on another platforms.
    This issue can happen if the number of local variables
    created are more than 32.
    

Local fix

Problem summary

  • tage variables in a Transformer stage are  not being set to
    null, in very specific scenarios.
    
    Problem description:
    A stage variable has the below derivation
    
    If Stream_070.ENSAI_FLG = "Y" Then
     2
    Else If Stream_070.ENSAI_FLG = "N" Then
     3
    Else
     SetNull()
    
    The stage variable is not being set to NULL, even when the input
    field ENSAI_FLG is not 'Y' or 'N'.
    This is happening only when the the input and output schemas of
    the transformer stage are considerably big and when the
    derivations on the stage variables or the output fields are
    complex.
    Analysis:
    This problem is dependent on the size of the transformer stage
    i..e.., the size of the derivations of the stage variables or
    the output columns.
    It depends on the number of local variables that are created in
    the C++ file to handle the transformer stage.
    This problem is being particularly seen in AIX. But it can
    create issues on another platforms as well.
    This issue is being seen if the number of local variables
    created is  more than 32.
    

Problem conclusion

  • nalysis:
    This problem is dependent on the size of the transformer stage
    i..e.., the size of the derivations of the stage variables or
    the output columns.
    It depends on the number of local variables that are created in
    the C++ file to handle the transformer stage.
    This problem is being particularly seen in AIX. But it can
    create issues on another platforms as well.
    This issue is being seen if the number of local variables
    created are more than 32.
    
    This issue is related to the functions handling nullability of
    local variables in functions
    inline bool isLocalNull(APT_UInt64 offset)
    
    
    inline void setLocalNull(APT_UInt64 offset)
    inline void clearLocalNull(APT_UInt64 offset)
    
    This issue was introduced in IIS 8.5.
    

Temporary fix

Comments

APAR Information

  • APAR number

    JR45872

  • Reported component name

    WIS DATASTAGE

  • Reported component ID

    5724Q36DS

  • Reported release

    850

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2013-02-28

  • Closed date

    2013-05-01

  • Last modified date

    2013-05-01

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

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

Fix information

  • Fixed component name

    WIS DATASTAGE

  • Fixed component ID

    5724Q36DS

Applicable component levels

  • R850 PSY

       UP

  • R870 PSY

       UP

  • R910 PSY

       UP

[{"Line of Business":{"code":"LOB10","label":"Data and AI"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSVSEF","label":"InfoSphere DataStage"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.5"}]

Document Information

Modified date:
06 October 2021