IBM Support

PM62794: LOCAL HOMES NOT CACHED IN JNDI LOOKUP SO TAKING TIME MORE THAN EXPECTED.

Fixes are available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • JNDI lookups taking longer than expected. This can be found
    after upgrading to 7.0.0.21. This was result of the fix for
    APAR PM35068, which went into 7.0.0.19. The fix is valid, but
    it unfortunately has the side-effect of not caching local homes.
    Not caching is the correct decision because the current
    implementation does not provide sufficient information
    to cache objects bound into the name space where
    local homes are bound.
    
    Here is trace snippet of this problem.
    
    FP21 case
    --------------------------
    [12/04/10 13:33:50:224 JST] 0000005f  javaURLContex
    >  lookup Entry
    name=java:comp/env/ejb/inq/HostInqRecvLocalHome
    name=java:comp/env/ejb/inq/HostInqRecvLocalHome
    name=java:comp/env/ejb/inq/HostInqRecvLocalHome
    
    [12/04/10 13:33:50:224 JST] 0000005f CacheManager
    >  getJavaNameSpaceCache Entry
    cacheKey=10
    createIfNecessary=false
    
    [12/04/10 13:33:50:225 JST] 0000005f CacheManager
    3   getJavaNameSpace
    Cache: cache not created, returning null.
    
    [12/04/10 13:33:50:225 JST] 0000005f CacheManager
    <  getJavaNameSpaceCache Exit
    <null>
    
    <<< Here taking 30m sec >>>
    
    [12/04/10 13:33:50:254 JST] 0000005f javaURLContex
    <  lookup Exit
    --------------------------
    
    And this is FP13 case
    --------------------------
    [12/04/10 11:18:11:361 JST] 00000033 javaURLContex
    >  lookup Entry
    name=java:comp/env/ejb/inq/HostInqRecvLocalHome
    name=java:comp/env/ejb/inq/HostInqRecvLocalHome
    name=java:comp/env/ejb/inq/HostInqRecvLocalHome
    
    [12/04/10 11:18:11:362 JST] 00000033 CacheManager
    >  getJavaNameSpaceCache(cacheKey=10, ...
    
    [12/04/10 11:18:11:362 JST] 00000033 CacheManager
    3   getJavaNameSpace
    Cache: cache already exists and returning java
    name space cache 10
    
    [12/04/10 11:18:11:362 JST] 00000033 javaURLContex
    <  lookup Exit
    --------------------------
    
    
    UPDATE:
    
    In addition, this can cause high CPU while making the repetitive
    Naming lookup. This problem can also be identified in some
    cases by ClassNotFound. This ClassNotFound is expected and then
    cached by this fix to prevent further lookups. Additional
    trace/evidence:
    
    --------------------------
    [7/25/12 11:08:45:771 EDT] 000000b6 CompoundClass >  loadClass
         com.ibm.ws.naming.ejblocal.ejblocalURLContextFactory
         this=com.ibm.ws.classloader.CompoundClassLoader@ee40ee4
         [app:CIFundsEA] Entry
    
    [7/25/12 11:08:45:772 EDT] 000000b6 CompoundClass <  loadClass
         com.ibm.ws.naming.ejblocal.ejblocalURLContextFactory failed
    Exit
    --------------------------
    
    From the javacores:
    
    --------------------------
    "MessageListenerThreadPool : 16" J9VMThread:0x3FA79D00,
    
    j9thread_t:0x3D508454,java/lang/Thread:0x9A2FEE28,
    state:CW, prio=5
      at com/ibm/ejs/ras/Tr.fireEvent(Tr.java:1643(Compiled Code))
      ,,,
      at java/lang/Class.forName(Class.java:172(Compiled Code))
      at javax/naming/spi/NamingManager$3.run
         (NamingManager.java:844(CompiledCode))
      ,,,
      at javax/naming/spi/NamingManager.factoryForName
         (NamingManager.java:811(CompiledCode))
      at javax/naming/spi/NamingManager.getURLContext
         (NamingManager.java:682(Compiled Code))
      at com/ibm/ws/naming/jndicos/CNContextImpl.checkForUrlContext
         (CNContextImpl.java:467(Compiled Code))
      ,,,
      at com/ibm/ws/naming/java/javaURLContextRoot.lookup
         (javaURLContextRoot.java:160(Compiled Code))
      at javax/naming/InitialContext.lookup
         (InitialContext.java:436(Compiled Code))
    
    --------------------------
    --------------------------
    
    "MessageListenerThreadPool : 40" J9VMThread:0x426A7D00,
    j9thread_t:0x422BD8B4, java/lang/Thread:0x9A2DF9A0, state:B,
    prio=5(native thread ID:0x26C00F5, native priority:0x5,
    native
    
      at javax/naming/spi/NamingManager.getURLContext
         (NamingManager.java:656(Compiled Code))
      at javax/naming/InitialContext.getURLOrDefaultInitCtx
         (InitialContext.java:422(Compiled Code))
      at javax/naming/InitialContext.lookup
         (InitialContext.java:436(Compiled Code))
    
    --------------------------
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All users of IBM WebSphere Application      *
    *                  Server V7.                                  *
    ****************************************************************
    * PROBLEM DESCRIPTION: JNDI lookups on local EJB homes are     *
    *                      not cached.                             *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    JNDI lookups on local EJB homes are not cached. This applies
    only to lookups on names that start with java:comp/env. Not
    caching local homes can cause applications to run more slowly
    than necessary.
    

Problem conclusion

Temporary fix

Comments

APAR Information

  • APAR number

    PM62794

  • Reported component name

    WEBS APP SERV N

  • Reported component ID

    5724H8800

  • Reported release

    700

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-04-19

  • Closed date

    2012-05-07

  • Last modified date

    2012-10-08

  • 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

    WEBS APP SERV N

  • Fixed component ID

    5724H8800

Applicable component levels

  • R700 PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
28 October 2021