IBM Support

IV25945: SERVICELOADER DOES NOT RESPECT THE LAZINESS

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

  • Error Message: Providers are not located and instantiated lazily
    in ServiceLoader.
    Each invocation of the iterator method does not lazily locates
    the providers. There is no cache to store the instance of the
    provider, therefore the providers
    are always reloaded on a ServiceIterator.next() operation.
    For example, the correct symptom should be:
    test.serviceloader.impl.LoadImpl1@1f6c1f6c
    test.serviceloader.impl.LoadImpl2@26322632
    serviceLoader iterator 2nd round
    test.serviceloader.impl.LoadImpl1@1f6c1f6c
    test.serviceloader.impl.LoadImpl2@26322632
    serviceLoader iterator 3rd round
    test.serviceloader.impl.LoadImpl1@1f6c1f6c
    test.serviceloader.impl.LoadImpl2@26322632
    But the wrong symptom is:
    serviceLoader iterator 1st round
    test.serviceloader.impl.LoadImpl1@7d247d24
    test.serviceloader.impl.LoadImpl2@3c003c0
    serviceLoader iterator 2nd round
    test.serviceloader.impl.LoadImpl1@22a422a4
    test.serviceloader.impl.LoadImpl2@233c233c
    serviceLoader iterator 3rd round
    test.serviceloader.impl.LoadImpl1@488a488a
    test.serviceloader.impl.LoadImpl2@49224922
    .
    Stack Trace: N/A
    .
    

Local fix

Problem summary

  • The problem is caused because there is no cache to store the
    instance of the providers.
    

Problem conclusion

  • This defect will be fixed in:
    6.0.0 SR12
    6.0.1 SR4
    .
    ServiceLoader has been updated to prevent the problem.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV25945

  • Reported component name

    JAVA CLASS LIBS

  • Reported component ID

    620700130

  • Reported release

    600

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-08-09

  • Closed date

    2012-08-16

  • Last modified date

    2012-08-31

  • 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

    JAVA CLASS LIBS

  • Fixed component ID

    620700130

Applicable component levels

  • R600 PSY

       UP

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCVQ3Y","label":"Java Class Libraries"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"6.0","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
31 August 2012