[jcifs] Hung threads accessing domain controller

Christensen, Scott M SCHRIST1 at amfam.com
Wed Jan 12 21:24:52 GMT 2005


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.  I'm wondering if anyone has experienced this thread
hanging problem and if there is a solution.   We have attempted to look
through the code as to where we think the problem is occurring based on
the stack traces (see below) without any success.

 

Jcifs version: 1.1.6

Websphere version 5.0

 

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)

       at jcifs.smb.SmbSession.sessionSetup(SmbSession.java:286)

       at jcifs.smb.SmbSession.send(SmbSession.java:243)

       at jcifs.smb.SmbTree.treeConnect(SmbTree.java:134)

       at jcifs.smb.SmbSession.logon(SmbSession.java:174)

       at jcifs.smb.SmbSession.logon(SmbSession.java:167)

       at
internalsso.authenticator.JcifsAuthenticator.processLogin(JcifsAuthentic
ator.java:202)

       at
org.securityfilter.filter.SecurityFilter.doFilter(SecurityFilter.java:13
1)

       at internalsso. SecurityFilter.doFilter(SecurityFilter.java:115)

       at
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInst
anceWrapper.java:132)

       at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterCh
ain.java:71)

       at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispa
tch(WebAppRequestDispatcher.java:1010)

       at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRe
questDispatcher.java:592)

       at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppReq
uestDispatcher.java:204)

       at
com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:1
25)

       at
com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInv
oker.java:286)

       at
com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocati
on(CachedInvocation.java:71)

       at
com.ibm.ws.webcontainer.cache.invocation.CacheableInvocationContext.invo
ke(CacheableInvocationContext.java:116)

       at
com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(Servle
tRequestProcessor.java:186)

       at
com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSELis
tener.java:334)

       at
com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection
.java:56)

       at
com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:
615)

       at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:449)

       at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:912)

 

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)

       at jcifs.smb.SmbSession.getChallenge(SmbSession.java:151)

       at jcifs.smb.SmbSession.getChallenge(SmbSession.java:145)

       at
internalsso.authenticator.JcifsAuthenticator.processLogin(JcifsAuthentic
ator.java:147)

       at
org.securityfilter.filter.SecurityFilter.doFilter(SecurityFilter.java:13
1)

       at internalsso.SecurityFilter.doFilter(SecurityFilter.java:115)

       at
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInst
anceWrapper.java:132)

       at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterCh
ain.java:71)

       at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispa
tch(WebAppRequestDispatcher.java:1010)

       - locked <625dac80> (a
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher)

       at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRe
questDispatcher.java:592)

       - locked <625dac80> (a
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher)

       at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppReq
uestDispatcher.java:204)

       - locked <625dac80> (a
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher)

       at
com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:1
25)

       at
com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInv
oker.java:286)

       at
com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocati
on(CachedInvocation.java:71)

       at
com.ibm.ws.webcontainer.cache.invocation.CacheableInvocationContext.invo
ke(CacheableInvocationContext.java:116)

       at
com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(Servle
tRequestProcessor.java:186)

       at
com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSELis
tener.java:334)

       at
com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection
.java:56)

       at
com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:
615)

       at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:449)

       at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:912)

 

Does anyone have any idea as to what the cause of this might be?  Thanks
for any and all help you can give.

 

Thanks,

Scott

 

-------------- next part --------------
HTML attachment scrubbed and removed


More information about the jcifs mailing list