IBM Support

PI98073: <LANG_CG>::COMPONENT::PACKAGEEVENTIDRANGE NOT WORKING WHEN CALCULATEPACKAGEEVENTBASEID=ONCODEGENERATION

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

  • If two or more packages have the same EventsBaseID value, or
    values with overlapping ranges of each other, will that result
    in code generation errors?
    
    Making changes to Component's PackageEventIdRange and package's
    EventBaseID (with CalculatePackageEventBaseId=OnCodeGeneration)
    fails to update the event ids.
    
    You should only set the CPP_CG_PackageEventIdRange property at
    the component level. So the range setting itself cannot overlap.
    
    When a package is created, events IDs will be assigned in blocks
    of <PackageEventIdRange>, starting at <EventBaseID>. The blocks
    might not necessarily be allocated contiguously.  For example...
    a component is set to PackageEventIdRange=2000 and each package
    set to EventBaseID=1, the blocks could be 8000-10000,
    14000-16000, 2000-4000, etc...
    
    With the component set to
    CG::Component::CalculatePackageEventBaseId=OnCreatePackage, if
    you were to change the component's PackageEventIdRange value,
    the event IDs are not refreshed.
    With the component set
    CG::Component::CalculatePackageEventBaseId=OnCodeGeneration,
    changing the component's PackageEventIdRange value will force
    all the event ID in the below packages to refresh.
    This could add to performance overheads in large models during
    code generation so it is recommended to leave this at the
    default unless you are actively changing the EventsBaseId and
    PackageEventIdRange properties.
    
    It is recommended that a package's CPP_CG::Package::EventsBaseId
    does not exceed the value set at the component's
    CPP_CG::Package::PackageEventIdRange. This can force the
    starting event ID into the range of another package.
    
    PackageEventIdRange moved from
    <lang_CG>::Component::PackageEventIdRange
      to
    <lang_CG>::Package::PackageEventIdRange
      sometime before Rhapsdody 7.5.3 (I don't have good access to
    older History)
    but the move was cot complete and in case of
    CalculatePackageEventBaseId=OnCodeGeneration code generation
    look for the old property
    ( <lang_CG>::Component::PackageEventIdRange ) so you get the
    default "200" regardless of property value
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * Rhapsody                                                     *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * When the property CG::Component::CalculatePackageEventBaseId *
    * is set to "OnCodeGeneration"                                 *
    * The peoperty CPP_CG::Package::PackageEventIdRange is not     *
    * used instead default is 200 and the obsolete property        *
    *  CPP_CG::Component::PackageEventIdRange is used              *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    

Problem conclusion

  • problem solved.
     if no CPP_CG::Component::PackageEventIdRange property exist
    Rhapsody use the CPP_CG::Package::PackageEventIdRange property.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI98073

  • Reported component name

    TLOGIC RHAPSODY

  • Reported component ID

    5724V74RP

  • Reported release

    821

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-05-17

  • Closed date

    2019-04-29

  • Last modified date

    2019-04-29

  • 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

    TLOGIC RHAPSODY

  • Fixed component ID

    5724V74RP

Applicable component levels

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SS7P9W","label":"Rational Rhapsody"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"821","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
29 April 2019