Discover Refinitiv
MyRefinitiv Refinitiv Perspectives Careers
Created with Sketch.
All APIs Questions & Answers  Register |  Login
Ask a question
  • Questions
  • Tags
  • Badges
  • Unanswered
Search:
  • Home /
  • TREP APIs /
  • RFA /
avatar image
Question by christian.springer · Nov 08, 2016 at 03:36 AM · treprfarfa-apiOMMconsumer

Why does OMM provider logs "RSSL Channel read failed on connection" when OMM consumer shuts down?

When shutting down our OMM consumer with our OMM provider, the OMM provider logs an error "

RSSL Channel read failed on connection" even if - I hope - the consume cleans up properly.

Any idea what the consumer may miss on clean up?

People who like this

0 Show 0
Comment
10 |1500 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

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

2 Replies

  • Sort: 
avatar image
REFINITIV
Best Answer
Answer by Jirapongse · Nov 08, 2016 at 11:09 PM

@Christian Springer

I can replicate the issue. I got the following log when the consumer application is shutdown properly.

    <- Received LoggerNotifyEvent:
    [Wed Nov 09 10:26:56 2016]: (ComponentName) Static: (Severity) Error: RSSL Channel read failed on connection "Connection_OMMProv".  Channel will be closed. (Internal debug info: "<..\..\..\Ripc\Impl\ripcsrvr.c:6654> Error:1002 ripcRead() failure. Connection reset by peer
", errno: RSSL_RET_FAILURE [0] - )

According to the information from MSDN regarding select() function:

For connection-oriented sockets, readability can also indicate that a request to close the socket has been received from the peer. If the virtual circuit was closed gracefully, and all data was received, then a recv will return immediately with zero bytes read. If the virtual circuit was reset, then a recv will complete immediately with an error code such as WSAECONNRESET. The presence of OOB data will be checked if the socket option SO_OOBINLINE has been enabled (see setsockopt).

It indicates the application needs to call read/recv function in order to detect the disconnection. Then, it needs to verify the return value or the error code.

In RFA C++, if the connection is shutdown properly, it will show the above error with RSSL_RET_FAILURE [0].

On the other hand, if the connection has been reset, it will show the following log with the system error, such as 10054.

    [Wed Nov 09 11:04:02 2016]: (ComponentName) Static: (Severity) Error: RSSL Channel read failed on connection "Connection_OMMProv".  Channel will be closed. (Internal debug info: "<..\..\..\Ripc\Impl\ripcsrvr.c:6662> Error:1002 ripcRead() failure. System errno: (10054)
", errno: RSSL_RET_FAILURE [10054] - )

It looks like to be an expected behaviour.

Comment

People who like this

0 Show 0 · Share
10 |1500 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

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

avatar image
Answer by Lars-at-Addicticks · Nov 08, 2016 at 04:03 AM

Perhaps the consumer doesn't actually logout ?

Comment

People who like this

0 Show 1 · Share
10 |1500 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

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

avatar image
christian.springer · Nov 08, 2016 at 04:34 AM 1
Share

I think the consumer properly logs out:

  • mConsumer->unregisterClient(mLoginHandle, NULL);

And it receives the Stream Closed Events for all subscriptions.

Watch this question

Add to watch list
Add to your watch list to receive emailed updates for this question. Too many emails? Change your settings >
9 People are following this question.

Related Questions

Update several RICS with one OmmConsumer.Submit()

Read Resource file "RDMFieldDictionary" have some problem

Can RFA Java application connects to services hosted on a different machine/port from a single Session?

OMM Provider Application Crashes Periodically When Sending Status Message

How to parse OMMMsg in a simple way

  • Copyright
  • Cookie Policy
  • Privacy Statement
  • Terms of Use
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Alpha
  • App Studio
  • Block Chain
  • Bot Platform
  • Connected Risk APIs
  • DSS
  • Data Fusion
  • Data Model Discovery
  • Datastream
  • Eikon COM
  • Eikon Data APIs
  • Electronic Trading
    • Generic FIX
    • Local Bank Node API
    • Trading API
  • Elektron
    • EMA
    • ETA
    • WebSocket API
  • FX Venues
    • FX Trading – RFQ Maker
  • Intelligent Tagging
  • Legal One
  • Messenger Bot
  • Messenger Side by Side
  • ONESOURCE
    • Indirect Tax
  • Open Calais
  • Open PermID
    • Entity Search
  • Org ID
  • PAM
    • PAM - Logging
  • ProView
  • ProView Internal
  • Product Insight
  • Project Tracking
  • RDMS
  • Refinitiv Data Platform
    • Refinitiv Data Platform Libraries
  • Rose's Space
  • Screening
    • Qual-ID API
    • Screening Deployed
    • Screening Online
    • World-Check One
    • World-Check One Zero Footprint
  • Side by Side Integration API
  • TR Knowledge Graph
  • TREP APIs
    • CAT
    • DACS Station
    • Open DACS
    • RFA
    • UPA
  • TREP Infrastructure
  • TRKD
  • TRTH
  • Thomson One Smart
  • Transactions
    • REDI API
  • Velocity Analytics
  • Wealth Management Web Services
  • Workspace SDK
    • Element Framework
    • Grid
  • World-Check Data File
  • Yield Book Analytics
  • 中文论坛
  • Explore
  • Tags
  • Questions
  • Badges