question

Upvotes
Accepted
3 0 1 4

sudden close - channel down

I am facing a problem with the java application ( I used one of the examples listed in the files), the error message is shown in the attached file .

The application shuts down as it appears to be killed , this happens in random time order and not after specific duration or action.

chanel-down.png

elektronrefinitiv-realtimeelektron-sdksearchchannel
chanel-down.png (74.9 KiB)
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.

Hello @H.H.
To be able to continue investing the problem, please

  1. attach EMA xml trace
  2. what is the EMA example application?

Hello @H.H.

Please set XmlTraceToStdout Consumer entry parameter to 1 in EmaConfig.xml located in the application’s run directory. For example:
<Consumer>
<Name value="Consumer_1"/>
...
<XmlTraceToStdout value="1"/>
</Consumer>
Then, EMA traces its received and sent messages in XML format to stdout/console. The xml trace log can be long so please redirect your application command output to a file as the syntax below:
Java_command_line_running_application > output_file_name

Hello @H.H.

Does the problem still occur? If so, please send me the following required info:

  1. EMA xml trace when the problem occurs.
  2. EMA example application name that the problem occurs.
Show more comments
Upvotes
Accepted
9.5k 10 5 7

Hello @H.H.

Thanks for helpful info. According to the log file, I found that there was no error about LOGIN, SOURCE, DICTIONARY and MARKET_PRICE stream. All streams could open successfully and the application got data. However, in the end of log it showed:

<CLOSE domainType="LOGIN" streamId="1" containerType="NO_DATA" flags="0x00" dataSize="0">

<CLOSE domainType="SOURCE" streamId="2" containerType="NO_DATA" flags="0x00" dataSize="0">

The log messages can be generated when method uninitialize() method of OmmConsumer class is called. The method closes login and source stream while uninitializing OmmConsumer.

Does your application call uninitialize() method of OmmConsumer? In the example example100__MarketPrice__Streaming consumer.uninitialize() is called before the application exists. It is possible that you see the close message because the application calls the method.

In addition, I did not see "channel down" message in the given log. It seemed that your application and EMA worked properly.

Moreover, I strongly suggest you upgrade to the latest EMA Java shipped with

Elektron SDK - Java - 1.1.0.

The latest EMA containing all latest fixes and it provides the log of connection process. For example:

<!-- Outgoing Reactor message -->
<!-- java.nio.channels.SocketChannel[connected local=/10.42.61.169:52601 remote=/192.168.27.48:14002] -->
<!-- Mon Jul 03 15:16:30 ICT 2017 -->
<!-- rwfMajorVer="14" rwfMinorVer="1" -->
<CLOSE domainType="LOGIN" streamId="1" containerType="NO_DATA" flags="0x00" dataSize="0">
<dataBody>
</dataBody>
</CLOSE>

If there is any connection problem, we should be able to investigate it from the log.

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.

Upvotes
3 0 1 4

We implemented the changes recommended , Its been running now without any issues.

The log messages can be generated when method uninitialize()
method of OmmConsumer class is called. The method closes login and source 
stream while uninitializing OmmConsumer. 
Does your application call uninitialize() method of OmmConsumer? In
the example example100__MarketPrice__Streaming consumer.uninitialize() is
called before the application exists. It is possible that you see the close message because the application calls the method.

Thanks for the support

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