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 julien.dominici · Oct 18, 2016 at 07:36 AM · treprfarfa-apiOMM

RFA_VERIFY( rsslDecodeMsg( &dec_mapIter, &newRsslMsg ) >= RSSL_RET_SUCCESS ) failed

Hi dear support, While migrating a critical RFA 7.6.1_L1 C++ application in production from SSLED to RSSL adapter (connected to ADS 2.6.2_L1 linux), the RFA crashes at startup with the following error message :

--------

RFA Internal failure Application: RFA Process Id: 0x5788 File: Session_OMM/Impl/OMMSrcDirectoryMsgHandler.cpp Line: 1039 Problem: RFA_VERIFY( rsslDecodeMsg( &dec_mapIter, &newRsslMsg ) >= RSSL_RET_SUCCESS ) failed

---------

After some investigation, it appears that we are able to reproduce the issue only when connecting to an ADS with a consequent number of services (126 exactly). This is the stack trace of the process when it crashes :

----------

(gdb) bt

#0 0xf77a6430 in __kernel_vsyscall ()

#1 0xf1a2c861 in raise () from /lib/libc.so.6

#2 0xf1a2e0ca in abort () from /lib/libc.so.6

#3 0x08a4923e in __RFA_ProblemReport ()

#4 0x08a29b6d in rfa::sessionLayer::OMMSrcDirectoryMsgHandler::convertServiceDirectoryMapKeyFromSrcIdToServiceName(rfa::sessionLayer::OMMItemEventImplMsg&, RwfBuffer&) ()

#5 0x08a29cc9 in rfa::sessionLayer::OMMSrcDirectoryMsgHandler::notifyClientServiceDirectoryMsg(rfa::sessionLayer::OMMItemEventImplMsg const*) ()

#6 0x08a2cda2 in rfa::sessionLayer::OMMSrcDirectoryMsgHandler::processRefreshUpdateMsg(rfa::sessionLayer::OMMItemEventImplMsg const*) ()

#7 0x08a2ce41 in rfa::sessionLayer::OMMSrcDirectoryMsgHandler::processResponseMsg(rfa::sessionLayer::OMMItemEventImplMsg*, rfa::common::HandleInt*, rfa::sessionLayer::OMMWatchlistEntry*) ()

#8 0x08a03155 in rfa::sessionLayer::OMMMsgRouter::processResponseMsg(rfa::support::SmartPtr<rfa::common::Message> const&) ()

#9 0x089f8f7a in rfa::sessionLayer::OMMConsumerImpl::processResponseMsg(rfa::support::SmartPtr<rfa::common::Message>&) ()

#10 0x089d60d6 in rfa::sessionLayer::SessionImpl::dispatchResponseProcedure() ()

#11 0x089d4275 in rfa::sessionLayer::SessionImpl_ResponseProcessingTimer::processTimerEvent() ()

#12 0x08a6a94c in RTREventNotifierImp::expireEvents() ()

#13 0x08a69925 in RTRSelectNotifier::enable() ()

#14 0x089d69e2 in rfa::sessionLayer::SessionImpl::runThread() ()

#15 0x08a496fa in rfa::support::Thread::startWrapper(void*) ()

#16 0xf2e14bc9 in start_thread () from /lib/libpthread.so.0

#17 0xf1ae4dee in clone () from /lib/libc.so.6

--------------------

I attached a RFA log + trace files, where I believe it seems to show that the failure happens while the RFA requests to download the DataDictionary from the ADS. Also, I dumped the RIPC session from the ADS, showing that after sending the "large" services map to this client, no more event comes from the client RFA (this is the latest message received or sent by the ADS to this client) :

---------

[Mon Oct 17 17:20:15.034340 2016] RSSL Message Of Length 28 Received on Socket 19

<!-- rwfMajorVer="14" rwfMinorVer="1" -->

<requestMsg domainType="RSSL_DMT_DICTIONARY" streamId="3" containerType="RSSL_DT_NO_DATA" flags="0x40 (RSSL_RQMF_HAS_QOS)" qosDynamic="0" qosRate="1" qosTimeliness="1" dataS ize="0"> <key flags="0xB (RSSL_MKF_HAS_SERVICE_ID|RSSL_MKF_HAS_NAME|RSSL_MKF_HAS_FILTER)" serviceId="9365" name="RWFFld" filter="7"/>

<dataBody> </dataBody>

</requestMsg>

------------

Could you try to explain what happens here exactly, and if there is a possibility to avoid this ? Thanks in advance for your help.

Kind regards, Julien

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.

1 Reply

  • Sort: 
avatar image
REFINITIV
Best Answer
Answer by Jirapongse · Oct 19, 2016 at 05:24 AM

This could be a known issue fixed in RFA C++ 7.6.1.E4 onward.

-----------------------------
rfa7.6.1.E4.win-static
-----------------------------
rfasl12624; RFACPP-690 CaseId: 03791830, 03814700 RFA Consumer throws an Exception when two or more OMMConsumersshare a Connection, and RFA tries to fan outthe Source Directory to the application.

Please upgrade the application to use RFA C++ 7.6.2.L1 or higher to avoid this issue.

You can download it from https://developers.thomsonreuters.com/thomson-reuters-enterprise-platform/robust-foundation-api-rfa/downloads

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.

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 >
8 People are following this question.

Related Questions

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

can I request for specific feild_entry in OMM

OMM Provider Application Crashes Periodically When Sending Status Message

Omm mock Tests

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
  • 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
  • 中文论坛
  • Explore
  • Tags
  • Questions
  • Badges