IBM Support

IV52561: JNDI TIMEOUT FAILS BEFORE TIMEOUT IS REACHED

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: The LDAP request failed intermittently saying the
    response read timed out which occurred much before the actual
    timeout specified.
    .
    Stack Trace: javax.naming.NamingException: LDAP response read
    timed out, timeout
    used:300000ms.; Remaining name:
    'ou=internal,dc=XXXXX,dc=XXXXX,dc=com'
     at com.sun.jndi.ldap.Connection.readReply(Connection.java:480)
     at
    com.sun.jndi.ldap.LdapClient.getSearchReply(LdapClient.java:632)
     at com.sun.jndi.ldap.LdapClient.search(LdapClient.java:555)
     at com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:1977)
     at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1839)
     at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1764)
     at
    com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentD
    irContext.java:380)
     at
    com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(Parti
    alCompositeDirContext.java:350)
     at
    com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(Parti
    alCompositeDirContext.java:333)
     at
    javax.naming.directory.InitialDirContext.search(InitialDirContex
    t.java:250)
    .
    User observing the problem with LDAP connections timing out
    before the specified timeout has been reached.
    

Local fix

  • Catch the exception and retry. The connection is timed-out when
    LDAP server reset the connection.
    

Problem summary

  • The problem occurred when the LDAP client received a connection
    reset from the LDAP server when the client is waiting for a
    response from the LDAP server. The connection reset closed the
    connection and exit the TCP binding thread. It notified the
    application thread which was waiting for a response for its LDAP
    request. As the application thread came out of wait, it assumed
    the reply is ready or the time out happened. As the reply was
    not available, it thrown the SockeTimeoutException. However,
    this is not correct as the socket timeout did not happen in this
    case and the application thread was awake due to a connection
    reset. Hence, instead of throwing
    SockeTimeoutException, a ServiceUnavailableException should be
    thrown.
    

Problem conclusion

  • This APAR will be fixed in the following Java Releases:
       6    SR15 FP1  (6.0.15.1)
       6 R1 SR7 FP1   (6.1.7.1)
       7    SR6 FP1   (7.0.6.1)
       7 R1 SR1       (7.1.1.0)
    .
    The JDK has been updated to throw the
    ServiceUnavailableException instead of SockeTimeoutException
    when LDAP Client receives a connection reset from the LDAP
    Server.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV52561

  • 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

    2013-11-26

  • Closed date

    2014-01-07

  • Last modified date

    2014-05-09

  • 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

[{"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:
09 May 2014