users@grizzly.java.net

Re: HTTP BC 100% CPU

From: Jeanfrancois Arcand <Jeanfrancois.Arcand_at_Sun.COM>
Date: Thu, 11 Jun 2009 23:27:43 -0400

Salut,

Sherry Weng wrote:
> Just to make sure Jeanfrancois sees your reply, I don't believe he's on
> the OpenESB mailing list.
> You might want to subscribe to the mailing list, Jeanfrancois ;-)

LOL :-) ...hopefully Grizzly is not that popular there so I don't have
to follow issues there as well :-) OK let me try to fix that for next
week. I'm cc-ing the users_at_grizzly.dev.java.net as people also asked for
that fix. Now being asked in two list I've no choice :-)

Let me try to have a fix for next week in grizzly 1.0.30.

Thanks!

-- Jeanfrancois

>
>
> manamc wrote:
>> Jeanfrancois, thanks for the reply.
>>
>> "This is on Linux, right?"
>>
>> Yes, its on Linux.
>>
>> "Grizzly 1.9.x has a workaround that I can backport to Grizzly 1.0.20
>> (next official release)."
>>
>> That would be great.
>>
>>
>> Jeanfrancois Arcand wrote:
>>
>>> Salut,
>>>
>>> Sherry Weng wrote:
>>>
>>>> Adding Jeanfrancois, "/the /Grizzly guy" to the thread :-)
>>>> Actually, GlassFish HTTP listeners use the same HTTP connector
>>>> implementation (i.e. Grizzly), so I'm a little surprised that you
>>>> only had this problem with HTTP BC listeners. BTW, 8181 is the HTTPS
>>>> listener port for GlassFish :-)
>>>>
>>>> Jeanfrancois, any suggestions for workarounds using JDK 1.5?
>>>>
>>> This is on Linux, right? Grizzly 1.9.x has a workaround that I can
>>> backport to Grizzly 1.0.20 (next official release). It can easily be
>>> bootstrapped using domain.xml classpath's prefix. But without that
>>> there is no workaround and I doubt it will ever get fixed with 1.5
>>>
>>> A+
>>>
>>> -- jeanfrancois
>>>
>>>
>>>
>>>
>>>> Regards
>>>> --Sherry
>>>>
>>>> manamc wrote:
>>>>
>>>>> Thanks for the reply. I'm reproducing this problem by opening a
>>>>> socket to the port that the http
>>>>> bc is listening on, writing some data then terminating my test
>>>>> case. The
>>>>> top command shows it go up to 100%. I think its the RST in the
>>>>> connection
>>>>> that's needed.
>>>>> Using jtop we see the selector thread start using most of the cpu
>>>>> time.
>>>>> Here's the bug that seems to be related to this:
>>>>> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6525190
>>>>> http://www.nabble.com/Comet-handler-starts-terminating-TCP-connections-with-RST--td20337445.html
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Socket s = new Socket("myhost", 8181);
>>>>>
>>>>> s.getOutputStream().write("get /MyService/MyServicePort?wsdl\n http
>>>>> 1".getBytes());
>>>>> s.getOutputStream().flush();
>>>>> System.out.println("Reading");
>>>>> int ch = 0;
>>>>> InputStream in = s.getInputStream();
>>>>>
>>>>> // It will block here, so I click the terminate button in
>>>>> eclipse. while ((ch = in.read()) != -1) {
>>>>> System.out.print((char) ch); }
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> SherryWeng wrote:
>>>>>
>>>>>
>>>>>> Don't really have a suggestion, but what do you mean by "a
>>>>>> connection to the HTTP BC gets dropped"?
>>>>>> Hopefully I'll find something more intelligent to say when I
>>>>>> understand the problem better...
>>>>>>
>>>>>> Regards
>>>>>> --Sherry
>>>>>>
>>>>>> manamc wrote:
>>>>>>
>>>>>>> When a connection to the http bc gets dropped, glassfish shows 100%
>>>>>>> cpu
>>>>>>> usage.
>>>>>>>
>>>>>>> It looks like this a bug with the java NIO package, so I updated
>>>>>>> to java
>>>>>>> 1.6.14 and the problem went away. However, we’re not ready to
>>>>>>> move to
>>>>>>> 1.6,
>>>>>>> so I'm looking for a work around, or patch? Other info:
>>>>>>> - This doesn't happen with the http listeners in glassfish, only
>>>>>>> the http
>>>>>>> bc. - Using jdk 1.5
>>>>>>> - Glassfish 9.1_02 (build b04-fcs) and other
>>>>>>> - Linux (no problems on windows)
>>>>>>> - Also, tested the http bc from the November 08 install.
>>>>>>>
>>>>>>> Any help appreciated.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: users-unsubscribe_at_open-esb.dev.java.net
>>>>>> For additional commands, e-mail: users-help_at_open-esb.dev.java.net
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe_at_open-esb.dev.java.net
>>> For additional commands, e-mail: users-help_at_open-esb.dev.java.net
>>>
>>>
>>>
>>>
>>
>>