User development,

A new message was posted in the thread "Client hangs when get JMS connection 
factory":

http://community.jboss.org/message/519114#519114

Author  : Ron Sigal
Profile : http://community.jboss.org/people/[email protected]

Message:
--------------------------------------------------------------
Hi guys,

I'm going to talk a little about how ConnectionValidator works, which might 
help to clear up some confusion.  

Maybe the fact that "connection" can mean different things in different 
contexts is the source of some confusion.  A connection could be represented, 
for example, by a pair of sockets.  It is in that sense that a Remoting client 
invoker maintains a "connection pool".  It is, essentially, a set of sockets, 
each connected to a socket at the other end of the connection.  But, to an 
application like JBossMessaging (JBM), a connection is something at a higher 
level.  A JBM connection is associated with a Remoting client invoker, which 
manages a set of lower level connections.

Now, Remoting's ConnectionValidator checks for the usability of a higher level 
connection.  It has its own client invoker, with its own lower level connection 
pool.  When it can't get a response from the server, it assumes that the 
network between the client and the server is broken and it tells any registered 
listeners, such as JBM, that, in effect, the higher level connection is broken.

When a ConnectionValidator tells JBM that the higher level connection is 
broken, then JBM will tear down (and possibly try to recreate) the connection, 
which includes shutting down the associated Remoting client invoker and its 
connection pool.  So, "validatorPingTimeout" determines how long a 
ConnectionValidator will wait until it considers the higher level connection to 
be broken.  "timeout" determines how long read() operations on the client and 
the server will wait before timing out.

I hope that helps to clarify things.

Now, if you pull the ethernet connection, ConnectionValidator +*should*+ detect 
that network failure.  In fact, I believe it works, having tested it myself.  
Li Lin and Mingjun Jiang, is there no evidence in the client log that 
ConnectionValidator is informing JBM about the connection failure?

By the way, the "timeout" value is interpreted as milliseconds.  I noticed a 
"timeout" set to "10" earlier in the thread.

-Ron
--------------------------------------------------------------

To reply to this message visit the message page: 
http://community.jboss.org/message/519114#519114


_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to