IBM Support

PI82096: Setting a time to live progammatically to more than 6442450 seconds causes an IllegalArgumentException exception.

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • Setting a TTL programmatically of more than 6442450 seconds
    causes a IllegalArgumentException.  This error occurs when
    using eXtremeMemory (XM) before 8.6.1.1 and occurs for all
    configuration when using 8.6.1.1 and 8.6.1.2.  Below shows an
    FFDC stack trace on the server side for this problem.
    
    Exception:java.lang.IllegalArgumentException
    SourceId:com.ibm.ws.objectgrid.server.impl.ServerCoreEventProces
    sor.processLogSequence ProbeId:1016
    java.lang.IllegalArgumentException: Time to live value must be
    greater than or equal to -1
    at
    com.ibm.ws.objectgrid.ObjectMapImpl.setTimeToLive(ObjectMapImpl.
    java:1374)
    

Local fix

  • Set the large TTL in the objectGrid.xml.  The issue only occurs
    when setting the TTL programmatically.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  Users of eXtreme Scale who use the time to  *
    *                  live function with a large time to live     *
    *                  value when using ObjectMap.setTimeToLive    *
    *                  ().                                         *
    ****************************************************************
    * PROBLEM DESCRIPTION: Transactions fail with an               *
    *                      IllegalArgumentException exception or   *
    *                      entries evict immediately when they     *
    *                      should evict weeks later.               *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    The calculation of the expiration time for entries was
    incorrect.  With the introduction of millisecond
    precision in 8.6.1.1 for JCache function, the number of
    maximum seconds was reduce to Integer.MAX_VALUE / 1000 which
    is what prevented the user from having a large time to live
    setting.  The function was updated to correctly calculate the
    expiration time with large time to live values and the logic
    was updated to round to seconds if a milliseconds value was
    larger than Integer.MAX_VALUE to support larger time to live
    values.
    

Problem conclusion

  • An interim fix is available for this APAR upon request for
    eXtreme Scale versions 8.6.0.8 and 8.6.1.2.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI82096

  • Reported component name

    WS EXTREME SCAL

  • Reported component ID

    5724X6702

  • Reported release

    861

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2017-05-24

  • Closed date

    2017-09-03

  • Last modified date

    2017-09-03

  • 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

    WS EXTREME SCAL

  • Fixed component ID

    5724X6702

Applicable component levels

  • R860 PSY

       UP

  • R861 PSY

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSTVLU","label":"WebSphere eXtreme Scale"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"861","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
03 September 2017