IV28205: POOR TIMEZONE.GETDEFAULT() PERFORMANCE DUE TO SYNCHRONIZATION . AFTER APPLYING APAR IV15311

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • Error Message: N/A
    .
    Stack Trace:
    A javacore taken during the performance issue shows many threads
    with following stack trace.
    
    3XMTHREADINFO3           Java callstack:
    4XESTACKTRACE                at
    java/util/TimeZone.getDefaultInAppContext(TimeZone.java:793(Comp
    iled Code))
    5XESTACKTRACE                   (entered lock:
    java/util/TimeZone@0x000000060006D3C0, entry count: 1)
    4XESTACKTRACE                at
    java/util/TimeZone.getDefaultRef(TimeZone.java:640(Compiled
    Code))
    4XESTACKTRACE                at
    java/util/Calendar.getInstance(Calendar.java:979(Compiled Code))
    
    The lock section of the javacore shows many threads are blocking
    for the lock on java/util/TimeZone
    
    2LKMONINUSE      sys_mon_t:0x0000010022A1C898 infl_mon_t:
    0x0000010022A1C8E0:
    3LKMONOBJECT       java/util/TimeZone@0x000000060006D3C0: owner
    "SIBJMSRAThreadPool : 13" (0x0000000044BBAE00), entry count 1
    3LKWAITERQ            Waiting to enter:
    3LKWAITER                "SIBJMSRAThreadPool : 0"
    (0x00000000448DE700)
    3LKWAITER                "SIBJMSRAThreadPool : 2"
    (0x00000000428BD800)
    3LKWAITER                "SIBJMSRAThreadPool : 3"
    (0x000000004257A000)
    3LKWAITER                "SIBJMSRAThreadPool : 4"
    (0x0000000044852F00)
    3LKWAITER                "SIBJMSRAThreadPool : 6"
    (0x000000004493CF00)
    3LKWAITER                "SIBJMSRAThreadPool : 7"
    (0x0000000044945000)
    3LKWAITER                "SIBJMSRAThreadPool : 8"
    (0x000000004497D000)
    3LKWAITER                "SIBJMSRAThreadPool : 9"
    (0x0000000044BA0A00)
    3LKWAITER                "SIBJMSRAThreadPool : 10"
    (0x0000000044BA7300)
    3LKWAITER                "SIBJMSRAThreadPool : 11"
    (0x0000000044BADC00)
    3LKWAITER                "SIBJMSRAThreadPool : 12"
    (0x0000000044BB4500)
    3LKWAITER                "SIBJMSRAThreadPool : 14"
    (0x0000000044BC2F00)
    3LKWAITER                "SIBJMSRAThreadPool : 15"
    (0x0000000044BC9800)
    3LKWAITER                "SIBJMSRAThreadPool : 16"
    (0x0000000044BD0100)
    3LKWAITER                "SIBJMSRAThreadPool : 18"
    (0x0000000044BDD200)
    3LKWAITER                "SIBJMSRAThreadPool : 20"
    (0x0000000044BEA400)
    3LKWAITER                "SIBJMSRAThreadPool : 21"
    (0x0000000044BF0D00)
    3LKWAITER                "SIBJMSRAThreadPool : 22"
    (0x0000000044BF7600)
    
    .
    N/A
    

Local fix

  • Cache the default timezone in the application.
    

Problem summary

  • The Poor performance was due to the excess synchronization in
    TimeZone class as the entire method is synchronized.
    

Problem conclusion

  • This defect will be fixed in:
    6.0.0 SR12
    6.0.1 SR4
    7.0.0 SR3
    .
    The JDK is updated to limit the synchronization only when it is
    required and thereby minimize the contention.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV28205

  • 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-09-20

  • Closed date

    2012-10-05

  • Last modified date

    2013-12-16

  • 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

  • R700 PSY

       UP



Rate this page:

(0 users)Average rating

Add comments

Document information


More support for:

Runtimes for Java Technology
Java Class Libraries

Software version:

6.0

Reference #:

IV28205

Modified date:

2013-12-16

Translate my page

Machine Translation

Content navigation