logo       
Bookmark and Share

Hung threads accessing domain controller: msg#00048

network.samba.java

Subject: Hung threads accessing domain controller

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(JcifsAuthenticator.java:202)

       at org.securityfilter.filter.SecurityFilter.doFilter(SecurityFilter.java:131)

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

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

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

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

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

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

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

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

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

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

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

       at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.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(JcifsAuthenticator.java:147)

       at org.securityfilter.filter.SecurityFilter.doFilter(SecurityFilter.java:131)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

       at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.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

 

<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | Mail Home | sitemap | FAQ | advertise