Hi Alex,
unfortunately I'm not able to reproduce the 100% CPU utilization, in the
GF server.log I see the output [1] for each client run. Is it correct?
Just one thing I can suggest to try, instead of
context.removeCometHandler(this), call context.resumeCometHandler(this)
Thanks.
WBR,
Alexey.
[1]
[#|2012-02-13T11:29:19.145+0100|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=24;_ThreadName=Thread-2;|SERVER:
Do POST |#]
[#|2012-02-13T11:29:19.146+0100|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=24;_ThreadName=Thread-2;|Got
Post request from ip 127.0.0.1|#]
[#|2012-02-13T11:29:19.146+0100|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=24;_ThreadName=Thread-2;|SERVER:
Session id = 6426caa9450f342ea80106ed7a38|#]
[#|2012-02-13T11:29:19.146+0100|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=24;_ThreadName=Thread-2;|SERVER:
Agent0|#]
[#|2012-02-13T11:29:19.147+0100|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=24;_ThreadName=Thread-2;|{client=[Ljava.lang.String;@54e94480}|#]
[#|2012-02-13T11:29:19.147+0100|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=24;_ThreadName=Thread-2;|SERVER:
null|#]
[#|2012-02-13T11:29:19.147+0100|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=24;_ThreadName=Thread-2;|client
not exit , register client|#]
[#|2012-02-13T11:29:19.148+0100|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=24;_ThreadName=Thread-2;|Connected
from ip 127.0.0.1|#]
[#|2012-02-13T11:29:41.665+0100|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=13;_ThreadName=Thread-2;|Closing
Agent connection as result|#]
On 02/12/2012 12:26 PM, Alex Kalnitski wrote:
>
> Hi Alexey;
>
> I have created two classes to reproduce this phenomenon of High CPU
> utilization .
>
> One class is Agent -- Client side and another class is Server side
> CometServlet .
>
> To reproduce this situation you will need to run AgentLoader twice ,
> such way it simulates the not properly disconnected client and
> actually creates the CPU high utilization .
>
> Please let me know if it was successful and where maybe I am wrong
>
> WBR
>
> Alex Kalnitski
>
> Lead R&D Server Side
>
> AT&T | Interwise
>
> *From:*Oleksiy Stashok [mailto:oleksiy.stashok_at_oracle.com]
> *Sent:* Wednesday, January 25, 2012 5:33 PM
> *To:* Alex Kalnitski
> *Cc:* users_at_grizzly.java.net
> *Subject:* Re: FW: Glassfish issue
>
> Can you pls. create a testcase for this issue, so we can reproduce it?
>
> Thanks.
>
> WBR,
> Alexey.
>
> On 01/25/2012 04:26 PM, Alex Kalnitski wrote:
>
> Thanks for the quick response
>
> Our use case:
>
> We are using comet to process mobile messages and in some corner cases
> we are getting after the issue occurs 100% CPU utilization .
>
> 1.Each mobile register to the Context with unique name
>
> 2.When mobile disconnects from server the connection released normally
> by utilizing the onTerminate() and removed from the engine .
>
> 3.When mobile device is shutdown and there is no normal device
> disconnection process, no event is received at the server side and
> methods onTerminateand onInterruptare not invoked so the mobile
> remains registered in the CometEngine.
>
> 4.When mobile try to reconnect we find out that the same context name
> already exist in the system so need to removed it manually by invoking
> CometEngine./getEngine/().unregister(contextPath);
>
> 5.Executing this action cause CPU jump to 100% and stay there until
> the java process is killed .
>
> Is this issue is known?
>
> Please advice, maybe I am using it in wrong way , I also saw that in
> new version some methods are deprecated, but I don't understand how to
> integrated it to the glassfish server .
>
> WBR
>
> Alex Kalnitski
>
> Lead R&D Server Side
>
> AT&T | Interwise
>
> *From:*Oleksiy Stashok [mailto:oleksiy.stashok_at_oracle.com]
> *Sent:* Wednesday, January 25, 2012 4:00 PM
> *To:* Alex Kalnitski
> *Cc:* users_at_grizzly.java.net <mailto:users_at_grizzly.java.net>
> *Subject:* Re: FW: Glassfish issue
>
> Hi Alex,
>
> you can send issue details to users_at_grizzly.java.net
> <mailto:users_at_grizzly.java.net> (CC'ed) and we'll try to help.
>
> Thanks.
>
> WBR,
> Alexey.
>
> On 01/25/2012 02:55 PM, Alex Kalnitski wrote:
>
> Hi ;
>
> We are using an Glassfish server open source edition v3.1.1 for our
> benchmarking with Comet technology and we have something that looks
> like a bug .
>
> Please advice what should I do next and where should I go further .
>
> BR
>
> Alex
>
> Lead R&D
>
> AT&T Interties .
>