IBM Support

JR44904: CMVC 225025 - PREVENT THE PROMOTION REGISTRY FROM GETTING CORRUPTED WITH A BAD START OR END DATE

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • After a server restart, if multiple threads attempt to
    initialize the Promotion Registry at the same time, it can cause
    promotions to be setup with incorrect start or end dates. This
    could then cause the promotion to not be applied to orders
    during the correct dates. Under certain scenarios the dates will
    be set as null, resulting in no further orders being processed
    on the server.
    
    This can result in an error similar to the following appearing
    in the logs:
    [10/30/12 11:54:25:306 PDT] 000000bd runtime       2
    com.ibm.commerce.marketing.promotion.runtime.DefaultPromotionEng
    ine invoke(PromotionArgument) java.lang.NullPointerException
    [10/30/12 11:54:25:306 PDT] 000000bd runtime       2
    com.ibm.commerce.marketing.promotion.runtime.DefaultPromotionEng
    ine invoke(template, orderId, discardPreviousResult,
    saveCurrentResult,NVP)
    com.ibm.commerce.marketing.promotion.runtime.PromotionRuntimeExc
    eption: Failed to create context due to exception:
    java.lang.NullPointerException
     at
    com.ibm.commerce.marketing.promotion.runtime.DefaultPromotionEng
    ine.invoke(DefaultPromotionEngine.java)
     at
    com.ibm.commerce.order.commands.PromotionEngineOrderCalculateCmd
    Impl.invokePromotionEngine(PromotionEngineOrderCalculateCmdImpl.
    java)
     at
    com.ibm.commerce.order.commands.PromotionEngineOrderCalculateCmd
    Impl.getCatalogEntryQuantitiesToAdd(PromotionEngineOrderCalculat
    eCmdImpl.java)
     at
    com.ibm.commerce.order.commands.PromotionEngineOrderCalculateCmd
    Impl.performExecute(PromotionEngineOrderCalculateCmdImpl.java)
     at
    com.ibm.commerce.command.ECCommandTarget.executeCommand(ECComman
    dTarget.java)
     at
    com.ibm.ws.cache.command.CommandCache.executeCommand(CommandCach
    e.java:332)
     at
    com.ibm.websphere.command.CacheableCommandImpl.execute(Cacheable
    CommandImpl.java:166)
     at
    com.ibm.commerce.command.AbstractECTargetableCommand.execute(Abs
    tractECTargetableCommand.java)
    

Local fix

  • Restart the server so that the Promotion registry will be
    re-initialized
    

Problem summary

  • USERS AFFECTED:
    WebSphere Commerce v7.0 users using promotions
    
    PROBLEM ABSTRACT:
    A server restart can cause the Promotion Registry to be corrupt
    with incorrect start or end dates for a promotion.  This may
    cause promotions to not be applied or may prevent orders from
    being processed.
    
    BUSINESS IMPACT:
    Promotions may not be applied during the specified Promotion
    start and end dates
    
    RECOMMENDATION:
    

Problem conclusion

  • The Promotion registry initialization code was changed to be
    thread-safe so that multiple threads cannot attempt
    initialization at the same time, preventing dates from being
    corrupted.
    -------------------------------------------------------------
    The latest available maintenance information can be obtained
    from the Recommended Fixes for WebSphere Commerce technote:
    http://www.ibm.com/support/docview.wss?rs=3046&uid=swg21261296
    

Temporary fix

Comments

APAR Information

  • APAR number

    JR44904

  • Reported component name

    WC BUS EDITION

  • Reported component ID

    5724I3800

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-11-27

  • Closed date

    2013-02-21

  • Last modified date

    2013-02-21

  • 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

    WC BUS EDITION

  • Fixed component ID

    5724I3800

Applicable component levels

  • R700 PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSYSYL","label":"WebSphere Commerce Enterprise"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
21 February 2013