question

Upvote
Accepted
20 1 2 2

Unexpected TREP connection closing

After a couple of hours connected with an ADS and receiving RIC prices properly, I'm getting next disconnection error:

[Thu Jul 11 16:08:50 2019]: (ComponentName) Static: (Severity) Error: RSSL Channel attempt to get rssl buffer failed on connection "Default::Connection_RSSL 159.220.108.197:14002" (Internal debug info "<..\..\..\Ripc\Impl\ripcsrvr.c:7519> Error: 1009 ripcIntWrtHeader() failed, out of output buffers. The output buffer may need to be flushed.
"). Disconnecting. Channel could have previously disconnected or number of output buffers is too small.

Is this an application or a connection error? How can I solve it?

Thank you in advance.

treprfarfa-apirssldisconnection
icon clock
10 |1500

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

Upvotes
Accepted
20 1 2 2

The problema was in my code...

Thanks for your Help!

icon clock
10 |1500

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

Hi @gcorretge

Thanks for the update.

If there is anything you are able to share in terms of the fix - which may help others - please do so.

Upvote
23.5k 84 10 22

Hi @gcorretge

The error indicates that the reserved buffers for the channel were depleted

Typically, there are a couple of reasons for this.

1. The application may be a slow consumer which is unable to handle the high update rate sent by ADS - particularly during peak activity periods. You need to make sure you minimise any activity which is done during the callback events - as there are called on the API thread. If you are doing considerable processing, then you could farm that off to additional worker threads. Alternatively, you could ask your Market Data team if they can setup a Trade safe conflated service if you don't need to receive every single Quote update and thereby reducing the number of updates your application needs to process.

2. Or there could be congestion on your network.

You could also try and increase the guaranteedOutputBuffers value (default is 400) in your config - which may allow you to ride out any short periods of high activity.

icon clock
10 |1500

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

Upvotes
9.5k 10 5 7

Hello @gcorretge

If an RFA application cannot keep up with the high updates sent from ADS, ADS cuts the connection of the slow consumer application. Basically, ADS would log the disconnection "User ... has been disconnected due to an overflow condition". For example:

User s1_1200ups at position 10.42.63.67 on host
U8007607-TPL-A using application  on
channel 258 has been disconnected due to an overflow condition.

Hence, you can check from ADS log file if the application is disconnected due to slow consumer or not.

icon clock
10 |1500

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