[jcifs] Hung threads accessing domain controller

Michael B Allen mba2000 at ioplex.com
Wed Jan 12 22:34:41 GMT 2005


Christensen, Scott M said:
> Hi,
>
>
>
> We are having an issue with jcifs causing threads to hang in a web
> servlet environment.  We are using jcifs as a servlet filter for NTLM
> authentication.

Ok, but I can see you're *not* using the provided NtlmHttpFilter.


> We are seeing the following exceptions being thrown which appear to
> correspond to the thread never being released.
>
>
>
> jcifs.smb.SmbException: Timeout waiting for response from server:
> xx.domain.com/xxx.xxx.xxx.xxx
>
>        at jcifs.smb.SmbTransport.send(SmbTransport.java:677)

I don't think you would get this exception if the thread was never
unblocking. This exception means that the domain controller is not
responding.


> When we take a thread dump on the JVM, all of the threads are hung in
> the same place.  The stack trace associated with the thread dump for
> each hung thread is the following:
>
>
>
> "Servlet.Engine.Transports : 11785" daemon prio=10 tid=025d2cd8
> nid=19090 lwp_id=3817004 in Object.wait() [0x56b08000..0x56b074f0]
>
>        at java.lang.Object.wait(Native Method)
>
>        at java.lang.Object.wait(Object.java:429)
>
>        at jcifs.smb.SmbTransport.negotiate(SmbTransport.java:877)
>
>        - locked <68098a10> (a jcifs.smb.SmbTransport)

This looks normal to me. Basically the domain controller accepted the
connection but never responds to the negotiate request. This should
timeout after jcifs.smb.client.requestTimeout.

What evidence do you have to suggest that these threads are never released?

Mike


More information about the jcifs mailing list