users@grizzly.java.net

Re: Comet context doesn't expire

From: Jussi Kuosa <jussi.kuosa_at_f-secure.com>
Date: Thu, 25 Jun 2009 00:34:34 -0700 (PDT)

Hello Jean-Fracois,
we're experiencing the same issues as Czarek after we moved to v2.1-b60e
cluster running on windows 2003 R2 standard edition servers (due to the
comet selector spin problem...).

I created a simple web app with a test servlet that uses comet for sending
down the response in two parts (onInitialize and onTerminate/onInterrupt)
based on the CometServlet example in GF source package. Loading that with
httperf gave no problems :-/

However, on our production system our native clients (C++ and Python) are
occasionally experiencing very long lockups (thousands of seconds, if
timeout is disabled), as bayeux CONNECTs are not properly terminated when
there is nothing to send. We also frequently call onEvent from a JMS
onMessage handler that in turn is our cluster event distribution mechanism.

The CONNECT request is sent to the server in two TCP segments and both are
acknowledged, so from TCP/IP point of view everything should be ok. Adding
logging to the onTerminate and onInterrupt handlers reveled that they are
not called at all when the clients lock up (or start receiving timeouts -
currently 3*advice).

> Thanks I will take a look. Yes I recall we have added better support for
> onTerminate.

I will happily test if you have a patch available and provide more details
if needed.

Best regards,

    Jussi Kuosa

-- 
View this message in context: http://www.nabble.com/Comet-context-doesn%27t-expire-tp24072882p24198460.html
Sent from the Grizzly - Users mailing list archive at Nabble.com.