Ron Sigal [https://community.jboss.org/people/ron_sigal] created the discussion

"Re: detected failure on control connection"

To view the discussion, visit: https://community.jboss.org/message/791782#791782

--------------------------------------------------------------
Hi Ajay,

The bisocket control connection is used by the server to send requests to the 
client to create a connection to the bisocket secondary ServerSocket on the 
server.  It sounds convoluted, but the goal was to create a connection from the 
server to the client without having to run a ServerSocket on the client.  
Depending on the configuration, the server will send PINGs to the client, and 
the client will emit a "detected failure on control connection" message, and 
try to recreate the control connection, if a PING is late.  One thing you could 
try is to expand the window in which a PING is expected.  If the window is too 
small and 1) the network is congested or 2) the server is busy, you could get 
spurious failures.  The two relevant configuration parameters are:

 * pingFrequency: determines how often a ping is sent
 * pingWindowFactor: the value is multipled times the pingFrequency to 
determine the window during which the PING is expected

These parameters are configured in 
$JBOSS_HOME/server/$CONFIG/deploy/jboss-messaging.sar/remoting-bisocket-service.xml.
  Well, that's true for AS 4.2.3.GA.  I don't have a copy of 4.2.1.GA at hand.  
In any case, look for remoting-bisocket-service.xml.

Note that in some versions of messaging, PINGing is, in effect, turned off:

  <attribute name="pingFrequency" isParam="true">214748364</attribute>
  <attribute name="pingWindowFactor" isParam="true">10</attribute>

In others, PINGS are sent frequently, but pingWindowFactor is set to 
"infinity".  That strategy is used to keep connections open through a firewall.

You can read more about configuration of the bisocket transport in the Remoting 
Guide:  
http://docs.jboss.org/jbossremoting/2.2.3.SP3/html/chapter-configuration.html#d0e3235
 
http://docs.jboss.org/jbossremoting/2.2.3.SP3/html/chapter-configuration.html#d0e3235.

As for upgrading to Remoting 2.2.4, I would always recomment upgrading if you 
can.  Here are the release notes for 2.2.4:

Release Notes - JBoss Remoting - Version 2.2.4

Bug

* [JBREM-1242] - Fix deadlock between Client and MicroRemoteClientInvoker
* [JBREM-1261] - Prevent DOS attack on 
BisocketServerInvoker$SecondaryServerSocketThread
* [JBREM-1268] - RemoteClientInvoker can change configuration map and prevent 
InvokerRegistry from reusing client invokers
* [JBREM-1269] - Fix deadlock between Client and MicroRemoteClientInvoker, part 
2
* [JBREM-1276] - SecondaryServerSocketThread should catch java.lang.Error

Enhancement

* [JBREM-1245] - Consider javax.net.ssl.SSLException("Connection has been 
shutdown") to be retriable
* [JBREM-1248] - Avoid connecting to a server in catch clause in case of 
HttpClientInvoker connection failure
* [JBREM-1262] - Consider java.io.IOException("Software caused connection 
abort: socket write error") retriable
* [JBREM-1263] - ClientSocketWrapper.checkConnection() should check returned 
value
* [JBREM-1267] - Allow HTTPClientInvoker to call disconnect on 
HttpURLConnection after use
* [JBREM-1275] - Make maxthreads, timeout configurable in 
BisocketServerInvoker.SecondaryServerSocketThread
* [JBREM-1277] - Allow configuration of socket and bisocket accept thread 
priority

Feature Request

* [JBREM-1144] - Extend connection identity to server side

There was enough there to bump the version to 2.2.4.

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

Reply to this message by going to Community
[https://community.jboss.org/message/791782#791782]

Start a new discussion in JBoss Remoting at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2050]

_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to