Deadlock occurred between two threads when using Netscape LDAP classes

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Deadlock occurred between two threads when using Netscape LDAP classes

Zvieli, Asaf
Hi,

I am running my application on JBoss and using ldapjdk.jar to authenticate with LDAP server.
After a while I am getting a deadlock and my application is crush due to out of memory exception.
In the thread dump I took I see the following error which repeat 660 times:
Found one Java-level deadlock:
=============================
"LDAPConnThread honts0006:3268":
  waiting to lock monitor 0x680da90c (object 0x27f82bf8, a netscape.ldap.LDAPConnection),
  which is held by "http-0.0.0.0-8080-64"
"http-0.0.0.0-8080-64":
  waiting to lock monitor 0x680da4cc (object 0x27f80368, a netscape.ldap.LDAPConnThread),
  which is held by "LDAPConnThread honts0006:3268"

Java stack information for the threads listed above:
===================================================
"LDAPConnThread honts0006:3268":
          at netscape.ldap.LDAPConnection.deregisterConnection(Unknown Source)
          - waiting to lock <0x27f82bf8> (a netscape.ldap.LDAPConnection)
          at netscape.ldap.LDAPConnThread.cleanUp(Unknown Source)
          at netscape.ldap.LDAPConnThread.networkError(Unknown Source)
          - locked <0x27f80368> (a netscape.ldap.LDAPConnThread)
          at netscape.ldap.LDAPConnThread.run(Unknown Source)
"http-0.0.0.0-8080-64":
          at netscape.ldap.LDAPConnThread.getClientCount(Unknown Source)
          - waiting to lock <0x27f80368> (a netscape.ldap.LDAPConnThread)
          at netscape.ldap.LDAPConnection.disconnect(Unknown Source)
          - locked <0x27f82bf8> (a netscape.ldap.LDAPConnection)
          at com.mercury.td.ldap.CLdapCommandFactory$CLdapMacroCommand.execute(CLdapCommandFactory.java:1036)
          - locked <0x27f83a20> (a com.mercury.td.ldap.CLdapCommandFactory$CLdapMacroCommand)
          at com.mercury.td.saserver.api.logics.CTdUserLogic.importUserFromLdap(CTdUserLogic.java:1786)
          at com.mercury.td.saserver.api.logics.CTdUserLogic.importUserFromLdap(CTdUserLogic.java:1476)

I did look for this case in the net and found that ORACLE did report on such a bug in their WebLogic resolve problems but without specific details(see: http://download.oracle.com/docs/cd/E13222_01/wls/docs61/notes/bugfixes2.html , security section, CR125520).


1.    Is this a known issue?

2.    If it is a known issue, Where can I see the documentation about it?

3.       If it is a known issue and you already fixed it, in which ldapjdk.jar version should I use to have the fix in it?

Asaf Zvieli
HP Software, Quality Center RnD.
972.3.5397017 office | 972.3.5331617 fax | [hidden email]<mailto:[hidden email]>
19 Shabazi Street | 56100 | Yahud | Israel

_______________________________________________
dev-tech-ldap mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-tech-ldap
Reply | Threaded
Open this post in threaded view
|

Re: Deadlock occurred between two threads when using Netscape LDAP classes

Rich Megginson
On Mon, Mar 14, 2011 at 9:30 AM, Zvieli, Asaf <[hidden email]> wrote:

> Hi,
>
> I am running my application on JBoss and using ldapjdk.jar to authenticate with LDAP server.
> After a while I am getting a deadlock and my application is crush due to out of memory exception.
> In the thread dump I took I see the following error which repeat 660 times:
> Found one Java-level deadlock:
> =============================
> "LDAPConnThread honts0006:3268":
>  waiting to lock monitor 0x680da90c (object 0x27f82bf8, a netscape.ldap.LDAPConnection),
>  which is held by "http-0.0.0.0-8080-64"
> "http-0.0.0.0-8080-64":
>  waiting to lock monitor 0x680da4cc (object 0x27f80368, a netscape.ldap.LDAPConnThread),
>  which is held by "LDAPConnThread honts0006:3268"
>
> Java stack information for the threads listed above:
> ===================================================
> "LDAPConnThread honts0006:3268":
>          at netscape.ldap.LDAPConnection.deregisterConnection(Unknown Source)
>          - waiting to lock <0x27f82bf8> (a netscape.ldap.LDAPConnection)
>          at netscape.ldap.LDAPConnThread.cleanUp(Unknown Source)
>          at netscape.ldap.LDAPConnThread.networkError(Unknown Source)
>          - locked <0x27f80368> (a netscape.ldap.LDAPConnThread)
>          at netscape.ldap.LDAPConnThread.run(Unknown Source)
> "http-0.0.0.0-8080-64":
>          at netscape.ldap.LDAPConnThread.getClientCount(Unknown Source)
>          - waiting to lock <0x27f80368> (a netscape.ldap.LDAPConnThread)
>          at netscape.ldap.LDAPConnection.disconnect(Unknown Source)
>          - locked <0x27f82bf8> (a netscape.ldap.LDAPConnection)
>          at com.mercury.td.ldap.CLdapCommandFactory$CLdapMacroCommand.execute(CLdapCommandFactory.java:1036)
>          - locked <0x27f83a20> (a com.mercury.td.ldap.CLdapCommandFactory$CLdapMacroCommand)
>          at com.mercury.td.saserver.api.logics.CTdUserLogic.importUserFromLdap(CTdUserLogic.java:1786)
>          at com.mercury.td.saserver.api.logics.CTdUserLogic.importUserFromLdap(CTdUserLogic.java:1476)
>
> I did look for this case in the net and found that ORACLE did report on such a bug in their WebLogic resolve problems but without specific details(see: http://download.oracle.com/docs/cd/E13222_01/wls/docs61/notes/bugfixes2.html , security section, CR125520).
>
>
> 1.    Is this a known issue?
>
> 2.    If it is a known issue, Where can I see the documentation about it?
>
> 3.       If it is a known issue and you already fixed it, in which ldapjdk.jar version should I use to have the fix in it?

I don't see this issue here -
https://bugzilla.mozilla.org/buglist.cgi?product=Directory&component=LDAP%20Java%20SDK&resolution=---

Please file a bug.

>
> Asaf Zvieli
> HP Software, Quality Center RnD.
> 972.3.5397017 office | 972.3.5331617 fax | [hidden email]<mailto:[hidden email]>
> 19 Shabazi Street | 56100 | Yahud | Israel
>
> _______________________________________________
> dev-tech-ldap mailing list
> [hidden email]
> https://lists.mozilla.org/listinfo/dev-tech-ldap
>
_______________________________________________
dev-tech-ldap mailing list
[hidden email]
https://lists.mozilla.org/listinfo/dev-tech-ldap