IBM Support

RS03619: FUNCTION LOST DURING CONVERSION TO B2XA

 

APAR status

  • Closed as program error.

Error description

  • If B2X using XOM method that has a parameter of type T...
    (Generic method), then the B2X method is not translated to
    B2XA.
    

Local fix

  • This is for example seen in CollectionUtils.containsAny.
    Instead of this function, you can instead use:
    
    !CollectionUtils
    .intersection(Arrays.asList(numbers),Arrays.asList(codes)).isEmp
    ty()
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * Users migrating to decision engine.                          *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * If B2X using XOM method that has a parameter of type T...    *
    * (Generic method), then the B2X method is not translated to   *
    * B2XA.                                                        *
    * java.lang.ArrayIndexOutOfBoundsException: Array index out of *
    * range: 0                                                     *
    *     at                                                       *
    * com.ibm.rules.engine.lang.semantics.impl.SemGenericMethodImp *
    * l.inferTypeFromSameGenericDefinition(SemGenericMethodImpl.ja *
    * va:479)                                                      *
    *     at                                                       *
    * com.ibm.rules.engine.lang.semantics.impl.SemGenericMethodImp *
    * l.inferType2(SemGenericMethodImpl.java:382)                  *
    *     at                                                       *
    * com.ibm.rules.engine.lang.semantics.impl.SemGenericMethodImp *
    * l.inferType(SemGenericMethodImpl.java:340)                   *
    *     at                                                       *
    * com.ibm.rules.engine.lang.semantics.impl.SemGenericMethodImp *
    * l.inferTypes(SemGenericMethodImpl.java:265)                  *
    *     at                                                       *
    * com.ibm.rules.engine.lang.semantics.impl.SemGenericMethodImp *
    * l.match(SemGenericMethodImpl.java:82)                        *
    *     at                                                       *
    * com.ibm.rules.engine.lang.semantics.util.SemModelUtil.getMat *
    * chingMethods(SemModelUtil.java:153)                          *
    *     at                                                       *
    * com.ibm.rules.engine.lang.semantics.SemClassExtra.getMatchin *
    * gMethods(SemClassExtra.java:508)                             *
    *     at                                                       *
    * com.ibm.rules.engine.lang.semantics.SemClassExtra.getMatchin *
    * gMethod(SemClassExtra.java:458)                              *
    *     at                                                       *
    * com.ibm.rules.engine.lang.semantics.SemClassExtra.getMatchin *
    * gMethod(SemClassExtra.java:452)                              *
    *     at                                                       *
    * com.ibm.rules.engine.lang.semantics.SemClassExtra.getMatchin *
    * gMethod(SemClassExtra.java:447)                              *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    

Problem conclusion

  • The code is fixed.
    

Temporary fix

  • This is for example seen in CollectionUtils.containsAny.
    Instead of this function, you can instead use:
    
    !CollectionUtils
    .intersection(Arrays.asList(numbers),Arrays.asList(codes)).isEmp
    ty()
    

Comments

APAR Information

  • APAR number

    RS03619

  • Reported component name

    WDS FOR RULES

  • Reported component ID

    5725B6903

  • Reported release

    8A0

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2020-05-13

  • Closed date

    2021-04-14

  • Last modified date

    2021-04-14

  • 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

    WDS FOR RULES

  • Fixed component ID

    5725B6903

Applicable component levels

[{"Business Unit":{"code":"BU029","label":"Software"},"Product":{"code":"SS9TUK","label":"IBM Decision Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8A0"}]

Document Information

Modified date:
21 September 2023