question

Upvotes
Accepted
3 0 1 2

RFA Java. Logged in but then only "Connection ping timeout"s

Hi all,

I am establishing a connection to our ADS instance, but after I receive the successful login response, the logs only show connection ping timeouts.

If we look in our ADS, we notice that our application is connected, but the ADS does not receive any ping messages, so it will kill the connection after a while.

Our application in turn will then reconnect again, but the connection does not last again, so we are somewhat stuck in a loop.

I would expect the SDK to take care of the ping messages by itself, specially since there is nothing about them in the tutorials.

Does anyone know what we are doing wrong?

treprfarfa-apitime-out
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

1 Answer

Upvotes
Accepted
11.5k 16 7 10

Hi @astaphorsius

Basically, the Ping is used for detecting the state of the connection between the API and ADS server. When both sides are connecting, they will send pings to each other, and waiting for ping reply. If there is no problem between them, the sending side will expect the ping reply from the receiving side within the ping timeout value. If the ping reply does not come from receiving side within ping timeout value, it is interpreted as problem at the receiving side, and the connection is dropped.

The RFA API manages the Ping mechanism for the application. A ping-timeout problem could be caused by a network problem (between the API and ADS) or the application was run out of CPU time due to heavy load on the machine or the RFA thread exits abnormally or blocked.

To let us verify this issue in detail, please give us the following information

  1. The version of RFA Java that encounters this problem
  2. Does the application connect to ADS via VPN or firewall or other network components?
  3. The RFA trace file when the problem occurs. The RFA trace file contains incoming/outgoing messages between the API and ADS server. It will let me verify the connection issue in detail

You can configure the following RFA Java configurations to enable the log file

  • <namespace>/Connections/<Connection Name>/ipcTraceFlags = 7
  • <namespace>/ Connections/<Connection Name>/mountTrace = True
  • <namespace>/ Connections/<Connection Name>/logFileName=<path to log file>
  • <namespace>/ Connections/<Connection Name>/traceMsgDomains=ALL

Example:

<node name="rsslConnection">
   <map>
      <entry key="connectionType" value="RSSL"/>
      <entry key="serverList" value="ad"/>
      <entry key="portNumber" value="14002"/>
      <entry key="ipcTraceFlags" value="7"/>
      <entry key="mountTrace " value="True"/>
      <entry key="logFileName" value=".\logs\RSSL_%U.log"/>
      <entry key="traceMsgDomains" value="ALL"/>
   </map>
</node>

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Click below to post an Idea Post Idea