OK. Was able to reproduce this with one of the samples. Looks like the threadpool is not being set in both places where it's needed. Kind of a funny thing in the Jetty API's, but easily worked around/fixed. Fix committed.
That said, the default with Jetty 7.5 is max 254 threads and 8 min threads. Thus, your settings might not really be needed. Dan On Tuesday, January 03, 2012 4:32:30 PM Jesse Pangburn wrote: > Hi Dan, > I replaced that whole portion of the classpath with a reference to the > 2.5.1's cxf-manifest.jar which does specify Jetty 7.5. For instance: > jetty-server-7.5.3.v20111011.jar > > So this is the jetty jar I'm using. From your email it sounds like you > thought I was using CXF 2.5.1 with Jetty 7.4 from CXF 2.4.2, which isn't > the case. So I think you were asking me to replace the 7.4 jars with 7.5. > > Attaching the debugger with/without specifying the threading parameters > shows that there's some thread missing when you specify the threading > parameters. Without specifying I see six of these "Thread [qtp20935029-16] > (Running)", one of these "Thread [qtp20935029-15 Acceptor0 > [email protected]:9003 STARTING] (Running)", and one of these > "Thread [qtp20935029-14 Selector0] (Running)". When specifying the > threading parameters (which causes the problem), then there's 13 of the > common ones (I specified min=6 max=16) but no "Selector0" thread. > > Anything else I should try? I thought of trying to put the 7.4 jetty jars > back in but figured that would cause other problems. > > Thanks, > Jesse > > -----Original Message----- > From: Daniel Kulp [mailto:[email protected]] > Sent: Tuesday, January 03, 2012 2:21 PM > To: [email protected] > Cc: Jesse Pangburn > Subject: Re: CXF 2.5.1 problem with httpj:threadingParameters > > On Thursday, December 29, 2011 1:47:16 PM Jesse Pangburn wrote: > > Hi, > > I have the following portion of a Spring configuration file that I was > > using with CXF 2.4.2: <httpj:engine-factory > > > > > <httpj:engine port="9003" > > > > > <httpj:threadingParameters minThreads="6" > > > > maxThreads="16" /> > > > > </httpj:engine> > > > > </httpj:engine-factory> > > > > There is a corresponding jaxws:endpoint that listens to a url on port > > 9003. When I updated to CXF 2.5.1, the server was acting like it never > > received the message yet "netstat -an | grep 9003" shows the port open > > and "telnet localhost 9003" connects. I changed nothing else but the > > CXF version by replacing my classpath with the cxf-manifest.jar from > > 2.5.1. > > Can you also try replacing the Jetty jars? We did upgrade to Jetty 7.5.x > (from 7.4.x) which required some changes. We tried to make sure the code > would still work with 7.4.x, but we may have missed something. I'd like to > at least check to see if it works with the Jetty we test with for 2.5.1. > > A little testing showed that it's the httpj:threadingParameters at > > fault. > > If I remove it then the server gets connections on port 9003 just fine: > > <httpj:engine-factory > > > > > <httpj:engine port="9003" > > > </httpj:engine> > > > > </httpj:engine-factory> > > > > Anyone else run into this or have an idea? Being able to set the > > maxThreads over the default of 15 is a useful thing so hopefully this > > can be made to work. > > Actually, with Jetty 7.5, I think the default is a LOT higher. Might > not need it. -- Daniel Kulp [email protected] - http://dankulp.com/blog Talend Community Coder - http://coders.talend.com
